Беспонтовый lvm cache

/dev/sda — основной винт
/dev/sdb — ssd
data — lvgroup
DataLV — lv

# pvcreate /dev/sdb
# vgextend data /dev/sdb

Два раздела под данные и под метаданные. Под данные в 1000 раз больше места надо чем под меты.

# lvcreate -n DataLVcache -L19.9G data /dev/sdb
# lvcreate -n DataLVcacheMeta -L20M data /dev/sdb

# lvconvert —type cache-pool —cachemode writethrough —poolmetadata data/DataLVcacheMeta data/DataLVcache

writeback VS writethrough — неясно. Типа writethrough более надёжный, а writeback более быстрый. На чтение вообще никак не влияет.

# lvconvert —type cache —cachepool data/DataLVcache data/DataLV

Типа готово.

Режим кэширования меняется так:
# lvconvert —cachemode writethrough|writeback VG/CacheLV

Плюс нашёл только один — всё меняется на лету. Без перемонтирования и перезагрузок. Данные не страдают.

Огромный минус — не смог загрузиться с кэшированной rootfs. Предлагают только танцы с бубном с пересборкой ядра. А это не наш метод.

Оставить комментарий