服务端性能测试——性能监控体系-L1性能统计工具

本文详细介绍了IT系统中的各种监控命令,包括I/O、CPU、内存、网络和进程监控,如iostat、mpstat、nmon、top和ps等。还涵盖了如何使用nmon进行性能分析以及如何通过Collectd、InfluxDB和Grafana搭建基本性能监控系统。
摘要由CSDN通过智能技术生成

目录:

  1. 性能分析系统级别指标iocpumemnet
    1. io指标监控命令iostat
    2. io指标监控命令df
    3. cpu指标监控命令uptime
    4. cpu指标监控命令cat/proc/cpuinfo
    5. cpu指标监控命令mpstat
    6. cpu指标监控命令sar
    7. mem指标监控命令cat/proc/meminfo
    8. mem指标监控命令vmstat
    9. mem指标监控命令free
    10. net指标监控命令ping
    11. net指标监控命令ifconfig
    12. net指标监控命令hostname
    13. net指标监控命令netstat
  2. top命令使用
    1. top
  3. ps命令
    1. ps
  4. nmon工具
    1. nmon简介
    2. nmon使用
    3. nmon监控与结果分析
    4. nmon监控与结果分析
  5. 基本性能监控系统使用
    1. 基本性能监控系统组成
    2. 环境搭建
    3. 环境配置与监控环境的使用

1.性能分析系统级别指标 io cpu mem net

io 指标监控命令 iostat
  • 命令描述: 监控系统设备的IO负载情况
  • 命令演示: iostat
io 指标监控命令 df
  • 命令描述: 列出⽂件系统的整体磁盘空间使⽤情况
  • 命令演示: df -h
cpu 指标监控命令 uptime
  • 命令描述: 用于显示系统总共运行了多长时间和系统的平均负载
  • 命令演示: uptime
cpu 指标监控命令 cat /proc/cpuinfo
  • 命令描述: 查看CPU的配置信息
  • 命令演示: cat /proc/cpuinfo
cpu 指标监控命令 mpstat
  • 命令描述: 是一款常用的多核CPU性能分析工具,用来实时查询每个CPU的性能指标,以及所有CPU的平均指标
  • 命令演示: mpstat
cpu 指标监控命令 sar
  • 命令描述: 是一个Linux下的监控工具,可以用来监控CPU性能状况
  • 命令演示: sar -u 1 1
mem 指标监控命令 cat /proc/meminfo
  • 命令描述: 查看内存相关配置信息
  • 命令演示: cat /proc/meminfo
mem 指标监控命令 vmstat
  • 命令描述: 用来获得有关进程、内存、虚拟内存、页面交换空间及 CPU活动的信息
  • 命令演示: vmstat
mem 指标监控命令 free
  • 命令描述: 显示系统使用和空闲内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存
  • 命令演示: free, free -g
net 指标监控命令 ping
  • 命令描述: 向目标系统发送报文,检测网络连通性的工具
  • 命令演示: ping
net 指标监控命令 ifconfig
  • 命令描述: 用于获取网卡配置与网络状态等信息
  • 命令演示: ifconfig
net 指标监控命令 hostname
  • 命令描述: 显示本机的hostname, 修改本机的hostname
  • 命令演示: hostname
net 指标监控命令 netstat
  • 命令描述: 用于显示各种网络相关信息,如网络连接,路由表,接口状态等
  • 命令演示:
    • netstat -an
    • netstat -at
    • netstat -au
    • netstat -p

2.top 命令使用

top
  • 命令描述: 实时的显示系统中各个进程的资源占用情况
  • 统计信息: 前五行是系统的整体统计信息。
  • 进程信息: 统计信息下方类似表格的区域显示的是进程的详细信息,默认5秒刷新一次。
  • 命令演示: top

3.ps 命令

