容器无法启动
来源:互联网 发布:流程优化小组 编辑:程序博客网 时间:2024/06/05 01:00
现象:
4月5日上班,发现关于容器服务的一个负载均衡上报一个后端节点异常,查看容器集群未发现异常现象,随及登录异常节点,发现容器就那么几个,启动容器,报错:
Error response from daemon: subnet sandbox join failed for "172.19.0.0/16": could not find an appropriate master "ov-000100-5873e" for "vx-000100-5873e"
Error: failed to start containers: acsrouting_routing_4
查看日志发现:"Peer add failed in the driver: subnet sandbox join failed for \"172.19.0.0/16\": could not find an appropriate master \
"ov-000100-5873e\" for \"vx-000100-5873e\"\n"
咨询阿里云技术,反馈说是一个内核bug 导致,执行如下命令:
是内核的bug引起的偶发问题,在Docker daemon重启后会出现,参考issue: https://github.com/docker/docker/issues/25039
解决办法是,service docker stop; ip link del ov-000100-5873e; ip link del vx-000100-5873e; rm -rf /var/run/docker/netns /var/lib/docker/network/files/local-kv.db; service docker start
随后发现容器都正常启动了,后排出docker 日志
发现:
become an orphan, killing it
panic: sync: WaitGroup is reused before previous Wait has returned
goroutine 323102179 [running]:
panic(0x16f4be0, 0xc82272c1a0)
/usr/local/go/src/runtime/panic.go:481 +0x3e6
sync.(*WaitGroup).Wait(0xc8229a05c0)
/usr/local/go/src/sync/waitgroup.go:129 +0x114
github.com/docker/docker/daemon.(*Daemon).StateChanged(0xc820351ba0, 0xc82316d0c0, 0x40, 0x1d9dc60, 0xc, 0x0, 0xc82316d140, 0x40, 0x0, 0x0, ...)
/usr/src/docker/.gopath/src/github.com/docker/docker/daemon/monitor.go:68 +0xecc
github.com/docker/docker/libcontainerd.(*container).handleEvent.func1()
/usr/src/docker/.gopath/src/github.com/docker/docker/libcontainerd/container_linux.go:185 +0xab
github.com/docker/docker/libcontainerd.(*queue).append.func1(0xc820837c01, 0xc8202891a0, 0xc822ef12f0, 0xc8232d8cc0)
/usr/src/docker/.gopath/src/github.com/docker/docker/libcontainerd/queue_linux.go:26 +0x47
created by github.com/docker/docker/libcontainerd.(*queue).append
/usr/src/docker/.gopath/src/github.com/docker/docker/libcontainerd/queue_linux.go:28 +0x1da
SIOCDELRT: No such process
/var/run/docker.sock is up
time="2017-04-02T21:04:19.814311352+08:00" level=info msg="libcontainerd: new containerd process, pid: 21452"
ERRO[0000] containerd: notify OOM events error=open /proc/7779/cgroup: no such file or directory
time="2017-04-02T21:04:20.937754879+08:00" level=warning msg="libcontainerd: unknown container 3c54af257d92770298120925e5fc73499d3ece44b73cac03b85afdf04e7eee7e"
time="2017-04-02T21:04:22.364844895+08:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
time="2017-04-02T21:04:22.364949983+08:00" level=info msg="Initializing discovery with TLS"
time="2017-04-02T21:04:22.366145231+08:00" level=warning msg="Your kernel does not support swap memory limit."
time="2017-04-02T21:04:22.366468724+08:00" level=warning msg="mountpoint for pids not found"
time="2017-04-02T21:04:22.381722127+08:00" level=info msg="Loading containers: start."
谷歌后发现是docker 的一个bug 升级docker 版本后,继续观察一段时间再看。
- 容器无法启动
- docker 容器故障导致无法启动解决办法
- 修改无法启动的docker容器的配置
- web容器启动spring容器
- 由Docker的MySQL官方镜像配置的容器无法启动问题的解决办法
- docker容器在 断网情况下开机无法自启动
- 解决:centos7镜像创建的容器里面安装服务后,无法使用命令启动服务
- CStringArray无法放入容器
- mysql无法启动启动
- Spring容器启动过程
- Spring容器启动过程
- 使用xmlBeanFactory启动容器
- docker启动容器
- Spring容器启动过程
- 手动启动spring容器
- java启动spring容器
- docker容器启动
- Spring容器启动过程
- @JoinColumn 与mappedBy
- bzoj3196: Tyvj 1730 二逼平衡树
- 蓝桥杯历届——核桃数量
- Java设置图片背景
- [问题记录.WinDbg]在64位系统上抓取32位进程的dump
- 容器无法启动
- Win32 SDK学习笔记3
- STM32固件下载
- qsort函数、sort函数
- docker私有仓库搭建
- 对jQuery中的$.ajax方法进行学习记录
- maven的scm插件介绍及使用示例
- Nginx实现负载均衡
- C++ 类中重载、覆盖和隐藏的区别和联系