树叶云kubernetes教程:Kubernetes 配置cgroup驱动

配置容器运行时 cgroup 驱动

容器运行时页面提到: 由于 kubeadm 把 kubelet 视为一个系统服务来管理,所以对基于 kubeadm 的安装, 我们推荐使用 ​systemd ​驱动,不推荐 ​cgroupfs ​驱动。

此页还详述了如何安装若干不同的容器运行时,并将 ​systemd ​设为其默认驱动。

配置 kubelet 的 cgroup 驱动

kubeadm 支持在执行 ​kubeadm init​ 时,传递一个 ​KubeletConfiguration​ 结构体。 ​KubeletConfiguration​ 包含 ​cgroupDriver ​字段,可用于控制 kubelet 的 cgroup 驱动。

Note: 在版本 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 命令了:

kubeadm init --config kubeadm-config.yaml

Note:

Kubeadm 对集群所有的节点,使用相同的 ​
KubeletConfiguration​。 ​
KubeletConfiguration ​存放于 ​
kube-system​ 命名空间下的某个 ConfigMap 对象中。

执行 ​
init​、​
join ​和 ​
upgrade ​等子命令会促使 kubeadm 将 ​
KubeletConfiguration ​写入到文件 ​
/var/lib/kubelet/config.yaml​ 中, 继而把它传递给本地节点的 kubelet。

使用 cgroupfs 驱动 

正如本指南阐述的:不推荐与 kubeadm 一起使用 ​cgroupfs ​驱动。

如仍需使用 ​cgroupfs​, 且要防止 ​kubeadm upgrade​ 修改现有系统中 ​KubeletConfiguration ​的 cgroup 驱动, 你必须显式声明它的值。 此方法应对的场景为:在将来某个版本的 kubeadm 中,你不想使用默认的 ​systemd ​驱动。

如果你希望配置容器运行时来使用 ​cgroupfs ​驱动, 则必须参考所选容器运行时的文档。

迁移到 systemd 驱动

要将现有 kubeadm 集群的 cgroup 驱动就地升级为 ​systemd​, 需要执行一个与 kubelet 升级类似的过程。 该过程必须包含下面两个步骤:

Note: 还有一种方法,可以用已配置了 ​systemd ​的新节点替换掉集群中的老节点。 按这种方法,在加入新节点、确保工作负载可以安全迁移到新节点、及至删除旧节点这一系列操作之前, 只需执行以下第一个步骤。

修改 kubelet 的 ConfigMap

  • 运行 ​kubectl edit cm kubelet-config -n kube-system​。
  • 修改现有 ​cgroupDriver ​的值,或者新增如下式样的字段:
  • cgroupDriver: systemd
    

    该字段必须出现在 ConfigMap 的 ​kubelet:​ 小节下。

更新所有节点的 cgroup 驱动

对于集群中的每一个节点:

  • 执行命令 ​kubectl drain <node-name> --ignore-daemonsets​,以 腾空节点
  • 执行命令 ​systemctl stop kubelet​,以停止 kubelet
  • 停止容器运行时
  • 修改容器运行时 cgroup 驱动为 ​systemd
  • 在文件 ​/var/lib/kubelet/config.yaml​ 中添加设置 ​cgroupDriver: systemd
  • 启动容器运行时
  • 执行命令 ​systemctl start kubelet​,以启动 kubelet
  • 执行命令 ​kubectl uncordon <node-name>​,以 取消节点隔离

在节点上依次执行上述步骤,确保工作负载有充足的时间被调度到其他节点。

流程完成后,确认所有节点和工作负载均健康如常。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/170721.html<

(0)
运维的头像运维
上一篇2025-03-22 12:53
下一篇 2025-03-22 12:55

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注