## 安装 sysbench
wget https://codeload.github.com/akopytov/sysbench/zip/master
unzip master
cd sysbench-master/
./autogen.sh
./configure --prefix=/usr/local/sysbench
make
make install
## 测试磁盘读写
yum install fio -y 注意:**不要对有数据的磁盘或者分区做测试,会破坏已存在的数据**
##
yum install mtr sysstat -y
cd /usr/local/sysbench/bin/
./sysbench cpu run
CPU speed: ## 速度
events per second: 720.34 ##每秒事件
Throughput: ##吞吐量
events/s (eps): 720.3381 ##每秒事件
time elapsed: 10.0009s ##已用时间
total number of events: 7204 ##事件总数
Latency (ms): ##延迟
min: 1.21 ##最小
avg: 1.39 ##平均
max: 1.71 ##最大
95th percentile: 1.50 ##按照95值计算
sum: 9990.46 ##总和
Threads fairness: ## 线程排期
events (avg/stddev): 7204.0000/0.00 ## 时间
execution time (avg/stddev): 9.9905/0.00 ##执行时间
./sysbench memory run
Total operations: 13937010 (1393663.92 per second) ##总的操作
13610.36 MiB transferred (1361.00 MiB/sec) ## 每秒移动速度
Throughput: ## 吞吐量
events/s (eps): 1393663.9154
time elapsed: 10.0003s
total number of events: 13937010
Latency (ms): ##延迟
min: 0.00
avg: 0.00
max: 0.18
95th percentile: 0.00
sum: 3829.60
Threads fairness:
events (avg/stddev): 13937010.0000/0.00
execution time (avg/stddev): 3.8296/0.00
磁盘IO 在进行下列测试前,请确保磁盘已经 4K 对齐。
测试随机写IOPS:
fio -direct=1 -iodepth=128 -rw=randwrite -ioengine=libaio -bs=4k -size=1G -numjobs=1 -runtime=1000 -group_reporting -filename=/dev/[device] -name=Rand_Write_Testing
测试随机读IOPS:
fio -direct=1 -iodepth=128 -rw=randread -ioengine=libaio -bs=4k -size=1G -numjobs=1 -runtime=1000 -group_reporting -filename=/dev/[device] -name=Rand_Read_Testing
测试写吞吐量:
fio -direct=1 -iodepth=64 -rw=write -ioengine=libaio -bs=1024k -size=1G -numjobs=1 -runtime=1000 -group_reporting -filename=/dev/[device] -name=Write_PPS_Testing
测试读吞吐量:
fio -direct=1 -iodepth=64 -rw=read -ioengine=libaio -bs=1024k -size=1G -numjobs=1 -runtime=1000 -group_reporting -filename=/dev/[device] -name=Read_PPS_Testing
上述测试时 fio 相关参数说明:
-direct=1
测试时忽略 IO 缓存,数据直写。
-rw=randwrite
测试时的读写策略,可选值 randread (随机读)、 randwrite(随机写)、 read(顺序读)、 write(顺序写)、 randrw (混合随机读写)。
-ioengine=libaio
测试方式使用 libaio (Linux AIO,异步 IO)。 应用使用 IO 通常有二种方式:同步和异步。同步的 IO 一次只能发出一个 IO 请求,等待内核完成才返回。这样对于单个线程 iodepth 总是小于 1,但是可以透过多个线程并发执行来解决。通常会用 16-32 根线程同时工作把 iodepth 塞满。 异步则通常使用 libaio 这样的方式一次提交一批 IO 请求,然后等待一批的完成,减少交互的次数,会更有效率。
-bs=4k
单次 I/O 的块文件大小为 4k。未指定该参数时的默认大小也是 4k。
-size=1G
测试文件大小为 1G。
-numjobs=1
测试线程数为 1。
-runtime=1000
测试时间为 1000 秒。如果未配置则持续将前述 -size 指定大小的文件,以每次 -bs 值为分块大小写完。
-group_reporting
测试结果显示模式,group_reporting 表示汇总每个进程的统计信息,而非以不同 job 汇总展示信息。
-filename=/dev/[device]
指定测试文件(设备)的名称。测试裸盘可以获得真实的磁盘性能,但直接测试裸盘会破坏文件系统结构,请在测试前提前做好数据备份。
-name=Rand_Write_Testing
测试任务名称。
例如:
write: io=1024.0MB, bw=6355.9KB/s, iops=1588, runt=164979msec
表示fio做了1 GB I/O,速率约为6 MB/s,总IOPS为1588,运行时间为164秒。由IOPS值可知,该SSD云盘的IOPS性能为 1588.
DNS测试
dig www.qq.com
;; Query time: 3 msec
外网网络延迟和丢包率测量 mtr
[root@111 ~]# mtr -r 42.62.55.58 -c 15
Start: Fri Dec 29 11:35:03 2017
HOST: 111 Loss% Snt Last Avg Best Wrst StDev
1.|-- 42.62.55.58 0.0% 15 0.3 0.3 0.3 0.4 0.0
第二列:snt:10 设置追踪的次数,默认值是10 可以通过参数 -c来定制,例如mtr -r -c 15 202.108.33.94
第三列 Loss: 是显示的每个对应IP的丢包率
第四列 Last: 显示的最近一次的返回时延
第五列 Avg : 是平均值 这个应该是发送ping包的平均时延
第六列 Best: 是最好或者说时延最短的
第七列 Wrst: 是最差或者说时延最常的
第八列 StDev: 是标准偏差
本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/2055809,如需转载请自行联系原作者