[root@Ask-02 ~]# wlinux
linux管理员经常使用的命令w,该命令显示的信息很丰富,第一行从左至右显示的信息一次为:时间、系统运行时间、登陆用户数、平均负载,这些数据里最应该关注当为load average后的3个数值。
第一个数值表示1分钟内系统的平均负载值,第二个数值表示为5分钟内系统的平均负载值,第三个表示15分钟内系统的平均负载值。这里着重看第一个值,它表示单位时间段内使用CPU的活动进程数,值越大就说明服务器压力越大,通常状况下只要这个值不超过服务器的CPU数量就没有关系。若是服务器CPU数量为8,那么值小于8就说明当前服务器没有压力,不然就要关注一下。能够经过如下方式查看服务器有几个CPU;数据库
[root@Ask-02 ~]# cat /proc/cpuinfo缓存
使用vmstat命令监控系统的状态服务器
[root@Ask-02 ~]# vmstatide
w命令能够经过数值查看当前系统有没有压力,但没法判断具体是哪里有压力,这是就能够经过vmstat命令答应结果来查看,显示的结果共分为六部分:procs、memory、swap、io、system、cpu。这里咱们重点以下信息;工具
procs显示进程的相关信息。 r(run):表示运行或等待cpu时间片的进程数。不要误认为等待cpu时间片意味着这个进程没有运行,实际上某一刻1个cpu只能有一个进程占用,其余进程只能派对等着,此事这些派对等待cpu资源的进程依然是运行状态。该数值若是长期大雨服务器cpu的个数,则说明cpu资源不够用了。 b(block):表示等待资源的进程数,这个资源指的是I/O、内存等。该数值大于1,则须要关注一下了。
memory显示内存相关的信息。 swpd:表示切换到交换分区中的内存数量,单位为KB free:表示当前空闲的内存数量,单位为KB buff:表示(即将写入磁盘的)缓冲大小,单位为KB cache:表示(从磁盘中读取的)缓存大小,单位为KB
swap显示内存的交换状况 si:表示由交换区写入内存的数据量,单位为KB so:表示由内存写入交换区的数据量,单位为KB
io显示磁盘的使用状况 bi:表示从块设备读取数据的量(读磁盘),单位为KB bo:表示从块设备写入数据的量(写磁盘),单位为KB
system显示采集间隔内发生的中断次数。 in:表示在某一时间间隔内观测到的每秒设备的中断次数 cs:表示每秒产生的上下文切换次数
cpu显示CPU的使用状态 us:显示用户下所花费cpu的时间百分比 sy:显示系统花费cpu的时间百分比 id:表示cpu处于空闲状态的时间百分比 wa:表示I/O等待全部占用cpu的时间百分比 st:表示被偷走的cpu所占百分比(通常都为0,不用关注
以上常常须要关注的r、b和wa这三列。io部分的bi和bo也是要常常参考的对象,若是磁盘io压力很大,这两列的数值会比较高。另外,当si和so两列的数值比较高而且不断变化时,说明内存不够了,内存中的数据频繁交换到交换分区中,这每每对系统性能影响极大。性能
使用vmstat查看系统状态是,经常使用都是以下形式ui
[root@Ask-02 ~]# vmstat 1
或者
[root@Ask-02 ~]# vmstat 1 5code
第一条命令表示每隔一秒输出一次状态且一直输出,除非按ctrl+C键结束,后面一条命令表示每隔一秒输出一次状态,共输出5次对象
用top命令显示进程所占的系统资源
[root@Ask-02 ~]# top
top命令用于动态监控进程所占的系统资源,每隔3秒变一次。它的特色是把占用系统资源最高的进程放到最前面,用top重点查看的如下进程使用系统资源的详细情况,须要注意的有%CPU、%MEM和COMMAND这几项所表明的意义,RES这一项为进程所占的内存大小,而%MEM这一项为使用内存的百分比,在top状态下,按Shift+m键能够按照内存使用大小排序。按数字1能够列出全部核CPU的使用状态,按q键能够退出top。
top -bn1命令一次性输出全部信息而非动态显示。
sar命令很强大,它能够监控系统几乎全部资源的状态,若是系统还不能执行这条命令,则须要先安装这条命令
[root@Ask-02 ~]# yum install -y sysstat
与其它系统状态监控工具不一样,它能够打印历史信息,能够显示当天从零点开始到当前时间的系统状态信息。首次使用sar命令会报错,那是应为sar工具尚未生成相应的数据库文件,它的数据库文件在/var/log/sa/目录下。经常使用的有两个方面
查看网卡流量 sar -n DEV
[root@Ask-02 ~]# sar -n DEV
这条命令会把当天记录的网卡信息打印出来,每一个10分钟记录一次,IFACE这一列表示设备名称,rxpck/s这一列表示每秒进入收取的包的数量,txpch/s这一列表示每秒发送出去的包的数量,rxKB/s这一列表示每秒收取的数据量(单位为KB),txKB/s这一列表示每秒发送的数据量。
若是哪天服务器丢包很是严重,那么就应该查一下网卡流量是否异常,若是rxpck/s那一列的数值大于4000,或者rxKB/s那一列的数值大于5000000,颇有多是被***了,正常的服务器网卡流量不会这么高,除非本身在复制数据。
实时查看网卡流量方法以下;
[root@Ask-02 ~]# sar -n DEV 1 5
另外也可使用-f选项查看某一天的网卡流量历史,后面跟文件名,在Red Hat或者Centos发行版中,sar的库文件必定在/var/log/sa/目录下
[root@Ask-02 ~]# ls /var/log/sa/
sa02 sa03 sa04 sa05 sa06 sa08 sa09 sa10 sa15 sa16 sa17 sa19 sa23 sar02 sar05 sar15
[root@Ask-02 ~]# sar -n DEV -f /var/log/sa/sa10
查看历史负载 sar -q
这个命令有助于咱们查看服务器在过去某个时间的负载情况。
[root@Ask-02 ~]# sar -q
使用nload命令查看网卡流量
nload工具是一个更直观查看网卡流量的工具,系统默认没有安装这个工具,须要手动安装
[root@Ask-02 ~]# yum install -y epel-release;yum install -y nload
[root@Ask-02 ~]# nload
最上面一行为网卡的名字,以及ip地址,按左右方向键能够查看其它的网卡流量。输出结果分为两部分,Incoming为进入网卡的流量,Outgoing为网卡出去的流量,这里关注Curr那行的数据,按q退出。