监控微服务集群(web,queue,db,ha proxy)

时间:2015-02-22 23:38:28

标签: nginx architecture health-monitoring microservices

我正在设计一个所有微服务都是集群的架构。 例如:5个Web服务器,1个集群db,1个集群队列系统,8个集群工作者(如发送电子邮件,发送短信,...)从队列中消耗(任务由Web服务器推送)

我想知道最佳做法是为了检测每个微服务集群'是健康的,如何快速失败'在这种情况下整个服务中的一个微服务不可用。

所有服务都位于ha代理的nginx后面 - 它应该是nginx监控所有内容并失败吗?如何检查所有微服务的健康状况?

1 个答案:

答案 0 :(得分:0)

您应该使用Pingometer等外部监控服务。

这使您可以定期设置简单的运行状况检查(HTTP,HTTPS,Ping等),并在节点出现故障,不可用或没有使用正确内容进行响应时接收警报。

在您的联系人中,您可以设置在服务中断时触发的webhook。您可以使用webhook触发故障转移,更改DNS记录等。

我们设置类似的东西并且它运作良好。

您还可以在内部使用某些内容来监控nGinX本身(例如,廉价工作人员+重新生成它们),但这并不能让您知道服务是在外部运行的(就像监控服务一样)。