一次docker swarm重启的教训

背景:

公司有个业务系统是基于docker swarm的部署架构。由于我修改了某个配置,需要对docker进行重启,执行完systemctl restart docker 以后容器中的服务没有按计划启动起来。

执行docker service ls发现swarm中的服务在,但是容器启动不起来。

1、执行如下命令

复制代码
docker service ps --no-trunc  {tfg8sns6kvaq} #容器id

返回内容为;

复制代码
Dokcer Swarm - network sandbox join failed: subnet sandbox join failed

2、解决方法:

2.1、查看 /sys/class/net 目录下vx-*的VLAN

复制代码
ls -l /sys/class/net/ | grep vx

2.2、我们有了接口id,拉取更多详细信息

复制代码
udevadm info /sys/class/net/

2.3、如果这些接口存在,我们应该能够安全地删除vx-1231231-xxxxxx接口。

复制代码
ip -d link show vx-1231231-xxxxx
ip link delete vx-1231231-xxxxx

2.4、重启docker 服务

复制代码
systemctl retart docker
相关推荐
原神启动12 分钟前
K8S(五)—— YAML文件解析
java·容器·kubernetes
lin张5 分钟前
k8s(二)项目生命周期管理、发布策略与声明式资源管理
云原生·容器·kubernetes
赵文宇(温玉)15 分钟前
Docker的价值、特点、创新与关键技术
运维·docker·容器
芝麻馅汤圆儿16 分钟前
cpu 大小核
linux·运维·centos
m0_7269659828 分钟前
玩转(坏)服务器【一】
运维·服务器
Zsr10231 小时前
K8S安装指南与核心操作命令汇总
云原生·容器·kubernetes
记得开心一点嘛1 小时前
Elasticsearch
运维·jenkins
孤岛悬城1 小时前
53 k8s基础与安装
云原生·容器·kubernetes
Coder码匠2 小时前
Docker Compose 部署 Spring Boot 应用完全指南
spring boot·docker·容器
Ares-Wang2 小时前
网络》》防火墙
运维·服务器·网络