国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在Kubernetes中快速啟用Cgroup V2支持

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2023-01-29 11:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Linux 中有兩個 cgroup 版本:cgroup v1 和 cgroup v2。cgroup v2 是新一代的 cgroup API

Kubernetes 自 v1.25 起 cgroup2 特性正式 stable.

cgroup v2 有哪些優勢

cgroup v2 提供了一個具有增強資源管理能力的統一控制系統

cgroup v2 對 cgroup v1 進行了多項改進,例如:

?API 中單個統一的層次結構設計

?更安全的子樹委派給容器

?更新的功能特性, 例如壓力阻塞信息(Pressure Stall Information,PSI)[1]

?跨多個資源的增強資源分配管理和隔離

?統一核算不同類型的內存分配(網絡內存、內核內存等)

?考慮非即時資源變化,例如頁面緩存回寫

一些 Kubernetes 特性專門使用 cgroup v2 來增強資源管理和隔離。例如,MemoryQoS[2] 特性改進了內存 QoS 并依賴于 cgroup v2 原語。

使用 cgroup v2 前提

cgroup v2 具有以下要求:

?操作系統發行版啟用 cgroup v2

?Ubuntu(從 21.10 開始,推薦 22.04+)

?Debian GNU/Linux(從 Debian 11 Bullseye 開始)

?Fedora(從 31 開始)

?RHEL 和類似 RHEL 的發行版(從 9 開始)

?…

?Linux 內核為 5.8 或更高版本

?容器運行時支持 cgroup v2。例如:

?containerd[3] v1.4 和更高版本

?cri-o[4] v1.20 和更高版本

?kubelet 和容器運行時被配置為使用 systemd cgroup 驅動[5]

使用 cgroup v2

這里以 Debian 11 Bullseye + containerd v1.4 為例.

啟用并檢查 Linux 節點的 cgroup v2

Debian 11 Bullseye 默認已啟用 cgroup v2.

可以通過如下命令驗證:

stat-fc%T/sys/fs/cgroup/

?對于 cgroup v2,輸出為 cgroup2fs。

?對于 cgroup v1,輸出為 tmpfs。

如果沒有啟用, 可以通過在 /etc/default/grub 下的 GRUB_CMDLINE_LINUX 中添加 systemd.unified_cgroup_hierarchy=1, 然后執行 sudo update-grub

Notes: 如果是樹莓派, 標準 Raspberry Pi OS 安裝時不會啟用 cgroups。需要 cgroups 來啟動 systemd 服務。可以通過將 cgroup_memory=1 cgroup_enable=memory systemd.unified_cgroup_hierarchy=1 附加到 /boot/cmdline.txt 來啟用 cgroups。并重啟生效

kubelet 使用 systemd cgroup 驅動

kubeadm 支持在執行 kubeadm init 時,傳遞一個 KubeletConfiguration 結構體。KubeletConfiguration 包含 cgroupDriver 字段,可用于控制 kubelet 的 cgroup 驅動。

說明:在版本 1.22 中,如果用戶沒有在 KubeletConfiguration 中設置 cgroupDriver 字段, kubeadm init 會將它設置為默認值 systemd。

這是一個最小化的示例,其中顯式的配置了此字段:

#kubeadm-config.yaml kind:ClusterConfiguration apiVersion:kubeadm.k8s.io/v1beta3 kubernetesVersion:v1.21.0 --- kind:KubeletConfiguration apiVersion:kubelet.config.k8s.io/v1beta1 cgroupDriver:systemd

這樣一個配置文件就可以傳遞給 kubeadm 命令了:

kubeadminit--configkubeadm-config.yaml

說明:

Kubeadm 對集群所有的節點,使用相同的 KubeletConfiguration。KubeletConfiguration 存放于 kube-system 命名空間下的某個 ConfigMap[6] 對象中。

執行 init、join 和 upgrade 等子命令會促使 kubeadm 將 KubeletConfiguration 寫入到文件 /var/lib/kubelet/config.yaml 中, 繼而把它傳遞給本地節點的 kubelet。

containerd 使用 systemd cgroup 驅動

編輯 /etc/containerd/config.toml:

[plugins.cri.containerd.runtimes.runc.options] SystemdCgroup=true

升級監控組件以支持 cgroup v2 監控

Reference:

cgroup v2 使用一個與 cgroup v1 不同的 API,因此如果有任何應用直接訪問cgroup 文件系統, 則需要將這些應用更新為支持 cgroup v2 的版本。例如:

? 一些第三方監控和安全代理可能依賴于 cgroup 文件系統。你要將這些代理更新到支持 > cgroup v2 的版本。

? 如果以獨立的 DaemonSet 的形式運行 cAdvisor[7] 以監控 Pod 和容器, 需將其更> 新到 v0.43.0 或更高版本。

