一次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
相关推荐
zzhclc12 分钟前
pyrosm windows 如何搭建环境 使用conda
linux·运维·服务器
码农小白猿25 分钟前
IACheck提升锅炉安装验收报告审核效率:智能化审核为安全合规保驾护航
运维·人工智能·ai·iacheck
QT 小鲜肉25 分钟前
【Linux命令大全】001.文件管理之slocate命令(实操篇)
linux·运维·服务器·数据库·笔记
北方的流星32 分钟前
华为PPPoE协议的配置
运维·网络·华为
oMcLin42 分钟前
Linux 系统服务器的 KVM 虚拟化实战:搭建、配置与管理
linux·运维·服务器
Jtti43 分钟前
服务器拒绝执行用户请求怎么办?
运维·服务器
吉普赛的歌1 小时前
【服务器】Windows Server如何配置一个账号多个用户可以远程登录
运维·服务器·windows
invicinble1 小时前
对于docker在项目中的完整实战
运维·docker·容器
庸子1 小时前
告别手动运维:Kustomize 与 ArgoCD 构建的 GitOps 体系
运维·kubernetes·argocd
TPBoreas1 小时前
清理服务器日志空间
linux·运维·服务器