测试使用的程序:
wget -qO- bench.sh | bash
VM配置:
Debian 10 4 vCPU 4GB RAM 50GB SSD online.net 的 独立服务器,服务器为3 X 500 GB SSD
在使用新的ahci driver (vmw_achi)的情况下:
CPU model : Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz Number of cores : 4 CPU frequency : 3495.951 MHz Total size of Disk : 46.0 GB (0.9 GB Used) Total amount of Mem : 3946 MB (133 MB Used) Total amount of Swap : 4092 MB (0 MB Used) System uptime : 0 days, 0 hour 55 min Load average : 0.00, 0.00, 0.00 OS : Debian GNU/Linux 10 Arch : x86_64 (64 Bit) Kernel : 4.19.0-5-amd64 ---------------------------------------------------------------------- I/O speed(1st run) : 77.6 MB/s I/O speed(2nd run) : 79.3 MB/s I/O speed(3rd run) : 76.9 MB/s Average I/O speed : 77.9 MB/s -----------------------------------
在退回旧的ahci driver(sata-achi)的情况下:
---------------------------------------------------------------------- CPU model : Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz Number of cores : 4 CPU frequency : 3495.951 MHz Total size of Disk : 46.0 GB (0.9 GB Used) Total amount of Mem : 3946 MB (101 MB Used) Total amount of Swap : 4092 MB (0 MB Used) System uptime : 0 days, 0 hour 1 min Load average : 0.02, 0.01, 0.00 OS : Debian GNU/Linux 10 Arch : x86_64 (64 Bit) Kernel : 4.19.0-5-amd64 ---------------------------------------------------------------------- I/O speed(1st run) : 407 MB/s I/O speed(2nd run) : 408 MB/s I/O speed(3rd run) : 407 MB/s Average I/O speed : 407.3 MB/s
基本回到了满速,这个IO 甚是欣慰,虽然比使用纯ssd 要慢点,但还是可以接受的
ESXi 6.7 的这个IO 问题,从6.5 就一直存在,但是到了6.7 还是没有解决
在ESXi 的host上,使用如下命令可以看到:
[[email protected]:~] esxcli software vib list | grep ahci sata-ahci 3.0-22vmw.650.0.0.4564106 VMW VMwareCertified 2016-11-16 vmw-ahci 1.0.0-32vmw.650.0.0.4564106 VMW VMwareCertified 2016-11-16
说明系统上存在两种driver,一个是sata-achi, 另外一个是vmw-achi. VMware 在vShpere 新的版本中,对于sata 都采用了全新的driver vmw-achi, 目前看来这个driver 还是有一定问题的,因此最好是回退到原来的driver中去
直接登录VMware 的 host,storage -> Adapters, 可以看到driver 用的是vmw_achi
我们需要将这个driver 回退到sata_achi中去:
[[email protected]:~] esxcli system module set --enabled=false --module="vmw_ahci" [[email protected]:~] esxcli system module list | more Name Is Loaded Is Enabled ----------------------------- --------- ---------- vmkernel true true chardevs true true user true true .... .... vmkapi_v2_1_0_0_vmkernel_shim true true vmkusb true true igbn true true vmw_ahci true false iscsi_trans true true iscsi_trans_compat_shim true true vmkapi_v2_2_0_0_iscsiInc_shim true true
重启,我们就会发现driver 已经回退到sata-achi了, SSD 的性能又回来了
参考文章: https://anthonyspiteri.net/homelab-supermicro-5020d-tnt4-storage-driver-performance-issues-and-fix/#prettyPhoto
https://kb.vmware.com/s/article/2044993
https://communities.vmware.com/thread/554004