Nginx反向代理后端多节点下故障节点的排除思路

时间:2023-03-08 16:38:46

仔细想来,其实是个非常简单的问题;开发和运维觉得两个后端节点跑起来压力太大了,就扩充了两个新的后端节点上去,这一加就出问题了,访问时页面间歇性丢失,这尼玛什么情况...想了半天没思路,查了Nginx的配置,没发现问题,查询后端的错误日志,也是一头雾水。

先贴出代理服务器的配置(upstream部分):

upstream api {
server 192.168.1.10:9109;
server 192.168.1.11:9109;
server 192.168.1.12:9109;
server 192.168.1.13:9109;
}

其中1.12和1.13两个节点是新加上去的,考虑到这样配置的nginx代理是默认的轮询访问,干脆用有故障的服务器的故障日志去筛选,看别的节点上是否有相同的日志,依次查询完下来,发现只有12节点上有错误日志,这就很清晰了,是这个节点故障导致的访问页面时间歇性歇菜,干脆先把这个节点踢出去吧。

修改完代理的配置,重启了nginx服务,终于好了,明天检查这个节点上的服务,看什么情况造成的节点访问异常。

总结:如果今后出现类似的比如nginx、lvs等负载均衡的时候,可以考虑查看节点的办法去判断哪个节点出问题了,比如错误日志;也可以直接使用url访问测试,看究竟是否可用。这次故障,忘记直接使用url访问测试故障了,真是事多丢脑子!