centos overlay应用案例
导读:CentOS 上的 Overlay 应用案例精选 一 概念速览 在 CentOS 环境中,Overlay 通常指两类技术:一是容器运行时的联合文件系统 OverlayFS(用于镜像分层与容器可写层),二是容器跨主机网络 Overlay N...
CentOS 上的 Overlay 应用案例精选
一 概念速览
- 在 CentOS 环境中,Overlay 通常指两类技术:一是容器运行时的联合文件系统 OverlayFS(用于镜像分层与容器可写层),二是容器跨主机网络 Overlay Network(常见于 Docker Swarm/Kubernetes)。前者通过 lowerdir/upperdir/workdir/merged 目录合并视图,实现写时复制与白名单删除;后者在多主机上提供容器间的虚拟二层网络,实现跨节点通信与服务发现。
二 典型应用与关键步骤
-
案例一 Docker 单机使用 OverlayFS 作为存储驱动
- 适用场景:提升镜像层复用、减少磁盘占用、获得更好的容器启动与分层管理体验。
- 关键步骤:
- 准备支持 d_type 的 XFS(推荐):mkfs.xfs -n ftype=1 /dev/sdX;如用 ext4 需确认已启用 d_type。
- 配置 Docker 使用 overlay2:编辑 /etc/docker/daemon.json,设置 “storage-driver”: “overlay2”,重启 Docker。
- 验证:docker info | grep -i “storage driver”。在生产中,overlay2 是 Docker 的默认与推荐存储驱动。
-
案例二 Docker Swarm 跨主机 Overlay 网络
- 适用场景:多台 CentOS 主机上的容器需要像在同一局域网内互通,并支持基于 DNS 的服务发现。
- 关键步骤:
- 准备至少 3 台 CentOS 7/8 主机,互通网络;建议统一主机名并重启 Docker。
- 在管理节点初始化 Swarm:docker swarm init;工作节点加入:docker swarm join --token :2377。
- 创建可附加的 Overlay 网络:docker network create -d overlay --attachable overlay_net。
- 验证:在各节点启动容器并连接到 overlay_net,使用 ping 或 docker exec 进行连通性与 DNS 解析测试。
-
案例三 Kubernetes 集群的 Overlay 网络(以 Calico 为例)
- 适用场景:在 CentOS 上部署生产级 Kubernetes,通过 CNI 插件提供 Pod 的跨节点网络。
- 关键步骤:
- 使用 kubeadm 初始化集群(kubeadm init),安装 kubelet/kubectl。
- 部署 Calico 网络插件:kubectl apply -f https://docs.projectcalico.org/v3.25/manifests/calico.yaml。
- 验证:kubectl get pods -n kube-system | grep calico;部署测试 Pod 并检查跨节点通信。
-
案例四 手动挂载 OverlayFS 用于只读根叠加与临时写层
- 适用场景:构建只读系统叠加临时写层、LiveCD/救援环境、CI 构建隔离层等。
- 关键步骤:
- 创建目录:mkdir -p /ovl/{ lower,upper,work,merged} 。
- 挂载 OverlayFS:mount -t overlay overlay
-o lowerdir=/ovl/lower,upperdir=/ovl/upper,workdir=/ovl/work
/ovl/merged。 - 验证:在 /ovl/merged 中写入文件应落在 upper,删除下层文件会在 upper 生成 whiteout 标记。
三 生产注意事项与排错要点
- 存储与文件系统
- 优先使用 XFS 且 ftype=1;ext4 需确认 d_type 开启,避免 Docker 回退到非 overlay2 驱动。
- 合理设置 Docker 存储与日志参数,避免日志与镜像层占满根分区;定期清理无用镜像/容器/卷。
- 网络与安全
- Swarm/容器网络需放通相关端口(如 2377/7946/4789 等),并确保节点间时间同步(NTP/chrony)。
- 在受限环境中,按需调整 firewalld/SELinux 策略,确保容器与网络插件正常工作。
- 高可用与扩展
- 跨主机网络场景建议结合 Keepalived+HAProxy 或集群资源管理器实现控制面/数据面的高可用;数据库等有状态服务应配合持久化与反亲和策略。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos overlay应用案例
本文地址: https://pptw.com/jishu/785384.html
