Kubernetes 如何将kubelet工作目录更改为其他位置
库伯内特斯1.7.x kubelet将一些数据存储在/var/lib/kubelet中,如何将其更改为其他位置 因为我的/var非常小。好的。我想出来了。 在centos /etc/systemd/system/kubelet.service.d/10-kubeadm.conf 你可以加上Kubernetes 如何将kubelet工作目录更改为其他位置,kubernetes,kubelet,Kubernetes,Kubelet,库伯内特斯1.7.x kubelet将一些数据存储在/var/lib/kubelet中,如何将其更改为其他位置 因为我的/var非常小。好的。我想出来了。 在centos /etc/systemd/system/kubelet.service.d/10-kubeadm.conf 你可以加上 Environment="KUBELET_EXTRA_ARGS=$KUBELET_EXTRA_ARGS --root-dir=/data/k8s/kubelet" 然后 如果您的/etc/systemd/s
Environment="KUBELET_EXTRA_ARGS=$KUBELET_EXTRA_ARGS --root-dir=/data/k8s/kubelet"
然后
如果您的
/etc/systemd/system/kubelet.service.d/10 kubeadm.conf
正在从/etc/sysconfig/kubelet
加载环境,就像我的一样,您可以更新它以包含额外的参数
# /etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS=--root-dir=/data/k8s/kubelet
整个10 kubeadm.conf
,供参考:
# /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
# Note: This dropin only works with kubeadm and kubelet v1.11+
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
# This is a file that "kubeadm init" and "kubeadm join" generates at runtime, populating the KUBELET_KUBEADM_ARGS variable dynamically
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
# This is a file that the user can use for overrides of the kubelet args as a last resort. Preferably, the user should use
# the .NodeRegistration.KubeletExtraArgs object in the configuration files instead. KUBELET_EXTRA_ARGS should be sourced from this file.
EnvironmentFile=-/etc/sysconfig/kubelet
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS
如果它运行得很快而且没有任何问题,只需创建一个simlink到另一个有足够空间的位置 由于kubelet的根目录位于
/var/lib/kubelet
,请将/var/lib/kubelet
内容复制到新的所需位置,例如/data/k8s/kubelet
,然后将/var/lib/kubelet
目录重命名为kubelet bup
,以备备份
从文档中创建符号链接:
$ln-s/path/to/dir/path/to/symlink
在本例中,请使用:
$ln-s/data/k8s/kubelet/var/lib/kubelet
这应该立即起作用,否则使用
systemctl daemon-reload
systemctl restart kubelet
在Ubuntu 18.04上测试
仅供参考:您是否必须重新安装Kubernetes,或者您成功地保留了当前安装?@goo无需重新安装。谢谢,@xren。我将此应用于RHEL中的一个集群,它运行良好!
systemctl daemon-reload
systemctl restart kubelet