Cara Menambahkan HDD atau vHDD kedalam Logical Volume Manager (LVM)

Pengenalan LVM (Logical Volume Manager)

LVM adalah sebuah target device mapper yang menyediakan logical volume management kepada Kernel Linux. Device Mapper sendiri itu apa?

Device Mapper merupakan sebuah framework yang disediakan oleh Kernel Linux untuk mapping physical block device kedalam level yang lebih tinggi daripada virtual block device.

Kebanyakan distribusi Linux modern dibekali oleh fitur LVM untuk dapat meletakkan root file system pada Logical Volume.

Penggunaan Umum LVM

  • Membuat single Logical Volume dari beberpa physical volume atau seluru Hardisk.
  • Mengelola banyak Hardisk dan mengizinkan disk ditambahkan maupun diganti tanpa mengalami downtime atau gangguan layanan seperti hal nya Hot Swapping.
  • Kemudahan mengubah ukuran file system LVM sesuai yang diperlukan.
  • Melakukan konsisten BackUp dengan mengambil snapshot dari Logical Volumes.
  • Meng-enkripsi beberapa physical partition dengan satu password.
Gambar LVM-Lukmanlab

LVM berada pada lapisan teratas, dibawahnya partisi dan hardisk. LVM memudahkan administrator dalam mengelola Hardisk baik dalam melakukan penggantian maupun partisi ulang dan backup.

Komponen LVM

Sesuai dengan gambar diatas kalau disederhanakan akan menjadi tiga (3) bagian:

  1. Physical Volume (PV), aktual disk. Contoh: /dev/sda5, /dev/sdb dsb.
  2. Volume Group (VG), kombinasi dari beberapa Physical Volume. Contoh: cloud_vg = /dev/sda5 + /dev/sdb dsb.
  3. Logical Volume (LV), Logical Volume dibentuk dari Volume Group. Contoh: /dev/cloud-vg/root, /dev/cloud-vg/swap_1 dsb.

Cara Melihat PV, VG dan LV

  1. Menampilkan PV
    • admin@cloud:~$ sudo pvs
    • admin@cloud:~$ sudo pvdisplay
  2. Menampilkan VG
    • admin@cloud:~$ sudo vgs
    • admin@cloud:~$ sudo vgdisplay
  3. Menampilkan LV
    • admin@cloud:~$ sudo lvs
    • admin@cloud:~$ sudo lvdisplay

Langkah-langkah Menambahkan HDD atau vHDD kedalam LVM

  1. Lihat Hardisk baru :
    • admin@cloud:~$ sudo fdisk -l | grep ‘^Disk /dev/’
      Disk /dev/loop0: 195.8 MiB, 205299712 bytes, 400976 sectors
      Disk /dev/loop1: 86.6 MiB, 90828800 bytes, 177400 sectors
      Disk /dev/sda: 50 GiB, 53687091200 bytes, 104857600 sectors
      Disk /dev/sdb: 50 GiB, 53687091200 bytes, 104857600 sectors
      Disk /dev/mapper/cloud--vg-root: 97.5 GiB, 104706605056 bytes, 204505088 sectors
      Disk /dev/mapper/cloud--vg-swap_1: 2 GiB, 2147483648 bytes, 4194304 sectors
  2. Scan Disk LVM :
    • admin@cloud:~$ sudo lvmdiskscan
      /dev/loop0            [ 195.79 MiB]
      /dev/cloud-vg/root    [ 49.52 GiB]
      /dev/loop1            [ 86.62 MiB]
      /dev/sda1             [ 487.00 MiB]
      /dev/cloud-vg/swap_1  [ 2.00 GiB]
      /dev/sda5             [ 49.52 GiB] LVM physical volume
      /dev/sdb              [ 50.00 GiB] 
      1 disk
      4 partitions
      1 LVM physical volume whole disk
      1 LVM physical volume
  3. Create PV :
    • admin@cloud:~$ sudo pvcreate /dev/sdb
      Physical volume "/dev/sdb" successfully created
  4. Verify PV :
    • admin@cloud:~$ sudo lvmdiskscan -l
      WARNING: only considering LVM devices
      /dev/sda5            [ 49.52 GiB] LVM physical volume
      /dev/sdb             [ 50.00 GiB] LVM physical volume
      1 LVM physical volume whole disk
      1 LVM physical volume
  5. Tambahkan PV baru kedalam LV existing :
    • admin@cloud:~$ sudo vgextend cloud-vg /dev/sdb
      Volume group "cloud-vg" successfully extended
  6. Terakhir, Extend Partisi  :
    • admin@cloud:~$ sudo lvm lvextend -l +100%FREE /dev/cloud-vg/root
      Size of logical volume cloud-vg/root changed from 49.52 GiB (9597 extents) to 97.52 GiB (10885 extents).
      Logical volume root successfully resized.

Tambahan untuk penyempurnaan konfigurasi:
admin@cloud:~$ resize2fs -p /dev/mapper/cloud–vg-root
resize2fs 1.42.13 (17-May-2018)
Filesystem at /dev/mapper/cloud--vg-root is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 3
The filesystem on /dev/mapper/cloud--vg-root is now 11146240 (4k) blocks long.

admin@cloud:~$ df -H
Filesystem                  Size Used Avail Use% Mounted on
udev                        1.1G 0     1.1G 0%   /dev
tmpfs                       210M 6.4M  204M 4%   /run
/dev/mapper/cloud--vg-root  103G 3.0G  96G  4%   / 
tmpfs                       1.1G 0     1.1G 0%   /dev/shm
tmpfs                       5.3M 0     5.3M 0%   /run/lock
tmpfs                       1.1G 0     1.1G 0%   /sys/fs/cgroup
/dev/loop1                  91M  91M    0   100% /snap/core/4571
/dev/loop0                  206M 206M   0   100% /snap/nextcloud/6916
/dev/sda1                   495M 111M  359M 24%  /boot
tmpfs                       210M 0     210M 0%   /run/user/1000

Sumber :
https://www.cyberciti.biz/faq/howto-add-disk-to-lvm-volume-on-linux-to-increase-size-of-pool/
https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)
https://en.wikipedia.org/wiki/Device_mapper