日常运维 (0413任务)

1. 使用w查看系统负载

linux 日常运维管理技巧

<1> 监控系统状态

w/uptime 查看系统负载:第一行从左到右显示的信息依次为:时间、系统运行时间、登录用户数、平均负载。

日常运维 (0413任务)

第二行依次是:当前登录的用户名及其登录的地址。

系统负载: 三个数字。分别表示,1分钟系统的平均负载值,5分钟系统的平均负载值,15分钟系统的平均负载值。

重点是看第一个值,表示单位时间内使用CPU的活动进程数(在这里其实就是1分钟内),值越大就说明服务器压力越大。这个值只要不超过服务器的CPU数量就没有关系。

日常运维 (0413任务)

日常运维 (0413任务)

cat/proc/cpuinfo 查看CPU核数。查看的是逻辑CPU,不是物理CPU。

如果是0,代表1颗CPU;如果是1,代表2颗CPU.

日常运维 (0413任务)

2 vmstat 监控系统的状态

使用方法:vmstat 1 表示每一秒钟,显示一次。

分为6个部分:procs、memory、swap、io、system和cpu

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: 表示在某一时间间隔内观测到的每秒设备的中断次数。

cs:表示每秒产生的上下文切换次数。

cpu : 显示CPU的使用状态。

us: 显示用户下所花费CPU的时间百分比

sy:显示系统花费CPU的时间百分比

id: 表示CPU处于空闲状态的时间百分比.

wa: 表示I/O等待所占用CPU的时间百分比

st:表示被偷走的CPU所占百分比(一般为0,不用关注)

重点关注:r, b和wa这3列。

日常运维 (0413任务)

3. TOP 命令显示进程所占的系统资源

top命令用于动态监控进程所占的系统资源,每隔3秒一次。它的特点是把占用系统资源(cpu、内存、磁盘I/O)最高的进程放到最前面。

日常运维 (0413任务)

RES : 这一项为进程所占物理内存的大校

%MEM% 为使用内存的百分比。

top -c 可以查看到具体的命令。

日常运维 (0413任务)

4. 用sar 命令监控系统状态

sar 命令很强大,它可以监控系统几乎所有资源的状态,比如平均负载、网卡流量、磁盘状态、内存使用等。

与其他系统状态监控工具不同,它可以打印历史信息,可以显示当天从零点开始到当前时刻的系统状态信息。

使用前,需要安装 yum install -y sysstat

首次安装会提示报错:那是因为如果SAR 后面不跟命令,它会调用保留的一个数据库文件,在/var/log/sa/目录下。这个目录就是放这个工具生成的信息的历史文件目录。因为SAR 有一个特性,会每隔10分钟把记录信息刷一遍,保存在这个目录里。

日常运维 (0413任务)

日常运维 (0413任务)

1. 查看网卡流量 sar -n DEV

日常运维 (0413任务)

打印网卡信息,每隔1秒钟显示一次,显示10次。

日常运维 (0413任务)

IFACE 表示设备名称。

日常运维 (0413任务) 这一列表示每秒进入收取的包的数量。

日常运维 (0413任务) 这一列表示每秒发送出去的包的数量。

日常运维 (0413任务) 这一列表示每秒收取的数据量。

日常运维 (0413任务) 这一列表示每秒发送的数据量。

日常运维 (0413任务)

加上-f 选项查看某一天的网卡流量历史,后面跟文件名。

日常运维 (0413任务)

查看系统的负载情况。

日常运维 (0413任务)

查看磁盘的读写流量情况。

5. 用nload 命令产看网卡流量

系统没有默认安装,需要进行安装,安装方法:

# yum install -y epel-release ; yum install -y nload

日常运维 (0413任务)

SAR17 可以直接看到的文件。

日常运维 (0413任务)

6.监控IO性能

日常运维 (0413任务)

日常运维 (0413任务)

安装sysstat 时,就会安装IOSTAT,它和sar 是同一个包。

日常运维 (0413任务)

这个代表磁盘有多少时间占用CPU。如果这个数值非常大,说明磁盘太差了。

io有问题,可能是服务读写太快,也可能是磁盘有问题。

遇到这种问题,肯定是要先分析原因,看看是磁盘问题,还是服务问题。如果是磁盘问题,肯定是要换磁盘。服务问题,就要看是异常还是正常,异常的话,就需要近一步分析异常的原因,正常的话,那就说明需要扩容了。

日常运维 (0413任务)

