小编hum*_*war的帖子

提高 FreeBSD 系统上的 NFS 性能

我有一个通过 NFS 导出 ZFS 数据集的 FreeBSD 存储服务器,但小文件传输的性能低于可接受的限制。

一些背景资料:

  1. 导出是通过 /etc/exports 处理的,而不是由 ZFS 中的 sharenfs 属性处理的。
  2. 服务器具有 128GB RAM 和 2x8 核心 CPU
  3. NFS 服务器配置为使用 192 个线程(vfs.nfsd.maxthreads:192)
  4. zpool 跨越 4x4TB 10k rpm SAS HDD,使用 SSD 作为 SLOG
  5. 我已经用fio测试了系统性能,始终使用以下参数:

    fio --ioengine=posixaio --bs=4k --directory=/mountpoint --refill_buffers --iodepth=1 --file_service_type=sequential --create_on_open=1 --fallocate=0 --unlink=1 --name=benchmark1 --rw=randwrite --numjobs=1 --nrfiles=500000 --filesize=20KB

在服务器上本地测试显示写入速度约为55MB/s

在 NFS 上测试相同的工作负载显示只有6000kB/s 的微不足道的性能。客户端的挂载选项如下:

myserver:/export/path on /mnt/tmp type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=clientip,local_lock=none,addr=serverip)

我还测试了单个大文件的顺序写入,以检查网络限制。对于这个工作负载,我得到 123MB/s,这是由于 NFS 客户端受千兆以太网限制。

我还测量了在 NFS (vfs.nfsd.async=1) 和 ZFS (zfs …

performance freebsd zfs nfs

6
推荐指数
1
解决办法
685
查看次数

标签 统计

freebsd ×1

nfs ×1

performance ×1

zfs ×1