====== 30 ZFS Linux ======
===== install =====
CentOS7
yum install http://download.zfsonlinux.org/epel/zfs-release.el7_8.noarch.rpm
CentOS8
dnf -y install http://download.zfsonlinux.org/epel/zfs-release.el8_1.noarch.rpm
# cat /etc/yum.repos.d/zfs.repo | grep '^\[\|^enable'
[zfs]
enabled=1
[zfs-kmod]
enabled=1
zfsとzfs-kmodをenabledにしてから、zfsインストール
yum -y install zfs
===== create pool =====
zpool create pool01 /dev/rbd0
===== pool config =====
zfs set compress=lz4 pool01
zfs set sync=disabled pool01
zfs set dedup=on pool01
zpool set autotrim=on pool01
===== export =====
pool のマウントを外す
zpool export pool01
===== import =====
※pool名のrenameは無いが、import時に[new poolname]を指定してpool名を変更できる
zpool import pool01 [new poolname]
※メモ: Ceph rbdを利用してて、もともとxfsドライブをアタッチしていた/dev/rbd0をunmapして、
その後zfsのドライブをmapしてimportしようとすると、import が無いというメッセージが出ることがあった。
その場合、再起動すればどこにmapしてもimport 可能でした。
===== ZVOL =====
下記の例では、10Gのpoo/01/zvol01を作成する。
※「-s」でスパースzvolを作成。オーバーコミットできる。
zfs create -s -o volblocksize=128k -V 10G pool01/zvol01
作成後は、zdデバイスが作成されている
# ll /dev/zvol/onapp2/cc
lrwxrwxrwx 1 root root 9 Jul 24 15:40 /dev/zvol/pool01/zvol01 -> ../../zd0
==== ZVOL resize ====
zfs set volsize=100G pool01/zvol01
確認
# zfs list -o name,volsize
NAME VOLSIZE
pool01 -
pool01/zvol01 100G
===== Error =====
The ZFS modules are not loaded.
Try running '/sbin/modprobe zfs' as root to load them.
==== 対応 ====
modprobe してやればOK
/sbin/modprobe zfs
{{tag>ZFS}}