如何通过 weave-overlay 网络将容器 运行 的静态 IP 地址设置到 Swarm 中?
How to set static IP address to a container running into a Swarm over a weave-overlay network?
TL;DR:Swarm 1.0.0
中存在的错误,已在 Swarm 1.1.0
.
中解决
在四个 swarm 代理集群上,自定义覆盖网络是 运行 和 weave plugin:
user@swarm-master:~$swarm-docker network create --driver weave --subnet 192.168.0.0/16 custom-weave
但是,使用此命令及其输出我们可以看到一个问题:
user@swarm-master:~$ swarm-docker run --rm -it --net=custom-weave --ip=192.168.0.5 debian:jessie bash -c "ip addr show"
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
[ . . ]
74: ethwe0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1410 qdisc noqueue state UP group default
link/ether ee:c2:9c:6c:c3:6c brd ff:ff:ff:ff:ff:ff
inet 192.168.0.2/16 scope global ethwe0
valid_lft forever preferred_lft forever
inet6 fe80::ecc2:9cff:fe6c:c36c/64 scope link tentative
valid_lft forever preferred_lft forever
76: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state DOWN group default
[ . . ]
用户定义的 --net
选项与 --ip=192.168.0.5
一样设置。虽然预期容器的 ethwe0
接口 IP 地址设置为 192.168.0.5,但实际上设置为 192.168.0.2 .
问题:这个过程有什么问题?
没什么,只是自 1.1.0
.
版本以来解决了一个错误
TL;DR:Swarm 1.0.0
中存在的错误,已在 Swarm 1.1.0
.
在四个 swarm 代理集群上,自定义覆盖网络是 运行 和 weave plugin:
user@swarm-master:~$swarm-docker network create --driver weave --subnet 192.168.0.0/16 custom-weave
但是,使用此命令及其输出我们可以看到一个问题:
user@swarm-master:~$ swarm-docker run --rm -it --net=custom-weave --ip=192.168.0.5 debian:jessie bash -c "ip addr show"
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
[ . . ]
74: ethwe0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1410 qdisc noqueue state UP group default
link/ether ee:c2:9c:6c:c3:6c brd ff:ff:ff:ff:ff:ff
inet 192.168.0.2/16 scope global ethwe0
valid_lft forever preferred_lft forever
inet6 fe80::ecc2:9cff:fe6c:c36c/64 scope link tentative
valid_lft forever preferred_lft forever
76: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state DOWN group default
[ . . ]
用户定义的 --net
选项与 --ip=192.168.0.5
一样设置。虽然预期容器的 ethwe0
接口 IP 地址设置为 192.168.0.5,但实际上设置为 192.168.0.2 .
问题:这个过程有什么问题?
没什么,只是自 1.1.0
.