1. 程式人生 > 其它 >CentOS7檢視伺服器利用率

CentOS7檢視伺服器利用率

檢視伺服器利用率

指令碼內容

#!/bin/bash
#獲取CPU資訊
cpu() {
usage=$(vmstat |awk '{if(NR3)print $13+$14}')
iowait=$(vmstat |awk '{if(NR
3)print $16}')
echo "CPU - 使用率:${usage}% ,等待磁碟IO響應使用率:${iowait}%"
}
#獲取記憶體資訊
memory() {
total=$(free -m |awk '{if(NR2)printf "%.1f",$2/1024}')
used=$(free -m |awk '{if(NR
2)printf "%.1f",($2-$NF)/1024}')
available=$(free -m |awk '{if(NR2)printf "%.1f",$NF/1024}')
echo "記憶體 - 總大小:${total}G , 已使用:${used}G , 剩餘:${available}G"
}
#獲取磁碟資訊
disk() {
fs=$(df -h |awk '/^/dev/{print $1}')
for p in $fs ; do
mounted=$(df -h |awk -v p=$p '$1

p{print $NF}')
size=$(df -h |awk -v p=$p '$1p{print $2}')
used=$(df -h |awk -v p=$p '$1
p{print $3}')
used_percent=$(df -h |awk -v p=$p '$1==p{print $5}')
echo "硬碟 - 掛載點:$mounted , 總大小:$size , 已使用:$used , 使用率:$used_percent"
done
}
#獲取tcp連線狀態
tcp_status() {
summary=$(netstat -antp|awk '{a[$6]++}END{for(i in a)printf i":"a[i]" "}')
echo "TCP連線狀態 - $summary"
}
cpu
memory
disk
tcp_status

測試結果