iotop 也需要安装。

日常运维 (0413任务)

动态显示IO作业情况

日常运维 (0413任务)

7. 用free 命令查看内存使用状况

free 命令可以查看当前系统的总内存大小以及使用内存的情况。

日常运维 (0413任务)

free 有三行,其中第一行是说明,第二行是内存情况,第三行是交换分区情况。

第一行说明:

total : 内存总大小

used: 真正使用的实际内存大小

free: 剩余物理内存大小(没有被分配,纯剩余)

shared: 共享内存大小,不用关注它。

buff/cache: 分配给buffer 和 cache 的内存总共有多大。

注意点: buffer和cache 都是一部分内存,内存的作用就是缓解cpu和IO(如:磁盘)的速度差距的。数据经过CPU计算,即将要写入磁盘,这是用的内存为buffer;CPU 要计算时,需要把数据从磁盘中读出来,临时先放到内存中,这部分内存就是cache.

available :系统可使用内存有多大,它包含了free. available 是由free这部分内存和buffer/cache 还未被占用的那部分内存组成。

used 那部分内存和buffer/cache 被占用的内存是没有关系的。

available = buffer+cache+free

total = used + free+buffer/cache

free 命令 可以加-m 和 -g (分别以MB和GB为单位)

日常运维 (0413任务)

8. PS命令查看系统进程。

日常运维 (0413任务)

日常运维 (0413任务)

终止(杀死)进程。可以采用KILL PID 进程号。每一个进程都有一个目录。

日常运维 (0413任务)

日常运维 (0413任务)

直接影响系统的负载。

日常运维 (0413任务)

日常运维 (0413任务)

ps aux | grep -c sshd 查看某个进程或者它的数量。

9.查看网络的状态

日常运维 (0413任务)

日常运维 (0413任务)

查看UDP和TCP状态情况

日常运维 (0413任务)

netstat -an 查看所有的状态。

日常运维 (0413任务)

日常运维 (0413任务)

10. 抓包工具: tcpdump

日常运维 (0413任务)

日常运维 (0413任务)

-nn 选项的作用"是让第3列和第4列显示成“IP+端口号”的形式,如果不加-nn选项,则显示"主机名+服务名称".

日常运维 (0413任务)

DDos 攻击命令。 接入专业的防攻击的设备。

日常运维 (0413任务)

可以指定抓包某个网卡的端口。

日常运维 (0413任务)

某台IP设备的22号端口的包。

日常运维 (0413任务)

指定包的数量和存放的文件地址。

日常运维 (0413任务)

日常运维 (0413任务)

安装wireshark 工具,使用tshark 命令。

日常运维 (0413任务)

这个命令类似于web 访问日志。

日常运维 (0413任务)

11. linux 网络相关

日常运维 (0413任务)

当网卡down 输入ifconfig 不显示。ifconfig -a 输入就可以查看到

日常运维 (0413任务)

if down 即停用网卡,if up 启动网卡。

日常运维 (0413任务)

如果在远程登录服务器,当使用ifdown ens33 的话,会导致无法再连接服务器。

这个时候应该使用ifdown ens33 && ifup ens33.停用之后马上启动。

但尽量使用这个命令: systemctl restart network 来重启网卡。

配置网络信息,需要修改配置文件: /etc/sysconfig/network-scripts/ifcfg-xxx

日常运维 (0413任务)

设置多种IP

日常运维 (0413任务)

设置虚拟网卡

日常运维 (0413任务)

查看网卡是否连接,网卡的连接状态。

日常运维 (0413任务)

日常运维 (0413任务)

更改主机名:完了之后重新登录,打一个bash 命令就可以了。

日常运维 (0413任务)

日常运维 (0413任务)

设置DNS。 只要把DNS地址写到配置文件/etc/resolv.conf 文件中。

日常运维 (0413任务)

如果只是临时修改DNS IP地址,直接修改/etc/resolv.conf ; 如果是永久修改,需要修改网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-xxx.

临时解析某个域名。

日常运维 (0413任务)

只在本机生效。

日常运维 (0413任务)

日常运维 (0413任务)

注意点:一个IP后面可以跟多个域名,可以是几十个甚至上百个。

每一行只能有一个IP,也就是说一个域名不能对应多个IP。

如果有多行中出现相同的域名(对应的IP不一样),会按最前面出现的记录来解析

 

本次课题笔记资料:

https://docs.qq.com/doc/DR3dISkdERGtac2VD