1 w查看当前系统的负载
[root@node69 ~]# w
22:26:22 up 5:51, 2 users, load average: 0.59, 0.24, 0.12
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root :0 :0 2011月17 ?xdm? 6:29 0.14s gdm-session-worker [pa
root pts/0 :0 22:25 6.00s 0.27s 0.04s w
第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。第二行开始以及下面所有的行,告诉我们的信息是,当前登录的都有哪些用户,以及他们是从哪里登录的等等。
‘load average:’---系统负载------ 后面的三个数值
第一个数值表示1分钟内系统的平均负载值;第二个数值表示5分钟内系统的平均负载值;第三个数值表示15分钟系统的平均负载值
如何查看服务器有几个cpu?
查看CPU逻辑数量,可以在/proc/cupinfo中查看,processor的值+1,就是逻辑CPU的数量:
[root@node69 ~]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz
stepping : 7
microcode : 0x17
cpu MHz : 2095.202
2 ------ vmstat 监控系统的状态
[root@node69 ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
3 0 0 740628 1076 557172 0 0 24 5 73 127 2 1 97 1 0
vmstat各指标含义:
r :表示运行和等待cpu时间片的进程数,如果长期大于服务器cpu的个数,则说明cpu不够用了;
b :表示等待资源的进程数,比如等待I/O, 内存等,这列的值如果长时间大于1,则需要关注一下了
si :由交换区进入内存的数量;
so :由内存进入交换区的数量;
bi :从块设备读取数据的量(读磁盘);
bo: 从块设备写入数据的量(写磁盘);
wa :表示I/O等待所占用cpu时间百分比.
[root@node69 ~]# vmstat 1 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
2 0 0 740496 1076 557204 0 0 23 5 73 126 2 1 97 1 0
0 0 0 740488 1076 557204 0 0 0 0 141 234 8 1 91 0 0
0 0 0 740488 1076 557204 0 0 0 0 162 241 11 2 87 0 0
1 0 0 740488 1076 557204 0 0 0 0 156 219 8 2 90 0 0
0 0 0 740488 1076 557204 0 0 0 0 147 203 9 3 88 0 0
[root@node69 ~]#
表示,每隔一秒钟打印一次状态,共打印5次
[root@node69 ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
3 0 0 740604 1076 557204 0 0 23 5 73 126 2 1 97 1 0
1 0 0 740480 1076 557204 0 0 0 0 167 309 11 1 88 0 0
0 0 0 740472 1076 557204 0 0 0 0 192 268 11 3 86 0 0
1 0 0 740472 1076 557204 0 0 0 0 195 286 9 2 89 0 0
0 0 0 740480 1076 557204 0 0 0 0 145 218 9 1 90 0 0
0 0 0 740476 1076 557204 0 0 0 0 218 258 13 3 84 0 0
1 0 0 740464 1076 557204 0 0 0 0 471 513 24 6 69 0 0
c 0 0 0 740464 1076 557204 0 0 0 0 500 480 33 6 61 0 0
1 0 0 740472 1076 557204 0 0 0 0 179 290 8 1 91 0 0
0 0 0 740464 1076 557204 0 0 0 0 313 418 14 3 83 0 0
^C
[root@node69 ~]#
表示每隔1秒打印一次状态,一直打印,除非我们按 Ctrl + c 结束
3-----top 显示进程所占系统资源
top - 22:42:41 up 6:07, 2 users, load average: 0.12, 0.04, 0.05
Tasks: 162 total, 2 running, 160 sleeping, 0 stopped, 0 zombie
%Cpu(s): 9.1 us, 1.7 sy, 0.0 ni, 89.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1867264 total, 737176 free, 571692 used, 558396 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 1072968 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2917 root 20 0 1502684 191108 49572 S 5.0 10.2 4:30.95 gnome-shell
2010 root 20 0 220084 30368 10552 S 3.3 1.6 1:12.64 Xorg
8981 root 20 0 569692 23132 14260 S 1.0 1.2 0:05.61 gnome-terminal-
2876 root 20 0 1093960 24088 15860 S 0.7 1.3 0:02.48 gnome-settings-
3026 root 20 0 377664 18272 14528 S 0.7 1.0 0:29.18 vmtoolsd
9191 root 20 0 157708 2268 1576 R 0.7 0.1 0:00.34 top
569 root 20 0 302636 6228 4804 S 0.3 0.3 0:32.30 vmtoolsd
这个命令用于动态监控进程所占系统资源,每隔3秒变一次。这个命令的特点是把占用系统资源(CPU,内存,磁盘IO等)最高的进程放到最前面。top命令打印出了很多信息,包括系统负载(loadaverage)、进程数(Tasks)、cpu使用情况、内存使用情况以及交换分区使用情况
RES 这一项为进程所占内存大小,而 %MEM 为使用内存百分比。在 top状态下,按 “shift + m”, 可以按照内存使用大小排序。按数字 ‘1’ 可以列出各颗cpu的使用状态。
[root@node69 ~]# top -bn1
top - 22:44:50 up 6:09, 2 users, load average: 0.01, 0.03, 0.05
Tasks: 162 total, 1 running, 161 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.8 us, 0.6 sy, 0.0 ni, 96.7 id, 0.8 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1867264 total, 737440 free, 571428 used, 558396 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 1073232 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
9221 root 20 0 157572 2076 1508 R 5.9 0.1 0:00.03 top
top -bn1 它表示非动态打印系统资源使用情况,可以用在shell脚本中
4-------- sar监控系统状态
没有这个命令,使用yum install -y sysstat
命令很强大,它可以监控系统所有资源状态,比如平均负载、网卡流量、磁盘状态、内存使用等等。它不同于其他系统状态监控工具的地方在于,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息
初次使用sar命令会报错,那是因为sar工具还没有生成相应的数据库文件(时时监控就不会了,因为不用去查询那个库文件)。它的数据库文件在 “/var/log/sa/” 目录下,默认保存一个月
查看网卡流量 sar -n DEV
[root@node69 ~]# sar -n DEV
Linux 3.10.0-514.el7.x86_64 (node69) 2017年11月27日 _x86_64_ (1 CPU)
22时20分01秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
22时30分01秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时30分01秒 virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时30分01秒 virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时30分01秒 ens33 0.23 0.00 0.01 0.00 0.00 0.00
rxpck/s 表示每秒进入收取的包的数量,
txpck/s 表示每秒发送出去的包的数量,
rxbyt/s 表示每秒收取的数据量(单位Byte),
txbyt/s表示每秒发送的数据量
sar -n DEV 1 3 每隔1秒钟显示一次网卡流量,显示3次
[root@node69 ~]# sar -n DEV 1 3
Linux 3.10.0-514.el7.x86_64 (node69) 2017年11月27日 _x86_64_ (1 CPU)
22时51分53秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
22时51分54秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时51分54秒 virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时51分54秒 virbr0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时51分54秒 ens33 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时51分54秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
22时51分55秒 lo 0.00 0.00 0.00 0.00 0.00 0.00
[root@node69 ~]# sar -n DEV -f /var/log/sa/sa27
Linux 3.10.0-514.el7.x86_64 (node69) 2017年11月27日 _x86_64_ (1 CPU)
22时20分01秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
22时30分01秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时30分01秒 virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
22时30分01秒 virbr0 0.00 0.00 0.00 0.00 0.00 0.00
可以查看指定文件的数据内容:sar -n DEV -f /var/log/sa/sa27
5------ nload命令
需要安装:yum install -y nload
Device ens33 [192.168.161.128] (1/4): 显示的网卡名称和IP
Curr:流量当前值;Avg:流量平均值;
Min:流量最小值;Max:流量最大值;
Ttl:所有总量的值