5
8

More than 5 years have passed since last update.

proxmox4でzfsを使う時に注意する点

Last updated at Posted at 2015-09-03

参考

zfsが超遅い場合

sync=disabledにすると10倍くらい早くなる
zfs set sync=disabled rpool
sync=enabled(初期値)
# pveperf
CPU BOGOMIPS:      22347.96
REGEX/SECOND:      1314685
HD SIZE:           440.39 GB (rpool/ROOT/pve-1)
FSYNCS/SECOND:     42.32
DNS EXT:           146.05 ms
DNS INT:           13.54 ms
sync=disabled(変更後)
# pveperf
CPU BOGOMIPS:      22347.96
REGEX/SECOND:      1381188
HD SIZE:           440.39 GB (rpool/ROOT/pve-1)
FSYNCS/SECOND:     18952.28
DNS EXT:           14.35 ms
DNS INT:           2.19 ms

/をzfsにした場合、compressionが有効になっている

compressionの確認
# zfs get compression
NAME                      PROPERTY     VALUE     SOURCE
rpool                     compression  lz4       local
rpool/ROOT                compression  lz4       inherited from rpool
rpool/ROOT/pve-1          compression  lz4       inherited from rpool
rpool/swap                compression  lz4       inherited from rpool
tank1a                    compression  off       default
dedupの確認(念の為)
# zfs get dedup
NAME                      PROPERTY  VALUE          SOURCE
rpool                     dedup     off            default
rpool/ROOT                dedup     off            default
rpool/ROOT/pve-1          dedup     off            default
rpool/swap                dedup     off            default
tank1a                    dedup     off            default
compressionの無効化
zfs set compression=off rpool
確認
# zfs get compression
NAME                      PROPERTY     VALUE     SOURCE
rpool                     compression  off       local
rpool/ROOT                compression  off       inherited from rpool
rpool/ROOT/pve-1          compression  off       inherited from rpool
rpool/swap                compression  off       inherited from rpool
tank1a                    compression  off       default

VMのDISK Cacheを変更すること

  • VM作成した直後だけなぜかVM起動失敗するが、2回目からは起動する(不思議)
  • Default(No Cache)だとVMが起動しない
    • Write BackWrite Throughに設定すること。QEMU tuning

KVM

  • kvmはcache=writeback か writethroughにする必要がある。

LVMのPVを縮小したい場合

ZFSのキャッシュをSSDにしたい

ZFSプールの認識に失敗する場合

zpool create rpool mirror /dev/sda1 /dev/sdb1

をしてOS再起動すると、rpoolが見当たらないと言われた。

zpool status -v

解決方法

zpool create 〜した後、ProxmoxのWebUIからZFSストレージの割り当てをすれば
OS再起動後も認識してくれる。

ZFSボリュームの作成

poolの作成
zpool create tank1a /dev/sda -f
zpool create tank1b /dev/sdb -f
zpool create tank2t /dev/sde -f
zpool add rpool log /dev/sdc1
zpool add rpool cache /dev/sdc5
zpool add tank1a log /dev/sdc2
zpool add tank1a cache /dev/sdc6
zpool add tank1b log /dev/sdc3
zpool add tank1b cache /dev/sdc7
zpool add tank2t log /dev/sdc4
zpool add tank2t cache /dev/sdc8

確認

zpool iostat -v

zfsファイルシステムの削除

  • リカバリを途中でやめた場合ゴミが残るので削除したい。
# zfs list
NAME                       USED  AVAIL  REFER  MOUNTPOINT
tank1b/subvol-100-disk-1    22K  8.00G    22K  /tank1b/subvol-100-disk-1
tank1b/vm-365-disk-1      82.5G   668G  4.00G  -
tank1b/vm-365-disk-2      82.5G   645G  27.3G  -
削除
zfs destroy tank1b/subvol-100-disk-1
zfs destroy tank1b/vm-365-disk-1
zfs destroy tank1b/vm-365-disk-2
5
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
8