我用swarm的service做了一個global的cadvisor。整個集群有20臺機器只有8臺機器可以正常訪問其他的都報錯"connect: connection refused"
網路的配制是這樣的
ports:
- 7080:8080
networks:
- monitor-overlay
networks:
monitor-overlay:
external: true
我找了兩臺機器做對比
192.168.0.242:7080
容器IP是 10.253.0.3:8080
192.168.0.243:7080
容器IP是 10.253.0.7:8080
我現在進另外一個機器上的的容器
192.168.0.244
容器IP是10.253.0.16
wget 192.168.0.242:7080
wget 10.253.0.3:8080
wget 10.253.0.7:8080
都可以下常訪問的
也就是跨主機的容器互訪都可以
用對訪問的主機IP+映射器都可以訪問
唯獨
wget 192.168.0.243:7080
訪問不了不知道是怎么回事
不知道怎么查詢
我也在兩個容器上netstat -anl看了一下
tcp 0 0 :::8080 :::* LISTEN 1/cadvisor
這個是一樣的
兩臺主機上我也看了
netstat -anpl|grep 7080
tcp6 0 0 :::7080 :::* LISTEN 32155/dockerd
都開放了7080
iptables不太懂
iptables -L -n
不過兩臺機器我都看到了這樣的東西
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:7080
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED tcp spt:7080
firewall-cmd --state
-bash: firewall-cmd: command not found
我們好像沒安裝firewall
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/33961.html
標籤:Docker
下一篇:Harbor鏡像倉庫使用精簡指南
