千家信息网

怎么实现Linux系统性能测试和监控

发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,本篇文章给大家分享的是有关怎么实现Linux系统性能测试和监控,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。性能测试([Unixbenc
千家信息网最后更新 2025年01月17日怎么实现Linux系统性能测试和监控

本篇文章给大家分享的是有关怎么实现Linux系统性能测试和监控,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

性能测试([Unixbench])

 [root@localhost] $ ./Run

计算

查看当前CPU负载(uptime)

 [root@localhost] $ uptime

测试单cpu计算能力(bc)

 [root@localhost] $ time echo "scale=5000;4*a(1)" | bc -l -q

进程对内存的占用情况(pmap)

 [root@localhost] $ pmap -d 35713

查看进程35713占用内存的情况

磁盘

磁盘IO测试(dd)

测试磁盘的IO写速度

 time dd if=/dev/zero of=test.dbf bs=8k count=300000 oflag=direct

测试磁盘的IO读速度

 dd if=test.dbf bs=8k count=300000 of=/dev/null

表示每次写入/读取8k的数据,执行300000次

实时查看各磁盘的io(iostat)

 [root@localhost] $ yum install sysstat [root@localhost] $ iostat -x 1 100

对磁盘iops的测试(fio)

安装fio

 [root@localhost] $ yum install fio

ioengine: 负载引擎,我们一般使用libaio,发起异步IO请求。

bs: IO大小

direct: 直写,绕过操作系统Cache。因为我们测试的是硬盘,而不是操作系统的Cache,所以设置为1。

rw: 读写模式,有顺序写write、顺序读read、随机写randwrite、随机读randread等。

size: 寻址空间,IO会落在 [0, size)这个区间的硬盘空间上。这是一个可以影响IOPS的参数。一般设置为硬盘的大小。

filename: 测试对象

iodepth: 队列深度,只有使用libaio时才有意义。这是一个可以影响IOPS的参数。

runtime: 测试时长

4K随机写测试

 [root@localhost] $ fio -ioengine=libaio -bs=4k -direct=1 -thread -rw=randwrite -size=100G -filename=/dev/vdb -name="EBS 4KB randwrite test" -iodepth=32 -runtime=60

4K随机读测试

 [root@localhost] $ fio -ioengine=libaio -bs=4k -direct=1 -thread -rw=randread -size=100G -filename=/dev/vdb -name="EBS 4KB randread test" -iodepth=8 -runtime=60

512KB顺序写测试

 [root@localhost] $ fio -ioengine=libaio -bs=512k -direct=1 -thread -rw=write -size=100G -filename=/dev/vdb -name="EBS 512KB seqwrite test" -iodepth=64 -runtime=60

进程对磁盘的读写情况(iotop)

安装iotop

 [root@localhost] $ yum install iotop

运行iotop查看进程对磁盘的读写

 [root@localhost] $ iotop   #查看全部进程的磁盘读写情况 [root@localhost] $ iotop -o   #实时查看当前进程对磁盘的读写(推荐) [root@localhost] $ iotop -p 34323   #查看进程号为34323对磁盘的读写情况

监控告警可以使用如下命令获取io的数据

 [root@localhost] $ iotop -botqqq --iter=3

网络

网络测试(iperf)

启动服务端

 [root@localhost] $ yum install iperf3 -y [root@localhost] $ iperf3 -s

客户端进行测试

 [root@localhost] $ yum install iperf3 -y [root@localhost] $ iperf3 -c 10.2.2.2 -P 5

以上默认为作TCP测试,如果要UDP测试,服务端启动与客户端测试都需要加上-u

  ## 服务端  iperf3 -s -u 123 ## 客户端 ```clike iperf3 -c 10.2.2.2 -P 5 -u

网络测试(qperf)

启动服务端

 [root@localhost] $ yum install qperf -y [root@localhost] $ qperf

客户端进行测试网络延时

 [root@localhost] $ yum install qperf -y [root@localhost] $ qperf 10.2.2.2 -t 100 -oo msg_size:8:256K:*2 tcp_bw

客户端进行测试网络带宽

 [root@localhost] $ yum install qperf -y [root@localhost] $ qperf 10.2.2.2 -t 100 -oo msg_size:8:256K:*2 tcp_bw

延时与带宽可以一起测试

 [root@localhost] $ qperf 10.2.2.2 -t 100 -oo msg_size:8:256K:*2 tcp_bw tcp_lat

网卡流量监测(nload)

安装nload

 [root@localhost] $ yum install nload

监测网卡流量输入及输出

 [root@localhost] $ nload eth0 eth2

DNS服务压测工具(queryperf)

 queryperf [-d datafile] [-s server_addr] [-p port] [-q num_queries]

-d: 后面接上一个文件,文件的内容是用户对DNS的请求,一行为一条请求,所以为了测试,我们可以在里面写上几千几万条。

-s: DNS服务器地址

-p: DNS服务器端口

-q: 请求多少次

使用vim命令先创建一个请求文件:vim querytest.txt

 www.example.com A example.com NS tftp.example.com CNAME blog.example.com A .... # 600万行

执行测试命令

 [root@localhost] $ queryperf -d querytest.txt -s 192.168.0.6

以上就是怎么实现Linux系统性能测试和监控,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

测试 磁盘 进程 服务 客户 客户端 情况 网络 系统 监控 命令 文件 硬盘 顺序 系统性 能测 操作系统 参数 大小 实时 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器日志怎么分析数据存储安全 海口市网络安全联合检查协调会 安徽服务器应用线束工厂云主机 税务总局网络安全和信息化 学软件开发要什么基础知识 美国大学软件开发排名 河北人社显示内部服务器异常 不属于网络安全工作 根服务器在美国 中国信息安全吗 乡镇网络安全宣传工作方案 怎么登陆不上服务器 服务器性能需求分析 中国卫生人才网提示服务器异常 flex刀片服务器管理口 网络安全律的班会感想 数据库的关系模型 网络安全自查表表格 服务器的设置 数据库的锁机制是干什么的 在关系数据库设计中核心 华为 浪潮服务器 女软件开发觉得累 网络安全设备安全的管理 数据库技术基本信息 梦幻西游哪个服务器人气好 广元软件开发参考价 吉林网络安全知识 赤水市天气预报软件开发 数据库创建聚集索性 怎样查询数据库表里的数据
0