简介有时候当服务器出现流量出入过高的时候,需要去如何排查是哪些进程在使用,本文主要记录如何通过相关命令来进行排查。
1、基本知识
1.1、iftop介绍
一般涉及到流量的监控,经常会使用iftop,首先安装iftop:
yum install iftop -y
使用iftop命令,界面如下:
界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。中间的<= =>这两个左右箭头,表示的是流量的方向。
界面相关参数说明:
- TX:发送流量
- RX:接收流量
- TOTAL:总流量
- cumm:运行iftop以来的总流量
- peak:峰值流量
- rates:分别表示过去 2s 10s 40s时间内网卡总的平均流量
iftop相关命令参数可以使用-h进行查看,这里主要说一个查看网卡有哪些IP和端口有流量流入流出:
iftop -i ensxxx -n -P #ensxxx表示网卡名称,可以通过ifconfig查看
1.2、查看某个端口被什么进程占用
#方式1 lsof -i :22 #22端口被哪个进程占用 #方式2 netstat -lnp|grep 7000 #7000端口被哪个进程占用
下面,根据我们以上的基本知识来进行排查
2、查看网卡流量流入流出信息
通过ifconfig查看某个网卡流量流入流出量:
知道ens33网卡流量流入流出量很大,通过iftop查看网卡有哪些IP和端口在使用:
iftop -i ens33 -n -P
从上面可以看出有27017、ssh、redis这些服务有流量流入流出信息。
3、查看某个端口对应的进程或服务
[root@localhost ~]# lsof -i :27017 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME docker-pr 21774 root 4u IPv6 235581 0t0 TCP *:27017 (LISTEN) [root@localhost ~]# lsof -i :redis COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME docker-pr 21746 root 4u IPv6 233002 0t0 TCP *:redis (LISTEN) [root@localhost ~]# lsof -i :ssh COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 940 root 5u IPv4 26047 0t0 TCP *:ssh (LISTEN) sshd 940 root 7u IPv6 26049 0t0 TCP *:ssh (LISTEN) sshd 24890 root 5u IPv4 270713 0t0 TCP localhost.localdomain:ssh->192.168.193.1:52755 (ESTABLISHED) sshd 24907 root 5u IPv4 270713 0t0 TCP localhost.localdomain:ssh->192.168.193.1:52755 (ESTABLISHED)
从以上可以了解到有什么样的进程在跑流量了,这就是大致的排查思路。
4、延伸阅读
网络流量实时监控工具nload:nload是个很好用的一个工具,功能也很强.只是相对单一,只能查看总的流量,不能像iptraf那样,可针对IP,协议等可以实时地监控网卡的流量,分Incoming,Outgoing两部分,也就是流入与流出的流量。同时统计当前,平均,最小,最大,总流量的值,使人看了一目了然。
安装:
yum install -y nload
nload的显示信息也是支持设置显示单位的。我们可以加入-u 参数,其后可以跟h(表示自动格式化为易读的单位)、b(表示为Bit/s)、k(表示为KBit/s)、m(表示为MBit/s),g(表示为GBit/s)。例如下面我们输入如命令"nload -u m",就是以MB为单位。
默认上边Incoming是进入网卡的流量;
默认下边Outgoing是网卡出去的流量;
默认右边(Curr当前流量)、(Avg平均流量)、(Min最小流量)、(Max最大流量)、(Ttl流量统计)
基本使用:
nload
通过上下键切换不同的网卡设备。
查看某个网卡,并设置查看显示单位:
nload 网卡名称 -u 以什么单位显示
如:
nload ens33 -u m
标签:nload,查看,Centos,iftop,流量,网卡,排查,root From: https://www.cnblogs.com/sunlong88/p/17650360.html