一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

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

掃碼添加小助手

加入工程師交流群

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

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

cgroup v2 有哪些優(yōu)勢

cgroup v2 提供了一個具有增強(qiáng)資源管理能力的統(tǒng)一控制系統(tǒng)

cgroup v2 對 cgroup v1 進(jìn)行了多項(xiàng)改進(jìn),例如:

?API 中單個統(tǒng)一的層次結(jié)構(gòu)設(shè)計(jì)

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

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

?跨多個資源的增強(qiáng)資源分配管理和隔離

?統(tǒng)一核算不同類型的內(nèi)存分配(網(wǎng)絡(luò)內(nèi)存、內(nèi)核內(nèi)存等)

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

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

使用 cgroup v2 前提

cgroup v2 具有以下要求:

?操作系統(tǒng)發(fā)行版啟用 cgroup v2

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

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

?Fedora(從 31 開始)

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

?…

?Linux 內(nèi)核為 5.8 或更高版本

?容器運(yùn)行時支持 cgroup v2。例如:

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

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

?kubelet 和容器運(yùn)行時被配置為使用 systemd cgroup 驅(qū)動[5]

使用 cgroup v2

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

啟用并檢查 Linux 節(jié)點(diǎn)的 cgroup v2

Debian 11 Bullseye 默認(rèn)已啟用 cgroup v2.

可以通過如下命令驗(yàn)證:

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

?對于 cgroup v2,輸出為 cgroup2fs。

?對于 cgroup v1,輸出為 tmpfs。

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

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

kubelet 使用 systemd cgroup 驅(qū)動

kubeadm 支持在執(zhí)行 kubeadm init 時,傳遞一個 KubeletConfiguration 結(jié)構(gòu)體。KubeletConfiguration 包含 cgroupDriver 字段,可用于控制 kubelet 的 cgroup 驅(qū)動。

說明:在版本 1.22 中,如果用戶沒有在 KubeletConfiguration 中設(shè)置 cgroupDriver 字段, kubeadm init 會將它設(shè)置為默認(rèn)值 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 對集群所有的節(jié)點(diǎn),使用相同的 KubeletConfiguration。KubeletConfiguration 存放于 kube-system 命名空間下的某個 ConfigMap[6] 對象中。

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

containerd 使用 systemd cgroup 驅(qū)動

編輯 /etc/containerd/config.toml:

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

升級監(jiān)控組件以支持 cgroup v2 監(jiān)控

Reference:

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

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

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

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

完成

總結(jié)

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

? API 中單個統(tǒng)一的層次結(jié)構(gòu)設(shè)計(jì)

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

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

? 跨多個資源的增強(qiáng)資源分配管理和隔離

? 統(tǒng)一核算不同類型的內(nèi)存分配(網(wǎng)絡(luò)內(nèi)存、內(nèi)核內(nèi)存等)

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

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213866
  • kubernetes
    +關(guān)注

    關(guān)注

    0

    文章

    245

    瀏覽量

    9073

原文標(biāo)題:如何在 Kubernetes 中快速啟用 Cgroup V2 支持

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    K230支持ONVIF上傳視頻嗎?

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

    何在Simulink啟用ADC校準(zhǔn)?

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

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

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

    請問ADS1255/6支持菊花鏈嗎?

    ADS1255/6支持菊花鏈嗎?連接方法是否同ADS1271?菊花鏈連接以后各ADC是否同步采集,順序輸出數(shù)據(jù)?
    發(fā)表于 02-12 06:05

    P82B96支持HDCP嗎?

    你好:我用P89B96用做HDMI的DDC通道的I2C的轉(zhuǎn)換,我現(xiàn)在是解決了II2問題,但是它里面有個HDCP保護(hù)協(xié)議通過DDC通道,感覺它有延時一樣,不穩(wěn)定。請問是否用P82B96支持HDCP?
    發(fā)表于 12-27 07:01

    ADS1256支持菊花鏈連接嗎?

    求助:1、ADS1256支持菊花鏈連接嗎? 2、如果不支持菊花鏈連接,能否把多片ADS1256掛在同一個SPI(CLK,MISO,MOSI)總線上,通過不同的CS來選擇芯片? 3、多片ADS1256能否
    發(fā)表于 12-24 06:03

    TDC7201支持全雙工SPI嗎?

    1.TDC7201支持全雙工SPI么?就是SCLK發(fā)送了8個地址位數(shù)據(jù)后,需要等待一會才發(fā)送時鐘信號讀取數(shù)據(jù)么?還是立馬給時鐘信號,就可以讀取數(shù)據(jù)的呢? 2.采用模式1,單次測量TOF,出了
    發(fā)表于 12-11 08:01

    請問ADS125H02支持單電源供電,單端輸入嗎?

    請問ADS125H02支持單電源供電,單端輸入嗎。 供電電壓AVDD 5V,AIN0接端信號輸入,AINCOM接AGND,可否實(shí)現(xiàn)。 感謝您的回答。
    發(fā)表于 11-26 08:23

    TLV320AIC3104-Q1支持PCM的音頻接口嗎?

    各位TI的工程師,我想問下支持TLV320AIC3104-Q1支持PCM的音頻接口嗎?Datasheet說能支持I2S,但是沒說能不能
    發(fā)表于 10-28 06:35

    請問PCM9211支持HDMI音頻輸入嗎?

    請問PCM9211支持HDMI 2.1 eARC 標(biāo)準(zhǔn)的幀的專用輸入,是否同時支持HDMI音頻輸入。
    發(fā)表于 10-17 07:53

    請問TAS5727支持幾段EQ?

    TAS5727支持幾段EQ? 比如PCM5121支持7段以上,TAS5727可以么?
    發(fā)表于 10-14 07:02

    請問OPA2541支持單電源嗎?如果支持此時功放范圍是多少?

    請問OPA2541支持單電源嗎?如果支持此時功放范圍是多少?
    發(fā)表于 09-02 07:42

    TUBS8041支持從設(shè)備嗎?

    TUBS8041支持從設(shè)備么?
    發(fā)表于 08-19 06:22

    TPA6120A2支持單電源應(yīng)用的話焊盤接地還是接1/2電源電壓?

    如題,如果TPA6120A2支持單電源應(yīng)用的話焊盤接地還是接1/2電源電壓?
    發(fā)表于 08-15 08:23

    請問TL072支持單端供電嗎?

    TL072支持單端供電嗎?看到規(guī)格書上的建議運(yùn)行條件,VCC-的電壓最大值為-5V,沒有0;現(xiàn)在有電路上VCC+接的是12V,VCC-接的是地,單端供電,這樣貌似芯片也能正常運(yùn)行,可靠嗎?
    發(fā)表于 08-02 06:57