安裝:
sudo curl -L git.io/weave -o /usr/local/bin/weave
sudo chmod a+x /usr/local/bin/weave
啟動:
#主機啟動
weave launch
#從機啟動
weave launch? 172.33.16.6 主機ip
or
weave launch
weave connect 172.33.16.6 主機ip
設(shè)置環(huán)境變量:
eval $(weave env)?
檢查狀態(tài):
weave version? #查看weave版本
weave status? ? #查看weave狀態(tài)
weave status dns
weave status peers
weave status? connections
docker network ls
docker network inspect weave
防火墻設(shè)置:
如果linux開啟了防火墻,weave需要開啟6783、6784、53端口,讓服務(wù)器之間通訊。
如果開啟這些端口后容器之間還是無法連接、DNS無效,請關(guān)閉防火墻試試。
systemctl disable firewalld
systemctl stop firewalld
關(guān)閉防火墻后iptables表可能需要重建,否則docker run的時候會報錯
systemctl restart docker
測試連通情況:
主機:
docker run --name c1 -it busybox sh
ping c2
從機:
docker run --name c2 -it busybox sh
ping c1
設(shè)置自啟動:
配置自啟服務(wù)文件
vim /etc/systemd/system/weave.service
[Unit]
Description=Weave Network
Documentation=http://docs.weave.works/weave/latest_release/
Requires=docker.service
After=docker.service
[Service]
EnvironmentFile=-/etc/sysconfig/weave
ExecStartPre=/usr/local/bin/weave launch --no-restart $PEERS
ExecStart=/usr/bin/docker attach weave
ExecStop=/usr/local/bin/weave stop
[Install]
WantedBy=multi-user.target
如果是從機還需要配置這個文件
vim /etc/sysconfig/weave
PEERS="172.33.16.6 HOST2 .. HOSTn"
然后嘗試啟動
sudo systemctl start weave
如果啟動失敗,先手動停止,然后再嘗試啟動
eval $(weave env --restore)
weave stop
設(shè)置開機自啟動
sudo systemctl enable weave