Lvm2cache

Posted 9 days ago lvm2 ssd nvme

lvm 缓存 使用

//转换为lvm2设备
pvcreate /dev/sdb1 

//创建卷租 或者加入 卷组
vgcreate vg /dev/sdb1 /dev/sdd1

vgextend vg /dev/sdb1

//数据盘 或者已经存在不需要加
lvcreate -n data -L 6G vg /dev/sdd1

//创建缓存盘
lvcreate -n cache -L 6G vg /dev/sdb1

//创建元数据盘
lvcreate -n meta -L 64M vg /dev/sdb1

//创建缓存池
lvconvert --type cache-pool --poolmetadata vg/meta vg/cache

//设置缓存模式 writeback 、writethrough
lvconvert --type cache --cachepool vg/cache --cachemode writeback vg/data


//取消缓存

lvconvert --uncache vg/cache

这个时候重启会无法启动

vim /etc/initramfs-tools/modules

lvm2
dm-cache
dm-cache-smq
dm-raid
dm-bufio

vim /etc/initramfs-tools/hooks/cache.sh


#!/bin/sh

PREREQ="lvm2"

prereqs()
{
    echo "$PREREQ"
}

case $1 in
prereqs)
    prereqs
    exit 0
    ;;
esac

if [ ! -x /usr/sbin/cache_check ]; then
    exit 0
fi

. /usr/share/initramfs-tools/hook-functions

copy_exec /usr/sbin/cache_check

manual_add_modules dm_cache dm_cache_mq


update-initramfs -u -k all