简单的统计服务器的每个服务的内存使用 CPU 的使用率 内存剩余大小
写了简单的脚本 可能不是很准确,下面写出来供大家参考,那位高人有更好的方法请共享出来哈
脚本具体的内容:
#!/bin/bash
#system resources statistic script.
cpu_use=`ps aux | awk ‘{print $3}’ |awk ‘BEGIN{sum=0}{sum+=$1}END{print sum}’`
echo ==========================
echo CPU_USE:$cpu_use %
#上面是统计CPU的使用率
echo ==========================
echo APACHE_MEM_USE:`ps aux | grep httpd | grep -v “grep httpd” |awk ‘{print $6}’ |awk ‘BEGIN{sum1=0}{sum1+=$1}END{print sum1/1024}’` M
echo ==========================
#上面是统计apache的的内存使用 只是运行mysql 的web管理
NDB_MEM_USE=`ps aux | grep ndb | grep -v “grep ndb” |awk ‘{print $6}’ |awk ‘BEGIN{sum2=0}{sum2+=$1}END{print sum2/1024}’`
SQL_MEM_USE=`ps aux | grep mysql | grep -v “grep mysql” |awk ‘{print $6}’ |awk ‘BEGIN{sum3=0}{sum3+=$1}END{print sum3/1024}’`
echo MYSQL_MEM_USE:`echo $NDB_MEM_USE $SQL_MEM_USE |awk ‘/./{print $1 + $2}’` M
#这个是统计 mysql 群集结点的内存使用
echo ==========================
echo SYS_MEM_FREE:`free -m |awk ‘/Mem/{print $4}’` M
echo ==========================
可以把脚本做成一个计划任务每2小时执行一次, 并发送邮件给你自己的邮箱中
下面是输出结果:
==========================
CPU_USE:0.1 %
==========================
APACHE_MEM_USE:87.0117 M
==========================
MYSQL_MEM_USE:1923.05 M
==========================
SYS_MEM_FREE:5205 M
==========================