# Install And Configure LVM on CentOS 7
**LVM *(Logical Volume Manager)*** adalah *tools* yang dapat digunakan untuk mempermudah pengelolaan *logical volumes*, mengelola kuota disk *logical volumes*, mengubah ukuran *logical volumes* dengan cepat, membuat *software **RAID***, menggabungkan *hard drive* ke dalam *storage*, dan banyak lagi.
*Source:*
https://linuxhint.com/install_lvm_centos7/
## Cara Kerja LVM
Pada dasarnya LVM dibagi menjadi 3:
a. ***Physical Volume (PV)***: *hard drive* mentah yang diinisialisasi untuk bekerja dengan LVM, seperti `/dev/sdb, /dev/sdc, /dev/sdb1,` dll.
b. ***Volume Group (VG)***: Banyak *PV* yang digabungkan menjadi satu *VG*. Anda dapat membuat banyak VG dengan masing-masing nama yang unik.
c. ***Logical Volume (LV)***: Anda dapat membuat banyak *LV* dari *VG*. Anda dapat menambah/mengurangi ukuran *LV* dengan cepat. *LV* juga mempunyai nama yang unik. Anda dapat memformat *LV* menjadi *filesystem* `ext4, zfs, btrfs,` dll.
## Menginstall LVM
1. Perbarui *cache repositori YUM package* dengan perintah berikut:
```
$ sudo yum makecache
```

2. Jalankan perintah berikut untuk menginstall LVM pada CentOS 7:
```
$ sudo yum install lvm
```

3. Kemudian tekan **Y** dan kemudian tekan **Enter** untuk melanjutkan

4. LVM sudah terpasang

## Inisialisasi Disk untuk LVM
LVM tidak masalah jika anda menggunakan disk mentah seperti `/dev/sdb atau /dev/sdc` sebagai **LVM PV**, tetapi tidak direkomendasikan karena sistem operasi lain tidak dapat mendeteksi *metadata LVM* dan Anda mungkin tidak mengetahui apakah disk diatur untuk menggunakan LVM jika Anda memiliki banyak disk.
Anda disarankan untuk membuat partisi tunggal pada hard drive Anda dengan semua ruang yang tersedia dan mengubah jenis partisi ke **Linux LVM atau 8E**.
1. Gunakan **fdisk** untuk membuat partisi tunggal pada disk, misalkan `/dev/sdb`:
```
$ sudo fdisk /dev /sdb
```

2. Kemudian ketik **o** dan tekan **Enter** untuk membuat tabel partisi pada disk kosong

3. Kemudian ketik **n** dan tekan **Enter** untuk membuat partisi baru. Kemudian tetap tekan **Enter** untuk menerima default.

4. Partition should be created

5. Kemudian ketik **t** dan tekan **Enter**. Kemudian ketik **8e** sebagai kode Hex dan tekan **Enter**. Jenis partisi harus diatur ke **Linux LVM**.

6. Kemudian ketik **w** dan tekan **Enter** untuk menyimpan semua perubahan

7. Partisi `/dev/sdb1` sekarang siap digunakan dengan LVM.
## Menambahkan Disk ke LVM PV
1. Jalankan perintah berikut untuk menambahkan disk `/dev/sdb1` ke LVM sebagai PV:
```
$ sudo pvcreate / dev / sdb1
```

2. Membuat daftar semua PV dengan perintah berikut:
```
$ sudo pvscan
```

3. Untuk menampilkan informasi lebih lanjut tentang PV tertentu, jalankan dengan `/ dev / sdb1` dengan perintah berikut:
```
$ sudo pvdisplay / dev / sdb1
```

## Membuat Volume Groups
Pada tutorial ini beranggapan bahwa Anda hanya memiliki satu `PV /dev/sdb1` yang tersedia
1. Jalankan perintah berikut untuk membuat VG Share dengan `PV/dev/sdb1`:
```
$ sudo vgcreate share / dev / sdb1
```

2. Kemudian Anda dapat membuat daftar semua VG dengan perintah berikut:
```
$ sudo vgscan
```

3. Untuk menampilkan informasi lebih lanjut tentang VG tertentu dapat menggunakan perintah berikut:
```
$ sudo vgdisplay share
```

## Memperluas Volume Groups
1. Anda dapat menambahkan lebih banyak PV ke VG Share yang ada dengan perintah berikut:
```
$ sudo vgextend share / dev / sdc1
```

## Membuat Logical Volumes
Sekarang Anda dapat membuat LV sebanyak yang Anda inginkan menggunakan VG, dalam tutorial ini VG Share
1. Anda dapat membuat **www_shovon LV 100MB** dari VG Share dengan perintah berikut:
```
$ sudo lvcreate --size 100M--name www_shovon share
```

2. Membuat **LV www_wordpress** lain dengan ukuran 1GB dari VG Share dengan perintah berikut:
```
$ sudo lvcreate --size 1G --name www_wordpress share
```

3. Sekarang Anda dapat membuat daftar semua LV dengan perintah berikut:
```
$ sudo lvscan
```

Atau dengan
```
$ sudo lvs
```

4. Anda juga dapat menampilkan informasi lebih lanjut tentang LV tertentu dengan perintah berikut:
```
$ sudo lvdisplay VG_NAME/LV_NAME
```
Dalam tutorial ini VG_NAME adalah share dan LV_NAME adalah www_shovon
```
$ sudo lvdisplay share/www_shovon
```

## Memformat dan Memasang Logical Volumes
Anda dapat mengakses **LV** seperti menggunakan partisi hard drive biasa seperti `/dev/sdb1, /dev/sdc2` dll.
**LV** tersedia sebagai `/dev/VG_NAME/LV_NAME`
Sebagai contoh, jika **VG_NAME** adalah **Share** dan **LV_NAME** adalah **www_wordpress**, maka **LV** tersedia sebagai `/dev/share/www_wordpress`
Anda dapat menggunakan `/dev/share /www_wordpress` sama seperti Anda menggunakan partisi hard drive biasa `/dev/sdb1`.
1. Setelah membuat **LV**, Anda perlu memformatnya. Jalankan perintah berikut untuk memformat `/dev/share/www_wordpress` **LV** ke sistem **file EXT4**:
```
$ sudo mkfs.ext4 /dev/share/www_wordpress
```

2. Jalankan perintah berikut untuk membuat *mount point* di mana Anda ingin memasang `/dev/share/www_wordpress LV`:
```
$ sudo mkdir -pv /var/www/wordpress
```

3. Sekarang Anda dapat memasang `/dev/share/www_wordpress` ke direktori kosong seperti `/var/www/wordpress` dengan perintah berikut:
```
$ sudo mount /dev/share/www_wordpress /var/www/wordpress
```

4. LV terpasang pada *mount point* yang diinginkan
```
$ df -h
```

5. Buat file baru pada direktori `/var/www/wordpress`
## Memperluas Logical Volumes
1. Untuk menambahkan 500MB lebih banyak ke LV www_wordpress yang dibuat dari VG Share, jalankan perintah berikut:
```
$ sudo lvextend --size +500M --resizefs share/www_wordpress
```
Note: Anda dapat menggunakan *keyword* G untuk GB. Contoh: –size +2G

2. Ukuran www_wordpress LV akan berubah seperti yang terlihat pada gambar
```
$ df -h
```

3. Selesai