[draft]LVM 使用 SSD 當 Cache 的方式

Exp.

  • 128G HDD → /dev/sdb1 → VG: vg-iiidevops-data , LV : /dev/vg-iiidevops-data/nfs
  • 16GB SSD → /dev/sdc1
  • lv-cache 要當 VG: vg-iiidevops-data 內的 LV: /dev/vg-iiidevops-data/nfs 的 cache
  • 建立 128G HDD

    fdisk /dev/sdb 
    建立 Linux LVM : sdb1
    
    pvcreate /dev/sdb1
    vgcreate vg-iiidevops-data /dev/sdb1
    lvcreate -l 100%PVS -n nfs vg-iiidevops-data /dev/sdb1
    mkfs.ext4 /dev/vg-iiidevops-data/nfs
    mkdir /iiidevopsNFS
    vi /etc/fstab
    ---
    :
    /dev/vg-iiidevops-data/nfs /iiidevopsNFS ext4 defaults 0 0
    ---
    mount /iiidevopsNFS/

  • 驗證一下寫入 1G * 10 的速度

    dd if=/dev/zero of=/iiidevopsNFS/test1.img bs=1G count=10 oflag=dsync
    --
    10+0 records in
    10+0 records out
    10737418240 bytes (11 GB, 10 GiB) copied, 42.2183 s, 254 MB/s
    --

  • 建立 16G SSD 當 Cache

    fdisk /dev/sdc
    建立 Linux LVM : sdc1
    
    pvcreate /dev/sdc1
    vgextend vg-iiidevops-data /dev/sdc1
    lvcreate --type cache-pool -l 100%PVS -n lv-cache vg-iiidevops-data /dev/sdc1
    lvconvert --type cache --cachepool vg-iiidevops-data/lv-cache vg-iiidevops-data/nfs
    --
    Do you want wipe existing metadata of cache pool vg-iiidevops-data/lv-cache? [y/n]: y
      Logical volume vg-iiidevops-data/nfs is now cached.
    --

  • 驗證加入 Cache 後寫入 1G * 10 的速度

    dd if=/dev/zero of=/iiidevopsNFS/test1.img bs=1G count=10 oflag=dsync
    --
    10+0 records in
    10+0 records out
    10737418240 bytes (11 GB, 10 GiB) copied, 103.148 s, 104 MB/s
    --

結果加上 SSD Cache 變得更慢?!

  • tech/lvm_ssd_cache.txt
  • 上一次變更: 2021/02/22 17:29
  • jonathan