准确-K8s系列文章-修改containerd 默认数据目录

修改 Kubernetes 集群中 containerd 默认数据目录为 /data/containerd

前言

本文档适用于 Kubernetes 1.24 及以上版本的集群,介绍如何将 containerd 默认的数据目录从 /var/lib/containerd 修改为 /data/containerd

步骤

1. 停止 containerd 服务(慎重!!!需评估风险!!!)

bash 复制代码
sudo systemctl stop containerd

2. 修改配置文件

编辑 containerd 的配置文件 /etc/containerd/config.toml

bash 复制代码
sudo vim /etc/containerd/config.toml

将配置文件中默认的 root 目录从 /var/lib/containerd 修改为 /data/containerd

bash 复制代码
默认是:root = "/var/lib/containerd"
修改为:root = "/data/containerd"

保存并退出编辑器。

3. 创建新目录

创建新的 containerd 数据目录:

bash 复制代码
sudo mkdir -p /data/containerd

4. 拷贝数据到新目录

使用 rsync 工具将原目录中的数据拷贝到新目录:

bash 复制代码
sudo rsync -avzh /var/lib/containerd/ /data/containerd/

5. 启动 containerd 服务

重新启动 containerd 服务:

bash 复制代码
sudo systemctl start containerd

6. 检查 containerd 服务状态

确保 containerd 服务已成功启动:

bash 复制代码
sudo systemctl status containerd

验证

1. 使用 crictl 工具验证

通过 crictl 工具查看 containerd 的 root 目录:

bash 复制代码
sudo crictl info | grep -i root

2. 使用 df 工具验证

检查新目录的挂载情况:

bash 复制代码
df -Th

3. 检查目录容量

进入新目录查看其容量:

bash 复制代码
du -lh --max-depth=1 /data/containerd

4. 发布新容器进行验证

发布新的容器应用,确认新的应用数据存储在新的路径下 。请注意,之前启动的容器仍然使用旧的目录,除非这些容器被重启。

总结

通过上述步骤,可以成功地将 Kubernetes 集群中 containerd 的默认数据目录从 /var/lib/containerd 修改为了 /data/containerd。可以通过多种方式验证变更是否生效,并确保新的应用数据存储在新的路径上。

相关推荐
虎头金猫2 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS2 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
codeejun2 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
赵文宇(温玉)2 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang2 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren2 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
忆~遂愿2 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
Thneonl2 天前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
不吃香菜kkk、2 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
ChaITSimpleLove2 天前
云原生性能对决:JDK21虚拟线程+GraalVM vs .NET10/11 技术栈深度对比
微服务·云原生·serverless·graalvm native·native aot·runtime async·.net11/java21