容器运行时页面提到: 由于 kubeadm 把 kubelet 视为一个系统服务来管理,所以对基于 kubeadm 的安装, 我们推荐使用 systemd
驱动,不推荐 cgroupfs
驱动。
创新互联建站专业为企业提供吴中网站建设、吴中做网站、吴中网站设计、吴中网站制作等企业网站建设、网页设计与制作、吴中企业网站模板建站服务,10余年吴中做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
此页还详述了如何安装若干不同的容器运行时,并将 systemd
设为其默认驱动。
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。
正如本指南阐述的:不推荐与 kubeadm 一起使用 cgroupfs
驱动。
如仍需使用 cgroupfs
, 且要防止 kubeadm upgrade
修改现有系统中 KubeletConfiguration
的 cgroup 驱动, 你必须显式声明它的值。 此方法应对的场景为:在将来某个版本的 kubeadm 中,你不想使用默认的 systemd
驱动。
如果你希望配置容器运行时来使用 cgroupfs
驱动, 则必须参考所选容器运行时的文档。
要将现有 kubeadm 集群的 cgroup 驱动就地升级为 systemd
, 需要执行一个与 kubelet 升级类似的过程。 该过程必须包含下面两个步骤:
Note: 还有一种方法,可以用已配置了
systemd
的新节点替换掉集群中的老节点。 按这种方法,在加入新节点、确保工作负载可以安全迁移到新节点、及至删除旧节点这一系列操作之前, 只需执行以下第一个步骤。
kubectl edit cm kubelet-config -n kube-system
。cgroupDriver
的值,或者新增如下式样的字段:cgroupDriver: systemd
该字段必须出现在 ConfigMap 的 kubelet:
小节下。
对于集群中的每一个节点:
kubectl drain --ignore-daemonsets
,以 腾空节点 systemctl stop kubelet
,以停止 kubelet systemd
/var/lib/kubelet/config.yaml
中添加设置 cgroupDriver: systemd
systemctl start kubelet
,以启动 kubelet kubectl uncordon
,以 取消节点隔离在节点上依次执行上述步骤,确保工作负载有充足的时间被调度到其他节点。
流程完成后,确认所有节点和工作负载均健康如常。
当前标题:创新互联kubernetes教程:Kubernetes配置cgroup驱动
本文来源:http://www.mswzjz.cn/qtweb/news44/535194.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能