Linux日常运维(一)

10.1 监控系统的状态


查看当前系统的负载:w uptime

w命令查看的是系统整体上的负载。

# w
 10:42:38 up 7 min,  1 user,  load average: 0.16, 0.08, 0.06
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.100.1    10:36    6.00s  0.04s  0.02s w

上面,

第1行从左到右显示的信息依次为:时间、系统运行时间、登录用户数、平均负载;
第2行显示的是当前登录的用户及其登录地址等。

uptime命令也可以显示上面第1行的内容:

# uptime
 11:30:06 up 54 min,  1 user,  load average: 0.00, 0.01, 0.05

重点关注load average

第1个数值表示1分钟内系统的平均负载值(该值越大说明服务器压力越大)
第2个数值表示5分钟内系统的平均负载值
第3个数值表示15分钟内系统的平均负载值

一般情况下,第1个值不超过服务器的CPU数量就没问题。

查看服务器的CPU数量:

# cat /proc/cpuinfo

或者这样查看:

[root@localhost ~]# grep -c 'precessor' /proc/cpuinfo
0

在linux中,服务器有2*n个CPU(n为单颗物理CPU上有n核)。如果n是4,则查看/proc/cpuinfo这个文件会显示8段类似信息,最后一段的processor后面会显示为7。


监控系统的状态:vmstat

vmstat命令显示的结果分为6部分:procsmemoryswapiosystemcpu

# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 1556704   2076 168336    0    0    12     1   20   16  0  0 100  0  0

procs——显示进程的相关信息
r(run):表示运行或等待CPU时间片的进程数;
b(block):表示等待资源的进程数,资源指的是I/O、内存等。

memory——显示内存的相关信息
swpd:表示切换到交换分区中的内存数量,单位为KB,该值波动时说明内存不足;
free:表示当前空闲的内存数量,单位为KB;
buff:表示(即将写入磁盘的)缓冲大小,单位为KB;
cache:表示(从磁盘读取的)缓存大小,单位为KB。

swap——显示内存的交换情况
si:表示由交换区写入内存的数据量,单位为KB;
so:表示由内存写入交换区的数据量,单位为KB。

io——显示内存的交换情况
bi:表示从块设备读取数据的量(磁盘→内存),单位为KB;
bo:表示从块设备写入数据的量(内存→磁盘),单位为KB。

system——显示采集间隔内发生的中断次数
in:表示在某一时间间隔内观测到的每秒设备的中断次数;
cd:表示每秒产生的上下文切换次数。

cpu——显示CPU的使用状态
us:表示用户下所花费CPU的时间百分比(通常us<=10比较合适);
sy:表示系统花费CPU的时间百分比(sy与us呈正相关);
id:表示CPU处于空闲状态的时间百分比;
wa:表示I/O等待所占用CPU的时间百分比;
st:表示被偷走的CPU所占的时间百分比(一般为0)。

us + sy + id = 100%

重点关注rbsisobibouswa这几列信息。

vmstat n m表示动态输出,每n秒输出一次,共输出m次。

# 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
 1  0      0 1556356   2076 168376    0    0     6     0   13   11  0  0 100  0  0
 0  0      0 1556356   2076 168376    0    0     0     0   84   61  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   81   70  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   62   55  0  0 100  0  0
 1  0      0 1556340   2076 168376    0    0     0     0   80   73  0  0 100  0  0

可以看到,vmstat 1 5表示每1秒输出一次,共输出5次。

# 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
 1  0      0 1556340   2076 168376    0    0     6     0   13   11  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   85   69  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   68   60  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   60   54  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   77   68  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   67   61  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   69   62  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   73   61  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   67   62  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   73   68  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   67   60  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   60   53  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   69   62  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   68   61  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   72   63  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0    48   44   40  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   29   22  0  0 100  0  0
 0  0      0 1556340   2076 168376    0    0     0     0   41   29  0  0 100  0  0
^Z
[1]+  已停止               vmstat 1

vmstat 1表示每1秒输出一次,且一直输出,除非按Ctrl+Z中止或Ctrl+C结束。


显示进程所占用的系统资源:top/htop

top命令用于动态监控进程所占的系统资源,每3秒刷新一次,默认把占用系统资源(CPU、内存、磁盘I/O等)最高的进程放在最上面。

top - 14:17:19 up  3:41,  1 user,  load average: 0.00, 0.02, 0.05
Tasks: 113 total,   2 running, 111 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1865308 total,  1370480 free,   139216 used,   355612 buff/cache
KiB Swap:  4194300 total,  4194300 free,        0 used.  1532752 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                          
  1811 root      20   0  161944   2200   1548 R   0.3  0.1   0:00.10 top                                              
     1 root      20   0  193492   6592   4128 S   0.0  0.4   0:01.99 systemd                                          
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.02 kthreadd                                         
     3 root      20   0       0      0      0 S   0.0  0.0   0:00.03 ksoftirqd/0                                      
     5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                                     
     6 root      20   0       0      0      0 S   0.0  0.0   0:00.61 kworker/u256:0                                   
     7 root      rt   0       0      0      0 S   0.0  0.0   0:00.37 migration/0                                      
     8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh                                           
     9 root      20   0       0      0      0 S   0.0  0.0   0:00.48 rcu_sched                                        
    10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain                                    
    11 root      rt   0       0      0      0 S   0.0  0.0   0:00.08 watchdog/0                                       
    12 root      rt   0       0      0      0 S   0.0  0.0   0:00.08 watchdog/1                                       
    13 root      rt   0       0      0      0 S   0.0  0.0   0:00.31 migration/1                                      
    14 root      20   0       0      0      0 S   0.0  0.0   0:00.03 ksoftirqd/1                                      
    15 root      20   0       0      0      0 S   0.0  0.0   0:00.34 kworker/1:0                                      
    16 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/1:0H                                     
    17 root      rt   0       0      0      0 S   0.0  0.0   0:00.10 watchdog/2               

上面左上角显示CPU、内存、交换区的使用情况,右边显示任务、负载、开机时间&#

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值