加入收藏 | 设为首页 | 会员中心 | 我要投稿 宜春站长网 (https://www.0795zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

Linux系统日常管理--监控系统的状态+排查是否正被攻击

发布时间:2019-04-13 21:48:42 所属栏目:Windows 来源:波波说运维
导读:概述 工作中有时领导会说明天有业务,让你去检查下服务器,监控下系统的状态是不是正常的,这时候我们需要查看哪些信息呢?下面从负载、进程、内存、网络、网卡等几个方面来介绍下怎么去监控 1. w查看当前系统的负载 参数说明: 第一行从左面开始显示的信息
副标题[/!--empirenews.page--]

Linux系统日常管理--监控系统的状态+排查是否正被攻击

概述

工作中有时领导会说明天有业务,让你去检查下服务器,监控下系统的状态是不是正常的,这时候我们需要查看哪些信息呢?下面从负载、进程、内存、网络、网卡等几个方面来介绍下怎么去监控>

1. w查看当前系统的负载

linux系统日常管理--监控系统的状态+排查是否正被攻击

参数说明:

第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。

第二行开始以及下面所有的行,告诉我们的信息是,当前登录的都有哪些用户,以及他们是从哪里登录的等等。其实,在这些信息当中,我们最应该关注的应该是第一行中的 ‘load average:’ 后面的三个数值。

  • 第一个数值表示1分钟内系统的平均负载值;
  • 第二个数值表示5分钟内系统的平均负载值;
  • 第三个数值表示15分钟系统的平均负载值。

这个值的意义是,单位时间段内CPU活动进程数。

当然这个值越大就说明你的服务器压力越大。一般情况下这个值只要不超过服务器的cpu数量就没有关系。

2. vmstat 监控系统的状态

linux系统日常管理--监控系统的状态+排查是否正被攻击

上面讲的 w 查看的是系统整体上的负载,通过看那个数值可以知道当前系统有没有压力,但是具体是哪里(CPU, 内存,磁盘等)有压力就无法判断了。通过 vmstat 就可以知道具体是哪里有压力。vmstat命令打印的结果共分为6部分:procs, memory, swap, io, system, cpu. 请重点关注一下r b si so bi bo几列。

2.1、procs 显示进程相关信息

  • r :表示运行和等待cpu时间片的进程数,如果长期大于服务器cpu的个数,则说明cpu不够用了;
  • b :表示等待资源的进程数,比如等待I/O, 内存等,这列的值如果长时间大于1,则需要关注一下了;

2.2、memory 内存相关信息

  • swpd :表示切换到交换分区中的内存数量 ;
  • free :当前空闲的内存数量;buff :缓冲大小,(即将写入磁盘的);
  • cache :缓存大小,(从磁盘中读取的);

2.3、swap 内存交换情况

  • si :由交换区写入到内存的数据量;
  • so :由内存写入到交换区的数据量;

2.4、io 磁盘使用情况

  • bi :从块设备读取数据的量(读磁盘);
  • bo: 从块设备写入数据的量(写磁盘);

2.5、system 显示采集间隔内发生的中断次数

  • in :表示在某一时间间隔中观测到的每秒设备中断数;
  • cs :表示每秒产生的上下文切换次数;

2.6、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 查看系统状态的时候,通常都是使用这样的形式来看的:

# vmstat 1 5

linux系统日常管理--监控系统的状态+排查是否正被攻击

说明:每隔一秒钟打印一次状态,共打印5次。

3. top 显示进程所占系统资源

linux系统日常管理--监控系统的状态+排查是否正被攻击

这个命令用于动态监控进程所占系统资源,每隔3秒变一次。这个命令的特点是把占用系统资源(CPU,内存,磁盘IO等)最高的进程放到最前面。top命令打印出了很多信息,包括系统负载(loadaverage)、进程数(Tasks)、cpu使用情况、内存使用情况以及交换分区使用情况。其实上面这些内容可以通过其他命令来查看,所以用top重点查看的还是下面的进程使用系统资源详细状况。这部分东西反映的东西还是比较多的。

PS:分享下我经常用的一个命令 top -bn1 它表示非动态打印系统资源使用情况,可以用在shell脚本中:

linux系统日常管理--监控系统的状态+排查是否正被攻击

和 top 命令唯一的区别就是,它一次性全部把所有信息输出出来而非动态显示。

4. sar监控系统状态

sar 命令很强大,它可以监控系统所有资源状态,比如平均负载、网卡流量、磁盘状态、内存使用等等。它不同于其他系统状态监控工具的地方在于,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。如果你系统没有安装这个命令,请使用 yum install -y sysstat (或者apt-get install -y sysstat)命令安装。初次使用sar命令会报错,那是因为sar工具还没有生成相应的数据库文件(时时监控就不会了,因为不用去查询那个库文件)。它的数据库文件在 “/var/log/sa/” 目录下,默认保存一个月。因为这个命令太过复杂,所以我只介绍几个。

linux系统日常管理--监控系统的状态+排查是否正被攻击

(编辑:宜春站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读