我正在运行一个只有 3 个主节点的 Swarm 集群。我在 Swarm 中的各种服务中公开了一些端口。并且在所有 3 个节点中运行的 Nginx 服务充当反向代理。
当我启动堆栈时,所有这些端口都可以访问并按预期响应。但一段时间后,其中一些端口对某些服务器无响应,并且 Nginx 开始抛出 504 超时。(即)端口 5000 响应来自 Master 1 的请求,但不响应来自 Master 2 和 3 的请求,端口 6000 响应来自 Master 1 和 3 的请求,但不响应来自 Master 2 的请求。
这些是输出nmap -Pn 172.17.0.1
# Master 1
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
5000/tcp open upnp
6000/tcp open mmcc
# Master 2
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
5000/tcp filtered upnp
6000/tcp filtered mmcc
# Master 3
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
5000/tcp filtered upnp
6000/tcp open mmcc
输出netstat -lnpt | grep 5000
(3 个节点相同)
tcp6 0 0 :::5000 :::* LISTEN -
我无法确定这个问题是否与docker swarm或Nginx或主机本身有关。任何有关调试的帮助都将不胜感激。如果需要,我非常乐意分享更多信息。
提前致谢。