監控linux系統狀態

查看系統負載: w/uptime 最後面三個數字表示1分鐘,5分鐘,15分鐘平均有多少個進程佔用CPU 佔用CPU的進程能夠是Running,也能夠是Waiting 某一時刻1顆CPU只能有一個進程在使用其資源 #查看cpu信息:lscpu或cat /proc/cpuinfoios

top命令: top 回車就能夠進入到top界面 每3秒刷新一次 默認按cpu百分比排序,能夠按M鍵按照內存使用率大小排序 按數字1,能夠顯示全部CPU使用率詳情shell

top -bn1 靜態顯示全部進程的狀況,也是按cpu百分比排序 靜態顯示進程信息,方便在shell腳本中使用top命令安全

free命令: free查看內存和swap使用狀況,關注最後一列的available,這個數字是真正剩餘的物理內存大小 free -k -m -g -h服務器

手動增長swap:(廠商爲了不影響磁盤性能,購買雲服務器通常沒有swap空間) dd if=/dev/zero of=/newswap bs=1M count=1000 mkswap /newswap #格式化 chmod 600 /newswap #變動權限(爲了安全) swapon /newswap #掛載網絡

監控磁盤: yum install -y sysstat iostat -dx 1 iostat -dx 1 5 #主要關注最後一列(util)當百分比數值過大,可能磁盤性能出問題了多線程

yum install -y iotop iotop 回車 動態顯示,按IO使用率大小排序tcp

綜合工具,判定瓶頸點: vmstat 1 vmstat 1 10 關注:r、b、si、so、bi、bo、id、wa工具

監控網卡流量: sar -n DEV 1 10 yum install -y epel-release yum install nload nload 回車後查看網卡流量,動態顯示性能

ethtool ens33 mii-tool ens33ui

查看進程: ps aux 、 ps -elf 、 ps -eLf (查看線程)

STAT S Sleep R Running s 父進程 N 低優先級 < 高優先級 + 前臺進程 l 多線程進程 Z 殭屍進程

ls -l /proc/pid/ #查看一個進程的一些詳細信息

查看網絡鏈接情況: netstat -lnp 、netstat -lntp 、 netstat -lntup netstat -an或ss -an (查看tcp通訊狀態,establish/ESTAB表示正通訊,time_wait表示通訊完成還沒斷開)

抓包工具: tcpdump (安裝:yum install -y tcpdump) tcpdump -nn -i ens33 port 80 tcpdump -nn -i ens33 -c 100 -w 1.cap tcpdump -i ens33 -nn not port 22 and not port 80 and not host 192.168.222.1 tcpdump -nn -r 1.cap

wireshark (安裝:yum install -y wireshark) tshark -i ens33 -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri" #wireshark能夠在Windows端安裝,圖形顯示,能夠分析tcpdump抓的.cap文件

補充:

buffer和cached buffer : 這部份內存是從CPU產生即將寫入到磁盤裏去的那部分數據 cached 這部分數據是先從磁盤裏讀出來,而後臨時存到內存裏的那部分數據

相關文章
相關標籤/搜索