Consul 集群频繁“失败”

she*_*y35 4 was cluster-computing amazon-ec2 consul

我是领事的新手,目前正在试验它。我根据这篇文章设置了集群:https : //www.digitalocean.com/community/tutorials/an-introduction-to-using-consul-a-service-discovery-system-on-ubuntu-14-04 all代理处于“服务器”模式。然而,这个集群相当不稳定。当我在服务器上输入“exec consul members”命令时,我总是可以看到许多其他服务器处于“失败”状态(有时它们会恢复活动但很快又会失败)。我猜也许在编写配置文件时有一些技巧。

我使用 AWS EC2 实例来运行这些 consul 代理。

谢谢!约里克

ebr*_*ebr 5

检查“失败”实例之一上的领事代理日志。如果有重复条目,如[WARN] memberlist: Refuting a suspect message或[WARN] memberlist: Refuting a dead message,则表示:

  • 您的代理能够与领事服务器通信,并自行注册;
  • 您的领事服务器无法与代理通信

您需要确保您的安全组允许所有端口上的代理和服务器之间的流量,如下所述:https : //www.consul.io/docs/agent/options.html#ports。

作为参考,这是我的安全组的样子。你会注意到 consul 代理被允许与 consul 服务器通信,并且 consul 服务器被允许在它们之间在所有 UDP 和 TCP 端口上与 consul 代理 PLUS 通信(这太过分了,我计划将其限制在领事)。

领事代理 领事服务器

您还需要确保使用内部 EC2 IP 地址在服务器和客户端之间进行通信。您不希望您的gossip流量传到 EC2 区域的边缘并返回,如果您使用公共 IP 地址,就会发生这种情况。

希望这可以帮助。