docker swarm ではまったこと
Docker 1.11.2、Ubuntu14.04 で
オーバレイネットワークを構築しようとしたところ
前にやっていたのにもかかわらず いろいろな問題にぶち当たっているのでメモ。
■オーバレイネットワークを作ろうとするとエラー
root@ubuntu:~# docker -H localhost:12375 network create -d overlay test Error response from daemon: Error response from daemon: pool configuration failed because of Unexpected response code: 413 (Value exceeds 524288 byte limit)
原因は不明。
関連すると思われる issue はいっぱい。
https://github.com/docker/compose/issues/3041
https://github.com/docker/swarm/issues/1941
https://github.com/docker/swarm/issues/1931
https://github.com/docker/swarm/issues/2290
issue1931 にあるとおり
docker service をリスタートすると作成できるようになったりします。
なぜだろう・・・orz
■ コンテナ起動時にオーバレイネットワークに所属させようとすると error creating vxlan interface
以下のエラーが出るようになってしまいた
# docker network create -d overlay test # docker run -dP --net test --name teamcity1 moremagic/teamcity Error response from daemon: Cannot start container <container hash>: subnet sandbox join failed for "10.0.0.0/24": error creating vxlan interface: file exists
起動時の --net オプションをやめて、自分でnetwork connect しても発生します。
また、違うコンテナを起動したときでは問題が起きなかったりします。なんでだ?
いろいろ試行錯誤したところ
overlay network を作るときに以下のように作ると問題が起きない気がします。
docker network create --opt com.docker.network.bridge.enable_icc=false -d overlay mynet
今のところ原因は不明です。
関連すると思われる issue はやっぱりいっぱい見つかります。
https://github.com/docker/libnetwork/issues/945
https://github.com/docker/libnetwork/issues/561
https://github.com/docker/libnetwork/issues/562
■謎のネットワークができている
Overlayネットワークを作成すると謎のネットワークdocker_gwbridgeが作成されます
root@ubuntu:~# docker -H localhost:12375 network ls NETWORK ID NAME DRIVER b449f3c85844 ubuntu/bridge bridge 7b7c1dc48fb8 ubuntu/docker_gwbridge bridge 04589e18f17a ubuntu/host host 47c24eef2fa0 ubuntu/none null
調べてみたところ オーバレイネットワークを作成すると
ノード間の通信ではこのネットワークを使用してアクセスをしているようです。
参考資料
http://techblog.ca-reward.co.jp/techblog/2016/06/post-34.html
■ コンテナをネットワークからrmしてもすぐに消えない
コンテナはstopするとネットワークから消えるようです。
■ ネットワーク設定はどこに入っているのか
/var/run/docker/netns/ あたりに格納されているようです。
ネットワークを強制的にクリアしたいときはここを消すといいかもしれません。
root@ubuntu:~# ll /var/run/docker/netns/ 合計 0 drwxr-xr-x 2 root root 100 6月 29 23:55 ./ drwx------ 4 root root 80 6月 29 22:49 ../ -rw-r--r-- 1 root root 0 6月 29 23:55 1f4849962a99 -rw-r--r-- 1 root root 0 6月 29 23:54 78ef48ee7435 -rw-r--r-- 1 root root 0 6月 29 23:55 9bcc71762e2b
ネットワーク周りは詰まるとほんと大変だ・・・orz