Linux资源占用监控
2020-07-05 本文已影响0人
大数据阶梯之路
一、Linux资源监控常用4个命令
-
top命令:查看系统资源使用情况
演示:在linux机器上输入命令,top -H -b -d 1 -n 200 > top.txt
,表示每隔1秒统计一次,共200次,显示线程细节,并保存到top.txt中。可使用cat top.txt
命令查看文件内容,信息介绍如下,注意查看信息介绍的时候对比下图:
前半部分是系统统计信息,后半部分是进程信息。
第一部分是系统统计信息:
从左到右依次表示:系统当前时间,系统运行时间,当前登录用户数。load average表示系统的平均负载,即任务队列的平均长度,这三个值分别表示1分钟,5分钟,15分钟到现在的平均值。
第二行是进程统计信息,分别表示正在运行的进程数,睡眠进程数,停止的进程树,僵尸进程树。
第三行表示CPU统计信息,us表示用户空间CPU占用率,sy表示内核空间CPU占用率,ni表示用户进程空间改变过优先级的进程CPU的占用率,id表示空闲CPU占用率,wa表示等待输入输出的CPU时间百分比,hi表示硬件中断请求,si表示软件中断请求。
Mem行中依次表示物理内存总量,已使用物理内存,空闲物理内存,内核缓冲使用量。
Swap行依次表示交换区总量,空闲交换区大小,缓冲交换区大小。
第二部分是进程信息区,显示了系统内各个进程的资源使用情况,字段含义如下:
PID:进程id
USER:进程所有者的用户名
PR:优先级
NI:nice值,负值表示高优先级,正值表示低优先级
%CPU:上次更新到现在的CPU时间占用百分比
TIME+:进程使用的CPU时间总计,单位1/100秒
%MEM:进程使用的物理内存百分比
VIRT:进程使用的虚拟内存总量,单位kb,VIRT=SWAP+RES
RES:进程使用的,未被换出的物理内存大小,单位kb,RES=CODE+DATA
SHR:共享内存大小,单位kb
COMMAND:命令名/命令行
图片.png
图片.png
-
uptime命令:简单查看系统运行了多长时间
演示:在linux机器输入命令,uptime
,如下信息显示,当前系统时间是00:37:08 ,运行了6天,一个用户
图片.png -
vmstat命令:主要用于监控系统内存使用情况
演示:在linux机器输入命令,vmstat 3 2
,表示每隔3秒统计一次,共统计2次,主要有进程、内存、swap、io、中断和进程切换、cpu 6个信息
图片.png -
pidstat命令:查看磁盘使用情况
如下是信息介绍,对应看图
kB_rd/s: 每秒进程从磁盘读取的数据量(以kB为单位)。
kB_wr/s: 每秒进程向磁盘写的数据量(以kB为单位)。
kB_ccwr/s:每秒进程被取消向磁盘写的数据量(以kB为单位)。
Command: 拉起进程对应的命令。
图片.png
二、Linux测试端口连通性
我使用的是centOS 7版本,由于centOS 7与centOS 6版本升级时系统做了改动,centOS 7版本的系统nc命令取消了-z的参数,原来-z参数是扫描目标端口是否打开,tcp三次握手成功则ok,现在取消-z参数设置,那么我们可以把测试端口连通性命令现在改为了nc -w 1 ip地址 端口号 < /dev/null && echo "tcp port ok"
,如果tcp三次握手成功就输出ok,失败就输出connection refused。
三、Linux查看端口命令
附学习参考文章:https://www.cnblogs.com/ruanraun/p/port.html
netstat -ntlp //查看当前所有tcp端口
netstat -ntulp | grep 80 //查看所有80端口使用情况
netstat -lanp //查看服务器上面有哪些服务和端口
ps -ef | grep mysqld //查看一个服务有几个端口,比如mysqld