1、测最大网络带宽,当前流量
查看网卡信息:ethtool p2p1
最简单的方法是用scp复制一个大文件,例如50G,复制时间要长,至少30分钟。之前在数据库迁移时,发现网速对迁移速度导致了重大影响,我们的网速一开始快(100M)后来不断下降,10分钟后降为几K。这种情况必须尽早识别出来。
除了scp复制,还可以用iperf,它更加强大,可以测试UDP和TCP,它需要客户端和服务器端配合工作。
在要测试的两台机器分别安装iperf:
sudo yum install iperf
一台作为server启动,-p可以指定监听端口:
iperf -s -p 2323
另一台作为client启动,-c指定连接的server的IP,-p指定连接server的监听端口,-t测试时间:
iperf -c 192.168.100.8 -p 5001 -t 60
测试网速时可以用sar监控:
sar -n DEV 1
IFACE代表着网卡,一般一个IP对应一个网卡,上面的例子192.168.100.8对应一个万兆网卡em1,也连接着服务端的万兆网卡p2p1,下面rxkB/s表示每秒收到的字节数,txkB/s表示每秒发出的字节数,我一般只观察这两个指标,从下面的图可以看出,客户端每秒发出1206614.22kB,服务端每秒收到121633.10kB。
2、测磁盘最大带宽,当前磁盘速度
测磁盘最大带宽主要用fio这个工具,它可以生成各种模式的磁盘读写,可以读写文件系统中的文件,还可以直接读写裸盘。
--顺序读
fio -ioengine=sync -bs=16k -direct=1 -thread -rw=read -size=10G -filename=/mnt/disk03/fiotest.txt -name="BS 4KB read test" -runtime=60
--顺序写
fio -ioengine=sync -bs=16k -direct=1 -thread -rw=write -size=10G -filename=/mnt/disk03/fiotest.txt -name="Max throughput" -iodepth=4 -runtime=60
其中-rw选项控制读写方式,可选值为:
-rw=read Sequential read
-rw=write Sequential write
-rw=trim Sequential trim
-rw=randread Random read
-rw=randwrite Random write
-rw=randtrim Random trim
-rw=rw Sequential read and write mix
-rw=readwrite Sequential read and write mix
-rw=randrw Random read and write mix
-rw=trimwrite Trim and write mix, trims preceding writes
fio运行时可以用
sar -d -p1
查看磁盘状态,注意,sar是用来监控系统状态的,fio是制造磁盘读写操作的:
fio读盘时,sar监控到的状态:
fio写盘时,sar监控到的状态:
参考:
(27条消息) linux FIO命令详解(一):磁盘IO测试工具 fio (并简要介绍iostat工具)_Yannick_J的博客-CSDN博客_fio