機器高負載告警一般是cpu負載在99-100%,同時伴有大量的網路出包和入包量,常見的原因是機器在某個時段進行log,資料等備份操作。
1,首先,執行top -d 1,檢視cpu的負載情況和對應的繁忙的程序列表,如果要檢視到各個核的cpu負載,只需按1即可切換到該檢視。
該命令的使用具體請看<
如下圖:
可以看出,pid=15514的程序名字為rsync在進行同步檔案操作,佔cpu 99%
2, 檢視該程序(pid=15514)的具體開啟了哪些io操作(包括網路socket),執行命令
lsof -p 15514
注意該命令需要root許可權,可以通過su命令切換到root使用者。
可以看出,在該時刻,程序rsync在進行非常頻繁的檔案備份操作,並且是從ip字尾是102的機器,同步到ip字尾是87的機器,此時正在讀取的檔案是/data/log/sch_inorder_insert-1.0/back/201003.tar.gz
這個是在指定的時間點進行現場抓包,也可以通過檢視/var/log/messages 系統流水進行檢視connection from來自哪個ip的請求:
需要root密碼
cat /var/log/messages | grep "connection from"
一般可以看出在系統通過ssh連線到該機器的rsync同步操作,但若對應的rsync不是通過ssh機制,則無法在該log中看到,這時候可以需要現場抓包了。
高負載伺服器效能分析命令
1.檢視埠總連線書 quote netstat an grep 9003 grep established wc l quote 2.輸出每個ip的連線數,以及總的各個狀態的連線數 quote netstat n grep 9003 awk tcp end printf 20s s n total ...
關於高負載伺服器Kernel的TCP引數優化
net.ipv4.tcp mem 核心分配給tcp連線的記憶體,單位是page,1 page 4096 bytes,可用命令檢視 getconf pagesize 4096 net.ipv4.tcp mem 196608 262144 393216 第乙個數字表示,當 tcp 使用的 page 少於...
高負載web伺服器linux核心引數調整
參考 linux系統中 sysctl 引數優化 tcp 高階選項設定 伺服器在高併發時,會建立大量連線,這就需要設定tcp相關引數來提供伺服器效能。1.檔案描述符最大數調整。修改 vi etc security limits.conf 值 在裡面新增一行 nofile 65535 儲存重啟,再用命令...