web-dev-qa-db-ja.com

ネイティブzfsのパフォーマンスチューニング設定をどのように適用しますか?

現在、いくつかのzfsプールでUbuntu 12.10デスクトップを実行しています。次の手順を使用してZFSをインストールし、PPAに含まれているPPAから: https://wiki.ubuntu.com/ZFS

明らかに既知の問題であるバースト/変動する書き込みパフォーマンスの問題があります。人々がまったく同じ問題を抱えている投稿をいくつか見つけました。絶えず変動する書き込み。 http://wiki.freebsd.org/ZFSTuningGuide によれば、「ZFSでよく見られるバーストIOを回避する」ためにいくつかの設定を適用する必要があります。これは/boot/loader.confで行う必要があります。

Ubuntuはそれを使用していないため、私が知る限り、次のような設定を適用する方法がわかりません。

vfs.zfs.prefetch_disable="1"
vfs.zfs.txg.timeout="5"
kern.maxvnodes=250000
vfs.zfs.write_limit_override=1073741824
vfs.zfs.arc_min="512M"
vfs.zfs.arc_max="1536M"
vm.kmem_size_max="8G"
vm.kmem_size="6G"

これについては、一般的なチューニングセクションで説明しています。他の情報源はsysctlを使用していると言っています。しかし、私がこれを取得すると:Sudo sysctl vfs.zfs.prefetch_disable = "1" sysctl:stat/proc/sys/vfs/zfs/prefetch_disable:No such file or directory

/ proc/sysにvfsまたはzfsの情報が見つかりません。

Ubuntuでこのようなことを行う場所はどこですか?

ありがとう

6
psypher246

このオプションは、ほとんどのzfs-Fuseパッケージでデフォルトですでに設定されています。これが/etc/zfs/zfsrcファイルにあることを再確認してください:

# zfs-prefetch-disable : disable zfs high level prefetch cache
# This setting can eat as much as 150 Mb of ram, so uncomment if you want
# to save some ram and are ready to loose a little speed.
zfs-prefetch-disable

または、ネイティブZoLドライバーにこのオプションを設定するには、次を実行します。

# modprobe zfs zfs_prefetch_disable=1

変更を永続的にするには、/etc/modprobe.d/zfsファイルを作成し、次の行をその中に入れます。

options zfs zfs_prefetch_disable=1

Linux上のZFSのほとんどの調整可能なパラメーターは、モジュールオプションを通じて設定されます。次のコマンドを実行すると、使用可能なオプションの完全なリストを取得できます。

# modinfo zfs

これらのオプションのほとんどは、他のシステムのloader.confまたはsysctlに入れることができるものに直接対応します。

3
Darik Horn

/sys/module/zfs/parametersでさらに設定を見つけることができます

例えば:

$ cat /sys/module/zfs/parameters/zfs_prefetch_disable
0
$ echo 1 >/sys/module/zfs/parameters/zfs_prefetch_disable
1
Tsaavik