全部產品
Search
文件中心

Container Service for Kubernetes:調度應用至指定節點

更新時間:Jun 19, 2024

通過設定節點標籤和nodeSelector策略,您可以將應用調度到指定節點上。

前提條件

步驟一:設定節點標籤

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 在叢集管理頁左側導覽列,選擇節點管理 > 節點

  3. 在頁面右上方單擊標籤與汙點管理,進入標籤與汙點管理頁面。

  4. 標籤頁簽中,選擇目標節點,然後單擊左下角的添加標籤

  5. 在彈出的添加對話方塊中,輸入標籤的名稱,然後單擊確定

    • 名稱:標籤名稱由字母、數字、短劃線(-)、底線(_)、小數點(.)組成,且必須以字母或者數字開頭和結尾。本文樣本為pod。

    • :標籤值可以為空白字串或由字母、數字、短劃線(-)、底線(_)、小數點(.)組成,且必須以字母或者數字開頭和結尾。本文樣本為nginx。

步驟二:調度應用到指定節點

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 在叢集管理頁左側導覽列,選擇工作負載 > 無狀態

  3. 單擊目標應用操作列的查看Yaml,為應用設定nodeSelector。本文以名稱為nginx-deployment-basic的無狀態工作負載為例進行說明。

    apiVersion: apps/v1 
    kind: Deployment
    metadata:
      name: nginx-deployment-basic
      labels:
        app: nginx
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          nodeSelector:
            pod: nginx      #添加節點的標籤,以保證您的應用只可以運行在目標節點上。請使用實際值。
          containers:
          - name: nginx
            image: nginx:1.7.9
            ports:
            - containerPort: 80
  4. 單擊更新,會提示部署狀態資訊。

結果驗證

單擊應用程式名稱,進入應用詳情頁面,查看容器組頁簽。目標應用Pod全部被調度到了xxx.xxx.33.88的節點上,這個節點正是本文樣本中在節點中打了標籤(pod: nginx)的節點。20231228183946.jpg

相關文檔

  • 如果您想瞭解更多關於nodeSelector的資訊,請參見Assigning Pods to Nodes

  • 您可以在應用發布或擴容過程中,自訂資源策略(ResourcePolicy),設定應用被調度到不同類型節點資源的順序。同時,在縮容過程中按照原調度順序逆序縮容。詳細資料,請參見自訂彈性資源優先順序調度