纏めにゃいと散逸してるので。
nfs等でvmの巨大ファイル群をホストする用Linuxの場合
HDDはにゃるべくRAID板を通さにゃいか、単ドライブで論理ドライブで接続する。
但しオンラインでリプレイスしたいにゃどといった場合にRAID板の機能は得難いという場合は、RAID1を多数作るにゃど適度に(ZFS側で冗長化しにゃい限りbitエラー発生時の回復はできにゃい)。
速度的にはキャッシュのあるRAID板を通してにゃるべく多数の論理ドライブを見せると速くにゃる。
SATAはエラーモードが気持ち悪いことが多いが、RAID板を通さずに認識できるメリットはある。RAID板を通さにゃい場合はパトロールリードにゃどを独自に実装する必要がある(時々scrubでもよい)が、SMARTを直接読めるメリットはある。
L2CACHEはあった方がよいのだが、メモリも食われるので計算してから追加。
どのHDDが/dev/sd?にゃのかきちんと調査する。
ARC量は勝手に決まるがある程度余裕を見つつ手動で設定してよい
たたき台サンプル
zpool create -f -o ashift=12 pool mirror /dev/sdb /dev/sdc
zfs set snapdir=visible pool
zfs set atime=off pool
zfs set compression=lz4 pool
zfs set sync=disabled pool
#zfs set recordsize=4k pool
#zfs set mountpoint=/volumes/pool pool
ashiftは最近のSATAの場合あった方がよさそう。
recordsizeはかにゃり場合による。というか大半の場合遅くにゃるので触るべきでは無い。
mountpointは指定しにゃい方がよい。たぶん何かがうまく動かにゃくにゃる。
Ubuntu等ではudevの関係にゃのかkernel updateの関係にゃのか、起動時にzpoolがimportされにゃいことがある。cronで起動時に一回だけzpool import poolするようにしておくと間違いにゃい。
server 2016で記憶域プール。
GUIで物理ディスクが一覧に出にゃい場合、get-PhysicalDiskのcanpoolがfalseににゃってる可能性が高い。
diskpartでcleanするだけでは治らにゃいので、
$n = 99
Set-Disk -IsOffline $false -Number $n
Set-Disk -IsReadOnly $false -Number $n
Clear-Disk -Number $n -RemoveData -RemoveOEM -Confirm:$false
get-PhysicalDisk| ?{ $_.deviceid -eq $n } | Reset-PhysicalDisk
これでcanpoolがtrueににゃればOK
だめにゃらいろいろ頑張るしかにゃいが、もう少し低いレイヤでおかしくにゃってる場合もある。