ps
  • 命令描述: ps是命令是 Process Status 的缩写,linux下最常用的进程查看命令;
  • 使用技巧:
    1. 可以配合管道命令 | 和查找命令 grep 同时执行来查看特定进程。
    2. 可以配合管道命令 | 和文本分析命令 awk 同时执行来定位具体进程参数值
  • 命令演示:
    • ps
    • ps -aux
    • ps -ef
    • ps -ef | grep | awk

 

4.nmon 工具

nmon 简介
  • nmon是一种可以在 AIX 与 Linux 操作系统上使用的性能监控与分析工具
  • 使用技巧:
    1. 下载位置:http://nmon.sourceforge.net , 从 Binaries 中下载可执行程序包
    2. 解压之后选择使用所在操作系统对应的可执行程序
    3. 可以使用 ln 命令将 nmon 程序软链接添加到 /urs/bin 目录下,这样可以通过 nmon 命令直接运行该程序 参考命令: ln -s nmon
nmon 使用
  • 运行 nmon 直接启动
  • 常用快捷参数
    • c: cpu
    • m: 内存
    • d: 硬盘
    • n: 网络
    • t: top进程
    • q: 退出
nmon 监控与结果分析
  • 启动 nmon 后台监控程序
  • 命令: nmon -f -t -s 10 -c 10 -m
    • -f 监控结果以文件形式输出,默认:机器名_日期_时间
    • -F 指定输出文件名
    • -t 显示资源占用率高的进程
    • -s 采样频率,单位秒
    • -c 采样次数
    • -m nmon 数据文件保存的目录
nmon 监控与结果分析
  • 图形化分析工具下载位置: https://nmon.sourceforge.net/pmwiki.php?n=Site.Nmon-Analyser
  • 用 Excel 打开,需要启用宏
  • 在 Analyser 文件中打开性能监控数据文件 *.nmon 浏览图形化性能分析报告

5.基本性能监控系统使用

基本性能监控系统组成
  • Collectd + InfluxdDB + Grafana
  • Collectd 是一个守护(daemon)进程,用来定期收集系统和应用程序的性能指标,同时提供了以不同的方式来存储这些指标值的机制;
  • InfluxDB 开源的、高性能的时序型数据库
  • Grafana 一个非常酷的数据可视化平台,常常应用于显示监控数据,支持多种数据源
环境搭建
  • 利用 Docker 部署环境
  • 步骤:
    • 准备数据文件 types.db collectd.conf
    • 启动influxDB
    • 启动grafana
    • 启动collectd

准备数据文件 types.db collectd.conf 

> docker create --name temporary mwaeckerlin/collectd
> docker cp temporary:/usr/share/collectd/types.db types.db
> docker cp temporary:/etc/collectd/collectd.conf collectd.conf
> sudo mkdir -p <your path>
> sudo mv -i types.db <your path>
> sudo mv -i collectd.conf <your path>
> docker rm temporary

 启动 InfluxDB

docker run -d \
    --name influxdb \
    -e INFLUXDB_COLLECTD_ENABLED=true \
    -e INFLUXDB_COLLECTD_DATABASE=_internal \
    -e INFLUXDB_COLLECTD_TYPESDB=/usr/share/collectd/types.db \
    -e INFLUXDB_COLLECTD_SECURITY_LEVEL=none \
    -v <your path>/types.db:/usr/share/collectd/types.db \
    influxdb:1.8

启动 grafana

docker run -d \
    --name=grafana \
    -p 3000:3000 \
    --link influxdb:influxdb grafana/grafana 
  • 默认用户名 / 密码: admin / admin

启动 collectd 

docker run -d \
    --name collectd \
    --hostname localhost \
    --link influxdb:influxdb \
    -v <your path>/collectd.conf:/etc/collectd/collectd.conf \
    mwaeckerlin/collectd
环境配置与监控环境的使用
  • Grafana中配置数据源
    • 类型: InfluxDB
    • URL: http://influxdb:8086
    • Database: _internal
  • Grafana 中配置Dashboard
    • Import id 555
  • collectd 启用对应的监控数据
  • 编辑配置文件 collectd.conf
  • 启用对应的监控选项

 

  • 20
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿瞒有我良计15

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值