我有 24 台三星 PM1733 7.68 TB 和一个服务器平台技嘉 R282-Z94,配备 2x 7702 64 核 AMD EPYC。操作系统:Oracle Linux 8.6,5.4.17-2136.311.6.el8uek.x86_64
我需要这台服务器进行测试,因此我必须在我的环境中使用精简池(我需要快照)。我还使用 LVM,因为我以前用过它。但我尝试了 ZFS,但无法获得更好的结果。
主要问题是这样的:如何使用精简池获得最大性能。
我做什么:
vgcreate vg1 /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1
lvcreate -n thin_pool_1 -L 20T vg1 /dev/nvme0n1 /dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 -i 4 -I 4
-i4 用于所有磁盘之间的条带化,-I4 条带大小。我还尝试了 8、16、32... 在我的设置中,我找不到太大的区别。
lvcreate -n pool_meta -L 15G vg1 /dev/nvme4n1
lvconvert --type thin-pool --poolmetadata vg1/pool_meta vg1/thin_pool_1
lvchange -Zn vg1/thin_pool_1
- 禁用归零。
lvcreate -V 15000G --thin -n data vg1/thin_pool_1
之后我使用带有参数的 FIO 创建负载:
fio --filename=/dev/mapper/vg1-data --rw=randwrite --bs=4k --name=test --numjobs=32 --iodepth=32 --random_generator=tausworthe64 --numa_cpu_nodes=0 --direct=1
我只能获得 40k iops,而相同负载下的一个驱动器可以轻松提供 130k iops。
我不明白在配置系统时我遗漏了什么。