我刚刚build立了一个小型的NAS / SAN盒子,并正在做一些testing。 configuration是:
我testing的第一件事是COMSTAR在光纤通道上的性能。 我创build了一个700g的zvol,并将其暴露在COMSTAR上。 写caching已启用。 我的FC启动器是一个带有Q-Logic QLA2340卡的Windows 7盒子。
除了写入速度,一切都很好。 出于某种原因,我只能看到〜30MB / s,而使用IOMeter我可以达到90MB / s的读取速度。 做了一些狩猎,我跑了一个zpool iostat命令,看到以下模式:
$ zpool iostat tank 1 tank 88.2G 840G 0 5.47K 0 43.4M tank 88.2G 840G 0 16.1K 0 128M tank 88.4G 840G 1 6.69K 8.93K 52.6M tank 88.4G 840G 52 4.89K 110K 38.3M tank 88.4G 840G 151 0 280K 0 tank 88.4G 840G 112 0 253K 0 tank 88.4G 840G 1 9.89K 16.0K 78.6M tank 88.4G 840G 0 14.3K 0 113M tank 88.6G 839G 150 2.99K 318K 20.2M tank 88.6G 839G 15 0 45.0K 0 tank 88.6G 839G 3 0 17.8K 0 tank 88.6G 839G 0 0 0 0 tank 88.6G 839G 0 0 0 0 tank 88.6G 839G 0 11.3K 0 89.9M tank 88.6G 839G 0 13.8K 0 110M tank 88.8G 839G 90 7.91K 184K 61.0M tank 88.9G 839G 105 91 220K 140K tank 88.9G 839G 42 0 84.6K 0 tank 88.9G 839G 0 0 0 0 tank 88.9G 839G 0 6.52K 7.99K 51.8M tank 88.9G 839G 0 15.6K 1011 124M tank 88.9G 839G 91 4.30K 193K 31.9M tank 89.1G 839G 1 9.48K 15.8K 74.7M tank 89.1G 839G 41 0 99.9K 0 tank 89.1G 839G 166 0 374K 0 tank 89.1G 839G 87 0 162K 0 tank 89.1G 839G 0 0 7.92K 0
它似乎写了很多,然后停下来。
这里发生了什么?
这对ZFS来说是正常的。 发生什么事情是将内存中的写入合并,然后同时将它们提交到磁盘。 这是一个伟大的维基有关它在做什么,以及如何调整它:
http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide