说明新部署的k8s平台采用默认配置数据存放在默认目录现需要统一管理数据将数据存放在指定目录和云磁盘。注意若k8s对接其他组件例如openebs需单独做数据迁移。操作记录前提条件已准备好新的存储数据的云磁盘和目录。创建新的云磁盘挂载到主机例如/dev/vdc。mkdir/data mkfs.ext4 /dev/vdcmount/dev/vdc /data/ 修改文件vim/etc/fstab# 追加配置/dev/vdc /data ext4 defaults00检查环境确保变更前后状态一致kubectl getnode-A-owide kubectl get pod-A-owide需注意runtime若用dockervim/etc/docker/daemon.json# 新增配置data-root:/data/docker同步数据到新目录配置生效rsync-av/var/lib/docker/ /data/containerd/ systemctl daemon-reload systemctl startdockersystemctl statusdocker若使用containerdcp/etc/containerd/config.toml /etc/containerd/config.toml.bak systemctl stop containerdrsync-av/var/lib/containerd/ /data/containerd/vim/etc/containerd/config.toml# 修改root/data/containerd配置生效systemctl daemon-reload systemctl start containerd systemctl status containerd配置kubelet数据mkdir/data/kubelet systemctl stop kubeletcp/etc/systemd/system/kubelet.service.d/10-kubeadm.conf /etc/systemd/system/kubelet.service.d/10-kubeadm.conf.backuprsync-av/var/lib/kubelet/ /data/kubelet/vim/etc/systemd/system/kubelet.service.d/10-kubeadm.conf# 在最后一行ExecStart尾部追加配置--root-dir/data/kubelet使配置生效systemctl daemon-reload systemctl start kubelet systemctl start kubelet检查环境确保变更前后状态一致kubectl getnode-A-owide kubectl get pod-A-owide重启机器推荐重启机器确认配置依旧生效。清理旧环境当平台稳定允许三天后且无数据异常删除原数据存档的目录释放占用的空间。rm-rf/var/lib/containerd/ /var/lib/docker /var/lib/kubelet/注意集群内所有节点都要操作。