日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

内网集群 无法通信_记一次集群内无可用http服务问题排查

發布時間:2024/9/19 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 内网集群 无法通信_记一次集群内无可用http服务问题排查 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

記一次集群內無可用http服務問題排查

1.摘要

前一陣子發現服務會有偶發的服務不可用的情況,記錄一下這個問題的排查過程。

現象是這樣的:每天到了某個時間點,就會出現服務不穩定的情況,偶發接口調不通。

線上業務使用了lvs-nginx-tomcat三層結構,首先查看tomcat監控,沒有什么特別異常的情況,響應時間和錯誤碼沒發現有什么異常,CPU、IO等等指標也都正常。

再查看nginx上的監控,發現在某個時刻這個服務的5xx報錯突增,大概7、8秒之后又恢復了。

繼續在nginx服務器上找線索,發現Nginx在那個時間點會出現報錯:

1

2

2015/12/24 10:30:38 [error] 13433#0: check time out with peer: 10.79.40.1xx:80

線上nginx會每秒探測后端所有服務器的某個uri,如果返回的http狀態碼是200則認為正常,連續3次探測失敗則摘除探測失敗的服務器,直到探測成功再恢復。

從日志中可以發現nginx在出問題的時間點對于后端所有tomcat的探測請求都出現了問題,導致摘除了所有后端服務器,在這段時間里請求會報502異常。

從nginx上的日志可以看到探測請求沒有返回,那么請求實際發到tomcat了沒有?線上業務中的探測頻率是1s/次,于是到tomcat的訪問日志里查找線索,過濾一個nginx對tomcat的所有探測請求:

可用看出從7:00:10-7:00:40左右的探測請求是有丟失的。

前端機的負載并不高,于是我們第一時間認為這可能是nginx到tomcat服務器的網絡有問題。統計了一下線上日志,出問題的機器集中在某個網段,并且集中在一天之內的某幾個時間點,這似乎也進一步印證了我們的猜測。

但到此為止僅僅是懷疑,為了證明我們的猜測,我們嘗試去復現問題。我們在nginx上部署了一個簡單的腳本,用curl命令對同樣的tomcat發起每秒一次的請求,但結果比較詭異:

監測方式

監測地址

http版本

頻率

所在服務器

目的服務器

問題

nginx

/

1.0

1s

nginx

tomcat

curl

/

1.0

1s

nginx

tomcat

這跟我們之前的猜測不一致,沒辦法,嘗試在兩端抓包查看網絡狀況,

tomcat抓包:

nginx抓包:

tomcat服務器在7:00:10已經接收了請求并且回復了ACK,7:00:13 nginx超時主動斷開連接,7:00:15時tomcat才返回數據,網絡的問題被排除了。

http://www.kuqin.com/shuoit/20160201/350382.html

http://chenpipi.blog.51cto.com/8563610/1682450

本文轉自Tenderrain 51CTO博客,原文鏈接:http://blog.51cto.com/tenderrain/1901963,如需轉載請自行聯系原作者

總結

以上是生活随笔為你收集整理的内网集群 无法通信_记一次集群内无可用http服务问题排查的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。