1. 程式人生 > >Linux/Centos伺服器頻寬異常跑滿的排查解決辦法

Linux/Centos伺服器頻寬異常跑滿的排查解決辦法

客服反饋伺服器頻寬滿。之前每天10M就夠了,現在20/30都不夠,而且是升級到多少,就滿多少,包括晚上3/4點都是一直滿。

首先需要確定是哪一張網絡卡的頻寬跑滿

可以通過sar -n DEV 1 5命令來獲取網絡卡級別的流量圖,命令中 1 5 表示每一秒鐘取 1 次值,一共取 5 次。

命令執行後會列出每個網絡卡這 5 次取值的平均資料,根據實際情況來確定頻寬跑滿的網絡卡名稱。阿里雲伺服器,預設情況下 eth0 為內網網絡卡,eth1 為外網網絡卡。

如上圖所示,發現確實是eth1也就是外網網絡卡佔用了絕大部分的流量。

接下來使用 iftop 工具排查具體佔用流量的IP和埠

1、伺服器內部安裝 iftop 流量監控工具:

	yum install iftop -y

2、伺服器外網頻寬被佔滿時,如果通過遠端無法登陸,可通過阿里雲終端管理進入到伺服器內部,執行下面命令檢視流量佔用情況:

	iftop -i eth1 -P

注:-P 引數會將請求服務的埠顯示出來,也就是說是通過伺服器哪個埠建立的連線,看內網流量執行 iftop -i eth0 -P 命令。

發現大量IP都是自己的伺服器IP,自己在請求自己,這是怎麼回事呢

通過訪問日誌去看一下原因,發現都是自己的網站在請求,排查後,是自己的程式碼問題

參考文件: