
Ubuntu日本語フォーラム

ログインしていません。
SSD への trim について質問させていただきます。
■環境
# lsb_release -d
Description: Ubuntu 12.04.5 LTS
■ストレージ
SSD: CSSD-S6T512NHG6Q * 2
HDD: WD4003FZEX * 6
パーティション構成:
SSD#1
パーティション 1 が OS 領域 (30GB)
パーティション 2 が ZFS の ZIL 用 (24GB)
パーティション 3 は ZFS の L2ARC 用(325GB)
SSD#2
パーティション 1 が SWAP 領域(30GB)
パーティション 2 が ZFS の ZIL 用 (24GB)
パーティション 3 は ZFS の L2ARC 用(325GB)
※SSD#1 のパーティション構成を sfdisk でダンプして
SSD#2 に複製しているので、パーティションサイズは
全く同じ構成。
※SSD#1 と SSD#2 のパーティション 2、パーティション 3 は
mdadm で組んだ RAID0 構成。
※trime はパーティション 1 と、 パーティション 2 と パーティション 2 を
ext4 にしておけば通ることを確認しております。
HDD
6 本で RAID10 相当の zpool を作成して SSD 上の上記 md デバイスを
キャッシュとして割り当てている。
*******************************
$sudo zpool status -v
pool: zp1
state: ONLINE
scan: scrub repaired 0 in 8h56m with 0 errors on Thu Apr 9 06:02:36 2015
config:
NAME STATE READ WRITE CKSUM
zp1 ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
bp0-2 ONLINE 0 0 0
bp0-3 ONLINE 0 0 0
mirror-1 ONLINE 0 0 0
bp1-0 ONLINE 0 0 0
bp1-1 ONLINE 0 0 0
mirror-2 ONLINE 0 0 0
bp1-2 ONLINE 0 0 0
bp1-3 ONLINE 0 0 0
logs
md0 ONLINE 0 0 0
cache
md1 ONLINE 0 0 0
errors: No known data errors
*******************************
ここからが本題です。
以下のサイトで ZFS on Linux の trim サポートは "not yet ported" となっており
移植がまだされていないようです。
http://open-zfs.org/wiki/Features#TRIM_Support
SSD#1 の パーティション 1(OS 領域) は定期的に fstrim するように
cron を組んでおり、swap はマウントオプションに discard をつけています。
OS と SWAP 領域への trime は問題なく発行できますが、ZFS のキャッシュ
パーティションには trim の発行ができないと考えられる構成です。
Ubuntu というより SSD の質問になってしまうかもしれませんが、fstrim をある
パーティションに対して実行した場合、マウントされたパーテーションに対してのみ
処理されるのでしょうか。
それとも SSD のコントローラにとってはパーティションの境目など見てないので
SSD のセル全域に渡って trim するのでしょうか。
※全域に trim が作用しないとパフォーマンス回復のために
定期的に以下の操作を行う手間があるため確認させていただきます。
zpool remove でプールから md デバイスを外す
ext4 にフォーマット
fstrim を md に発行
ext4 パーティションのマウント解除後に、 zpool add -f <pool-name> <cache|log> md[X]
以上です。
よろしくお願いいたします。
オフライン