? 如果你使用 JDK,推薦使用 JDK 11.0.16 及更高版本或 JDK 15 及更高版本, 以便> 完全支持 cgroup v2[8]。

完成

總結

Kubernetes 自 v1.25 起 cgroup2 特性正式 stable. cgroup2 相比 cgroup v1 有以下優勢:

? API 中單個統一的層次結構設計

? 更安全的子樹委派給容器

? 更新的功能特性, 例如壓力阻塞信息(Pressure Stall Information,PSI)[9]

? 跨多個資源的增強資源分配管理和隔離

? 統一核算不同類型的內存分配(網絡內存、內核內存等)

? 考慮非即時資源變化,例如頁面緩存回寫

推薦在使用 Kubernetes v1.25及以上版本時, 使用支持 cgroup v2 的linux 和 CRI. 并啟用 Kubernetes 的cgroup v2 功能.

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11760

    瀏覽量

    219042
  • kubernetes
    +關注

    關注

    0

    文章

    263

    瀏覽量

    9494

原文標題:如何在 Kubernetes 中快速啟用 Cgroup V2 支持

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何讓S32K396支持FreeRTOS的多核運行?

    如何讓S32K396支持FreeRTOS的多核運行
    發表于 02-26 10:03

    RDMA設計28:RoCE v2 發送及接收模塊設計

    v2 數據包或從 RoCE v2數據包解析出遠程主機信息及數據。RoCE v2 發送及接收模塊的結構和數據轉移方式如圖 1 所示。 圖1 RoCE
    發表于 01-25 10:45

    RDMA設計19:RoCE v2 發送及接收模塊設計

    為 RoCE v2 數據包或從 RoCE v2數據包解析出遠程主機信息及數據。RoCE v2 發送及接收模塊的結構和數據轉移方式如圖1所示。RoCE
    發表于 01-06 08:08

    CW32F030支持哪些協議及功能?

    CW32F030支持哪些協議及功能
    發表于 12-22 06:18

    請問CW32F003支持printf函數嗎?

    CW32F003支持printf函數嗎?
    發表于 11-21 07:48

    CW32L011支持哪些實時操作系統?

    CW32L011支持哪些實時操作系統?
    發表于 11-17 06:51

    stm32支持canfd和dma結合使用嗎?

    stm32支持canfd和dma結合使用嗎
    發表于 08-01 07:15

    CS57066支持22A 4.5V~24V輸入,單節鋰電池適用低靜態電流,兼容同步和異步外圍應用,DC-DC升壓IC

    CS57066支持22A 4.5V~24V輸入,單節鋰電池適用低靜態電流,兼容同步和異步外圍應用,DC-DC升壓IC
    的頭像 發表于 07-14 20:50 ?544次閱讀
    CS57066<b class='flag-5'>支持</b>22A 4.5<b class='flag-5'>V</b>~24<b class='flag-5'>V</b>輸入,單節鋰電池適用低靜態電流,兼容同步和異步外圍應用,DC-DC升壓IC

    K230支持ONVIF上傳視頻嗎?

    K230支持ONVIF上傳視頻嗎
    發表于 06-20 07:11

    請問STM32U5不支持ST-LINK v2怎么辦?

    STM32U5不支持ST-LINK v2怎么辦?
    發表于 06-09 07:59

    DCDC升壓芯片SL4013支持兩節鋰電7.4V、8.4V升壓24V開關電源芯片

    國產升壓芯片SL4013在兩節鋰電池(8.4V)升壓至24V的應用,憑借其高性能設計和廣泛適應性,展現出以下核心優勢: 一、寬輸入電壓范圍與高兼容性 輸入電壓支持:SL4013
    發表于 04-23 16:46

    HarmonyOS Next V2 @Local 和@Param

    HarmonyOS Next V2 @Local 和@Param @Local 背景 @Local 是 harmony 應用開發v2 版本 對標**@State**的狀態管理修
    的頭像 發表于 04-02 18:27 ?1052次閱讀
    HarmonyOS Next <b class='flag-5'>V2</b> @Local 和@Param

    HarmonyOS Next V2 @Monitor 和@Computed

    HarmonyOS Next V2 @Monitor 和@Computed @Monitor 介紹 @Monitor 是狀態把管理 V2 版本的用于監聽狀態變量修改的技術。 它可以直接用在
    的頭像 發表于 04-02 18:26 ?799次閱讀

    何在Simulink啟用ADC校準?

    何在 Simulink 啟用 ADC 校準? V4.2.0 產品發布報告指出,它在塊可用。但我在 ADC 配置塊
    發表于 03-31 07:50

    請問STM32CubeIDE v1.16.1支持代碼補全功能嗎?如何開啟呢?

    STM32CubeIDE v1.16.1支持代碼補全功能嗎?如何開啟呢?
    發表于 03-14 06:47