【数据迁移】k8s平台本地数据迁移整改

说明

新部署的k8s平台,采用默认配置,数据存放在默认目录,现需要统一管理数据,将数据存放在指定目录和云磁盘。

注意:若k8s对接其他组件,例如openebs,需单独做数据迁移。

操作记录

前提条件,已准备好新的存储数据的云磁盘和目录。

创建新的云磁盘,挂载到主机,例如/dev/vdc。

bash 复制代码
mkdir /data
mkfs.ext4 /dev/vdc
mount /dev/vdc /data/
修改文件,
vim /etc/fstab

# 追加配置
/dev/vdc        /data   ext4    defaults        0 0

检查环境,确保变更前后状态一致,

bash 复制代码
kubectl get node -A -o wide
kubectl get pod -A -o wide

需注意runtime,

若用docker

bash 复制代码
vim /etc/docker/daemon.json
# 新增配置
"data-root": "/data/docker"

同步数据到新目录,配置生效,

bash 复制代码
rsync -av /var/lib/docker/ /data/containerd/
systemctl daemon-reload
systemctl start docker
systemctl status docker

若使用containerd,

bash 复制代码
cp /etc/containerd/config.toml /etc/containerd/config.toml.bak
systemctl stop containerd
rsync -av /var/lib/containerd/ /data/containerd/
vim /etc/containerd/config.toml
# 修改
root = "/data/containerd"

配置生效

bash 复制代码
systemctl daemon-reload
systemctl start containerd
systemctl status containerd

配置kubelet数据

bash 复制代码
mkdir /data/kubelet
systemctl stop kubelet
cp /etc/systemd/system/kubelet.service.d/10-kubeadm.conf /etc/systemd/system/kubelet.service.d/10-kubeadm.conf.backup
rsync -av /var/lib/kubelet/ /data/kubelet/
vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
# 在最后一行ExecStart=尾部追加配置
 --root-dir=/data/kubelet

使配置生效

bash 复制代码
systemctl daemon-reload
systemctl start kubelet
systemctl start kubelet

检查环境,确保变更前后状态一致,

bash 复制代码
kubectl get node -A -o wide
kubectl get pod -A -o wide

重启机器

推荐重启机器,确认配置依旧生效。

清理旧环境

当平台稳定允许三天后,且无数据异常,删除原数据存档的目录,释放占用的空间。

bash 复制代码
rm -rf /var/lib/containerd/ /var/lib/docker /var/lib/kubelet/

注意:集群内所有节点都要操作。

相关推荐
雨辰AI7 分钟前
K8s 达梦数据守护集群部署|容器化高可用生产落地指南
云原生·容器·kubernetes
张忠琳1 小时前
【NPU】Ascend Docker Runtime v26.0.1 之一 runtime/main.go — 超深度分析
云原生·容器·架构·kubernetes·npu·docker-runtime
画中有画1 小时前
云原生可观测性体系设计及其应用
云原生
刹那芳华19922 小时前
基于 Docker 的 LLaMA-Factory 全流程部署指南
docker·容器·llama
Freed&2 小时前
K8s 1.29 集群部署文档
云原生·容器·kubernetes
人间凡尔赛4 小时前
告别冷启动!WebAssembly + Spin 实战:Serverless 延迟从 1 秒降到 1 毫秒
后端·云原生·serverless·webassembly·spin
扶疏52517 小时前
Prometheus+Prometheus Adapter+metrics-server+Ingress实现k8s水平自动扩缩容(HPA)
容器·kubernetes·prometheus
张忠琳17 小时前
【NPU】Ascend Docker Runtime v26.0.1 系统级架构分析
云原生·容器·kubernetes·npu·docker-runtime
holidaypenguin18 小时前
前端 Docker 开发与生产部署指南
docker·容器
这是谁的博客?18 小时前
【中阶·融合】如何隔离多租户 AI 推理平台的 GPU 资源:从 Namespace 到 MIG/Kata 的五层纵深防御
人工智能·ai·云原生·kubernetes·gpu·多租户·ai安全