es客户端工具_运维必备故障排查、性能分析命令工具,你掌握了几个呢?

0a094b676c22f59c5e639e3094ca7b36.png

运维侠日常的主要工作就是保证业务能够正常稳定的运行,从而使得我们能够流畅的网上冲浪,通宵联盟。在每个应用稳定运行的背后,都离不开程序员的兢兢业业。今天跟大家分享六个平时工作中可以经常使用,能够帮助大家排除解难的命令工具(主要涉及CPU、内存、磁盘、网络、端口、性能等方面)。

TOP1:top 家族

我们总是习惯性的登录系统输入“top”命令来查看系统资源使用情况,它是linux系统在故障排查、性能分析方面无可厚非的top1命令。

de5d146c214f47c730cb00b333c732c2.png

通过top命令查看系统的CPU、内存、运行时间、交换分区、执行的线程等信息。通过top命令可以有效的发现系统的缺陷出在哪里。是内存不够、CPU处理能力不够、IO读写过高。

top命令各个输出信息说明:

9fee788e75b1069ddff7470ab7f642f5.png

top 命令参数:

-b 批处理-c 显示完整的治命令-I 忽略失效过程-s 保密模式-S 累积模式-i 设置间隔时间-u 指定用户名-p 指定进程-n 循环显示的次数

top家族其他命令:

  • top命令,通过top命令可以有效的发现系统的缺陷出在哪里。是内存不够、CPU处理能力不够、IO读写过高。
  • iftop命令,iftop是linux命令行程序,用图形形式实时显示网络连接所使用的带宽。
  • iotop命令,iotop针对的是系统进程的磁盘读写情况
  • atop命令,能够监视 Linux 系统的性能状况,包括进程活动、CPU、内存、硬盘、网络等方面的使用情况等。
  • htop命令,可以让用户与之交互的进程查看器。

TOP2:netstat

netstat命令用于查看网络连接情况,系统路由表,系统端口占用情况等,是系统中非常重要的网络查看、网络诊断的命令工具。

9f42028e32d0ff613eccb20810f93743.png

常见参数:

-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n 拒绝显示别名,能显示数字的全部转化成数字。-l 仅列出有在 Listen (监听) 的服務状态-p 显示建立相关链接的程序名-r 显示路由信息,路由表-e 显示扩展信息,例如uid等-s 按各个协议进行统计-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

核心使用:

  • 查看监听服务端口
列出所有在监听的TCP和UDP端口:netstat -tunpl
  • 统计网络连接数
使用netstat和awk命令来统计网络连接数:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

TOP3:netcat

有着网络界的瑞士军刀美誉,短小精悍、功能实用,是可靠的网络工具。适用于网络连通性测试和端口扫描,机器之间传输文件,机器之间网络测速。

核心使用:

1.网络连通性测试和端口扫描

使用nc启用tcp端口监听 # nc -l 9999使用telnet测试端口连通 # telnet  9999使用nmap测试端口连通 # nmap 主机ip -p9999使用nc测试端口连通 # nc -vzw 2  9999使用nc扫描服务端口 # nc -vzw 2  9999-11000使用nc启用udp端口监听 # nc -ul 9998
4f89ccba11f74495a9d886d5923be744.png

2.使用nc传输文件和目录

两台主机之间怎么快捷、高效的传送文件,相比scp命令,nc命令工具是最优选择。

发送: $ nc 接收者ip 端口号 < 要发送的文件接收: $ nc -l 端口号 > 要保存的文件名

注: 端口号(1024 ~ 65535)要匹配

3.测试网速

测试网速其实利用了传输文件的原理,就是把来自一台机器的/dev/zero 发送给另一台机器的/dev/null 就是把一台机器的无限个0,传输给另一个机器的空设备上,然后新开一个窗口使用dstat命令监测网速

方法:先启动接收命令方式

步骤1,A机器先启动接收数据的命令,监听自己的9991端口,把来自这个端口的数据都输出给空设备(这样不写磁盘,测试网速更准确)

nc -l 9991 >/dev/null

步骤2,B机器发送数据,把无限个0发送给A机器的9991端口

nc 10.0.1.161 9991 

然后,通过iftop命令分别在A机器和B机器查看当前网速

TOP4:vmstat

vmstat是一个很全面的性能分析工具,可以观察到系统的进程状态、内存使用、虚拟内存使用、磁盘的IO、中断、上下文切换、CPU使用等。

查看每秒输出系统性能状态:

vmstat 1
08d76a3429f93c326c45d9e22d50a3e9.png

命令各个输出信息说明:

e64ba0bdee8500e31303f896a5d881de.png

vmstat命令参数:

-a:显示活跃和非活跃内存-f:显示从系统启动至今的fork数量 。-m:显示slabinfo-n:只在开始时显示一次各字段名称。-s:显示内存相关统计信息及多种系统活动数量。delay:刷新时间间隔。如果不指定,只显示一条结果。count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。-d:显示磁盘相关统计信息。-p:显示指定磁盘分区统计信息-S:使用指定单位显示。参数有 k 、K 、m 、M ,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes)

TOP5:iostat

iostat用于监控系统磁盘的IO性能情况,ostat作为系统级别的IO性能分析工具,也是很常用的一款命令工具。

核心使用命令:

iostat -x -k -d 1
3d1e5116836db1ae9b7aad205e608823.png

命令各个输出信息说明:

27db1dd5eaee42f5fd6463326b6ec214.png

TOP6:telnet

Telnet的使用场景,主要用于测试端口连通性,算是家喻户晓的命令工具。

使用方法:

telnet IP 端口或者 telnet 域名 端口

Telnet 客户端命常用命令:

open : 使用 openhostname 可以建立到主机的 Telnet 连接。close : 使用命令 close 命令可以关闭现有的 Telnet 连接。display : 使用 display 命令可以查看 Telnet 客户端的当前设置。send : 使用 send 命令可以向 Telnet 服务器发送命令。支持以下命令:1.ao # 放弃输出命令。2.ayt # “Are you there”命令。3.esc # 发送当前的转义字符。4.ip # 中断进程命令。5.synch # 执行 Telnet 同步操作。6.brk # 发送信号。
e14ac45fc58afd8e2dfbbad38b456d7d.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值