lvm-cache实操

Posted SHIYIBODEC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lvm-cache实操相关的知识,希望对你有一定的参考价值。

一、背景

1.联想服务器SR590,本机安装了2块800G的固态硬盘、12块1.8T的机械硬盘。
2.2块800G的固态组了一个raid1,作为第一个卷组,实际可用空间为744G。
3.12块1.8T的机械硬盘做了一个raid10,作为第二个卷组,实际可用空间为9.8T。(组此raid10时,提示使用GPT分区,可忽略,centos7会自动使用GPT分区)
4.安装centos7操作系统到第二个卷组上。此时操作系统在sdb上,固态硬盘组为sda。

二、目的

快速的固态硬盘卷组作为慢速的机械硬盘的缓存使用,加快读写速度。

三、操作

(1)格式化sda

        因为这两块固态硬盘之前用过,使用fdisk -l命令会发现硬盘存在好几个分区,需要删除掉全部分区,整合为1个sda1分区。(使用fdisk命令,需要注意的是:fdisk分区完毕后不是当时生效,我的解决方法是重启服务器,重启后发现已经整合为一个/dev/sda1)

(2)创建物理卷

pvcreate /dev/sda1

查看当前生效的pv

pvs

(3)加入到卷组

        安装centos7操作系统时会自动建立LVM卷组,把固态硬盘创建的pv加入到操作系统自动创建的vg当中去:

vgs    --当前生效的vg,得到操作系统已经创建的vg是centos00

将固态硬盘的pv加入到自动创建的vg中:

vgextend centos00 /dev/sda1

(4)创建cache逻辑卷

lvcreate -n cache -L 740G centos00 /dev/sda1

(5)创建meta逻辑卷

lvcreate -n meta -L 4G centos00 /dev/sda1

    meta的大小要大于千分之一的cache,所以一个设置为740G,一个设置为4G。lvm cache总共包括三部分:data、cache、meta,其中meta的size需要大于千分之一的cache;data是存储数据,cache和meta共同构成缓存

(6)创建缓存池

lvconvert --type cache-pool --poolmetadata centos00/meta centos00/cache

    注意cache和meta的顺序不能颠倒

(7)设置缓存的挂载点

lvconvert --type cache --cachepool centos00/cache --cachemode writeback centos00/home

    因为机械硬盘的大部分空间都挂载到了/home目录下,所以固态硬盘用于给home目录下的机械硬盘做缓存。

(8)查看缓存是否生效

lsblk

(9)取消缓存

lvconvert --uncache centos00/home
    第一次做的时候,meta的大小没有设置正确,需要取消缓存,重新设置。以上命令删除了缓存池,然后删除cache和meta这两个lv。重新创建cache和meta逻辑卷。

以上是关于lvm-cache实操的主要内容,如果未能解决你的问题,请参考以下文章

JavaBean实操代码

LDA模型原理+代码+实操

第六周.02.VGAE带读+代码实操

YOLOv8详解 网络结构+代码+实操

第六周.03.GIN代码实操

Spark 案例实操