
我在Google雲端上的 Ubuntu 伺服器 16.04 的 VM 實例上使用靜態 IP 位址建立了一個 swarm 管理器節點。我想加入另一個具有靜態 IP 位址的 ubuntu 虛擬機器實例。我無法這樣做,並且在嘗試加入時出現超時錯誤。
答案1
在大多數情況下,這主要是防火牆問題,因此建議檢查防火牆是否沒有阻止 Google Cloud Platform 上的下列連接埠。請注意,必須打開以下連接埠才能使 Swarm 模式正常運作 -
用於叢集管理通訊的 TCP 連接埠 2377
TCP和UDP連接埠7946用於節點之間的通信
用於覆蓋網路流量的 UDP 連接埠 4789
如果您打算建立加密的覆蓋網路(--opt crypto),您還需要確保 ip 協定 50 (ESP) 流量也被允許。
允許 Google Cloud Platform 上的連接埠:
gcloud compute firewall-rules update [NAME] \
[--allow=[[PROTOCOL][:PORT[-PORT]],…]] \
[--description=[DESCRIPTION]] \
[--destination-ranges=[CIDR_RANGE,…]] \
[--priority=[PRIORITY]] \
[--rules=[[PROTOCOL][:PORT[-PORT]],…]] \
[--source-ranges=[[CIDR_RANGE],…]] \
[--source-tags=[[TAG],…]] \
[--target-tags=[[TAG],…]] \
[--source-service-accounts=[EMAIL] \
[--target-service-accounts=[EMAIL]
您需要使用 GUI 或 GCLOUD 啟用上述連接埠。