設定 Kubernetes API 優先順序和公平性

您的 IBM Cloud Kubernetes Service 叢集已預設配置,可處理發送至 API 伺服器的同時請求,並防止流量過載。 您可以針對對叢集的 API 伺服器所提出的要求,配置您自己的流程綱目及優先順序層次。 如需更多資訊,請參閱《 Kubernetes 》文件中的「API 優先級與公平性」章節。

例如,您可能有一個在正式作業中執行重要應用程式的使用者或名稱空間。 您可以建立流程綱目及優先順序,讓重要應用程式具有比叢集中其他應用程式更高的優先順序,讓 API 伺服器滿足其要求。

檢閱預設流程綱目及優先順序層次

IBM Cloud Kubernetes Service 除了 Kubernetes 中的預設設定外,還會設定某些預設的流程架構和優先級。

預設流程綱目及優先順序層次
流程綱目 要求來自的資源 優先順序層次
apiserver-health Kubernetes API 伺服器性能資源 這些資源的 自訂優先順序層次。
calico-apiserver-service-accounts calico-apiserver 名稱空間中使用名稱空間中服務帳戶的資源 與 kube-system 名稱空間服務帳戶的優先順序相同。 此架構適用於 IBM Cloud Kubernetes Service 的 1.31 及後續版本。
calico-system-service-accounts calico-system 名稱空間中使用名稱空間中服務帳戶的資源 與 kube-system 名稱空間服務帳戶的優先順序相同。 此架構適用於 IBM Cloud Kubernetes Service 的 1.29 及後續版本。
ibm-admin 來自 IBM 叢集管理者的資源 群集管理員的請求不受優先順序限制。
ibm-system-service-accounts ibm-system 名稱空間中使用名稱空間中服務帳戶的資源 與 kube-system 名稱空間服務帳戶相同的優先順序
ibm-operators-service-accounts ibm-operators 名稱空間中使用名稱空間中服務帳戶的資源 與 kube-system 名稱空間服務帳戶的優先順序相同。
system-node-proxiers kube-proxy 與 kubelet 相同的優先順序
tigera-operator-service-accounts tigera-operator 名稱空間中使用名稱空間中服務帳戶的資源 與 kube-system 名稱空間服務帳戶的優先順序相同。 此架構適用於 IBM Cloud Kubernetes Service 的 1.29 及後續版本。

您可以建立自己的流程綱目及優先順序,但不要修改預設值。 當您修改 API 要求優先順序時,叢集中可能會發生非預期的結果。

請遵循步驟來檢閱 IBM Cloud Kubernetes Service所設定的流程綱目及優先順序層次。

  1. 列出叢集中的所有流程架構(包括由 IBM Cloud Kubernetes Service 設定的架構)及其對應的優先級。
    kubectl get flowschemas
    
  2. 檢閱特定流程綱目的詳細資料,包括哪些資源可以進行已設定優先順序的 API 要求、可以進行何種類型的 API 要求,以及要求可以修改哪些物件。
    kubectl describe flowschema <flow-schema-name>
    

檢視 IBM Cloud Kubernetes Service 已建立優先順序層次配置

IBM Cloud Kubernetes Service 為 apiserver-health 資源設定自訂的優先級層級配置。

請使用下列指令來檢視配置的詳細資料。

kubectl get prioritylevelconfiguration apiserver-health
kubectl describe prioritylevelconfiguration apiserver-health