7.11

1、监控io性能

  在安装sysstat时会安装iostat命令,其余sar属于同一个包

  iostat 查看磁盘使用

  iostat 1每秒显示一次磁盘使用状况

  iostat -x,需要关注%util,表示磁盘占用cpu的时间百分比,如果这个数值较大,表明磁盘的io很差,如果读写速度不大,而这个值较大,则表明磁盘可能出现故障

  iotop:需要执行yum install -y iotop进行安装

  iotop命令也是动态显示,根据进程使用io的百分比进行排序

2、free命令

  free查看内存使用情况,centos7的显示结果与centos6的显示结果是不同的,相对于centos6,centos7的显示结果更加直观,第一列内存总大小,单位是kb,第二列是使用的大小,第三列是剩余的大小,第四列是共享的大小,第五列是buff/cache大小,第六列是可用的大小,buff+used+free=total,

  buff为缓冲,cache为缓存,数据从磁盘到cpu,经过内存时占用的空间为cache,cpu将数据放入磁盘时,经过内存占用的空间为buff

  此命令输出需要关注available的值

  free -m指定显示单位为兆

  free -h在数值后面显示单位

 3、ps命令

  查看进程的命令

  pu aux查看系统所有的进程,第一列为进程用户,第二列为进程PID,VSZ虚拟内存,RSS物理内存,stat进程状态,有以下几种类型

  D:不能中断的进程

  R:run状态的进程

  S:sleep状态的进程

  T:暂停状态的进程

  Z:僵尸进程

  +:前台进程

  <:高优先级的进程,CPU先处理高优先级的进程

  N:低优先级进程

  L:内存在被锁了内存分页,不常见

  s:主进程,如nginx会有一个主进程和多个子进程,主进程是由root用户启用,而子进程是由普通用户启用

  l(小写的L):多线程进程,一个进程有多个线程,这些线程共享一块内存空间

  ps aux |grep nginx 查看系统下nginx的进程状态

  ps -elf输入结果与pa aux的结果相似

  使用kill PID停止相应的进程:

  ls -l /proc/505可以查看PID为505的进程的启动目录

4、查看网络状态

  netstat 查看网络状态

  netstat -lnp查看监听端口,可以查看服务器都监听了哪些端口,socket文件用于同一台服务器中两个进程间通信

   netstat -lnp的输出结果中也可以查看有哪些socket文件

  netstat -ltnp查看tcp监听端口状态

  netstat -ltunp查看tcp和udp端口状态

  netstat -na可以查看tcp状态

  netstat -an | awk '/^tcp / {++sta[$NF]} END  {for(key in sta) print key,"\t",sta[key]}'查看各种tcp状态的数量,需要关注established状态的数值,如果该值过大,则表示系统处于繁忙状态,几千以内都是可以接受

  ss -na与netstat命令相似

  ss -na |grep -i listen查看处于listen状态的端口,但是此命令不会显示进程名称,而netstat会显示进程名称和PID

5、linux下抓包

  tcpdump用于linux系统抓包,执行yum install -y tcpdump进行安装

  tcpdump -nn -i ens33:使用-i选项指定网卡并进行抓包,-nn中第一个n表示主机用IP的形式显示,如果不加则会显示主机名,第二个n表示

  tcptump -nn port 22指定端口为22的包

  tcptump -nn not port 22指定端口为非22的包

  tcptump -nn not port 22 and host 113.107.238.130指定113.107.238.130接受或发生的端口为非22的包

  tcptump -nn -i ens33 -c 100只抓100个包

  tcptump -nn -i ens33 -c 10 -w /tmp/1.cap只抓10个包,并且保存到文件中

  通过file命令可以查看到1.cap文件是由抓包产生,此文件不能直接使用cat查看

  使用tcpdump -r /tmp/1.cap可以查看保存的抓包文件

  yum install -y wireshark安装,可以使用tshark命令进行抓包

  tsharl -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"可以查看有哪些IP访问网站的哪些链接

猜你喜欢

转载自www.cnblogs.com/w494129131/p/9286342.html
今日推荐