我的docker网络中有一个IP地址(172.17.0.11)有问题。只要容器获得此IP,容器的出站连接就会停止工作。当我杀了这个容器时:
看起来IP冲突对我来说 - curl
不起作用,wget
和ping
工作得非常慢,可能是因为他们每次都重新建立连接。这是不是DNS问题,由于curl不能正常工作,所使用的docker镜像没有区别。
这是Debian 8(4.9内核)上的单个服务器设置,其中kubernetes为1.6.4,docker-ce为17.06.1(overlay2)。这个问题发生在我从1.12.6升级到17.06.1
之后请帮我调试这个问题。
docker version:
Client:
Version: 17.06.1-ce
API version: 1.30
Go version: go1.8.3
Git commit: 874a737
Built: Thu Aug 17 22:53:31 2017
OS/Arch: linux/amd64
Server:
Version: 17.06.1-ce
API version: 1.30 (minimum version 1.12)
Go version: go1.8.3
Git commit: 874a737
Built: Thu Aug 17 22:51:25 2017
OS/Arch: linux/amd64
Experimental: false
码头信息:
Containers: 336
Running: 336
Paused: 0
Stopped: 0
Images: 52
Server Version: 17.06.1-ce
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 6e23458c129b551d5c9871e5174f6b1b7f6d1170
runc version: 810190ceaa507aa2727d7ae6f4790c76ec150bd2
init version: 949e6fa
Kernel Version: 4.9.0-0.bpo.3-amd64
Operating System: Debian GNU/Linux 8 (jessie)
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 28.76GiB
Name: host
ID: QY6I:JI2S:BOPG:FIQP:YEBB:3UYF:N3G2:COCQ:PX7Z:QRCV:GIEN:FGQC
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
答案 0 :(得分:0)
您是否尝试重启故障节点?看起来某些命名空间/网桥配置可能已经卡住了。
答案 1 :(得分:0)
此问题是由docker网络(网桥插件)与主机上网络的实际状态之间的异步引起的。已发布来自docker网络的IP,但关联的虚拟接口和相关的tcp连接保持不变。所以当这个IP附加到一个新容器时,网络异常就开始发生了。
很可能这发生在随机docker守护程序挂起之后(发生在旧的1.12版本中)。