帶你熟悉CCE集羣增強型CPU管理策略enhanced-static

本文分享自華爲雲社區《華爲雲CCE集羣增強型CPU管理策略enhanced-static》,作者: 可以交個朋友。

背景

開源Kubernetes默認提供的CPU管理策略有none和static兩種:

  • none: 不開啓CPU管理策略,默認值。
  • static:開啓靜態綁核的CPU管理策略,允許爲節點上具有某些資源特徵的 Pod(Guaranteed pod)賦予CPU親和性和獨佔性。

華爲雲cce集羣提供增強型CPU管理策略(enhanced-static),兼容靜態綁核CPU管理策略的基礎上,新增一種符合某些資源特徵的Burstable Pod(要求CPU的requests和limits參數值都是正整數)優先使用某些CPU的能力,以減少應用在多個CPU間頻繁切換帶來的影響。該特性是基於Huawei Cloud EulerOS 2.0內核中優化了CPU調度能力實現的。在Pod容器優先使用的CPU利用率超過85%時,會自動分配到其他利用率較低的CPU上,進而保障了應用的響應能力。
image.png

約束與限制

使用該特性,需同時滿足以下條件:

  • 集羣版本爲v1.23及以上。
  • 節點操作系統爲Huawei Cloud EulerOS 2.0。
  • 彈性雲服務器。物理機節點不支持使用CPU管理策略。

操作演示

未開啓增強型CPU管理策略

創建節點池,規格選擇8C/16G。

創建工作負載

kind: Deployment 
apiVersion: apps/v1 
metadata: 
  name: enhanced-static 
spec: 
  replicas: 1 
  selector: 
    matchLabels: 
      app: enhanced-static 
  template: 
    metadata: 
      labels: 
        app: enhanced-static 
    spec: 
      containers: 
        - name: container-1 
          image: swr.cn-north-4.myhuaweicloud.com/testapp/centos-stress:v1 
          command: 
            - /bin/bash 
          args: 
            - '-c' 
            - while true; do echo hello; sleep 10; done 
          resources: 
            limits: 
              cpu: '4' 
              memory: 2Gi 
            requests: 
              cpu: '3' 
              memory: 2Gi

image.png

進入容器內使用命令壓測cpu資源,並在grafana頁面觀察192.168.0.114節點每個核心的使用率

stress-ng -c 4 -t 3600

image.png

開啓增強型CPU管理策略

點擊節點池的配置管理-kubelet組件配置-CPU管理策略配置-選擇enhanced-static

image.png

步驟 5 登錄到節點上查看優先核綁定詳情,查看路徑:/var/lib/kubelet/cpu_manager_state;修改配置後該文件會自動刪除重建

0-7:表示節點上所有核心

10001-10003:表示優先覈編號,優先核爲cpu1、cpu2、cpu3

image.png

進入容器內使用命令壓測cpu資源,並在grafana頁面觀察192.168.0.114節點每個核心的使用率

stress-ng -c 4 -t 3600
image.png

 

點擊關注,第一時間瞭解華爲雲新鮮技術~

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章