Rabu, 03 Desember 2008

Memperbesar dan Mengurangi ukuran Partisi Harddisk dengan LVM

=============================================================================
Pengantar
=============================================================================
LVM (Logical Volume Management) memungkinkan ukuran hard disk dengan mudah
diperbesar/expand ataupun dikurangi/reduce. Ide dasar dari LVM adalah
memudahkan Anda dalam "meresize" ukuran partisi Harddisk Anda.
Dalam konsep LVM seluruh partisi harddisk disebut dengan "Physical Volume",
Kemudian Physical volume dimasukkan kedalam suatu "Volume Group", dari
Volume Group dibuatlah "Logical Volume".
Jika Anda ingin memanfaatkan partisi LVM maka Anda perlu menginstall utiliti
untuk mensetup LVM, jadi pastikan paket utiliti lvm2 (lvm2-2.02.06-6.0.RHEL4)
telah terinstall pada system Anda (dalam tulisan ini penulis menggunakan
Linux CentOS 4.4 final)


===============================================================================
Membuat partisi Harddisk LVM
===============================================================================

1. Membuat "Physical Volume"
--------------------------------
Untuk menerapkan partisi harddisk dengan LVM sebaiknya Anda memiliki
Harddisk lebih dari satu, tetapi dalam contoh kali ini kita hanya memiliki
sebuah harddisk (/dev/hda) yang sebelumnya terdiri dari beberapa partisi,
Misalkan Anda memiliki partisi hardisk /dev/hda10, dan /dev/hda11
kedua partisi ini masing-maisng ukurannya 2.80 GB dan 964.00 MB
lalu kedua partisi harddisk ini akan dijadikan sebagai Pyhisical Volume.
Untuk membuat Pyhisical Volume jalankan perintah sbb:

[root@sotnec ~]# pvcreate /dev/hda10
Physical volume "/dev/hda10" successfully created
[root@sotnec ~]# pvcreate /dev/hda11
Physical volume "/dev/hda11" successfully created


2. Membuat "Volume Group"
------------------------------
Selanjutnya Anda harus membuat "Volume Group" yang terdiri dari "Physical
Volume" /dev/hda10 dan /dev/hda11. Tetapi sebelumnya Anda buat dahulu
file konfigurasi LVM secara otomatis dengan perintah Sbb:

[root@sotnec ~]# vgscan
Reading all physical volumes. This may take a while...

Kemudian barulah Anda buat Volume Group dengan perintah sbb:

[root@sotnec ~]# vgcreate -v lvm-hda /dev/hda10 /dev/hda11
Wiping cache of LVM-capable devices
Adding physical volume '/dev/hda10' to volume group 'lvm-hda'
Adding physical volume '/dev/hda11' to volume group 'lvm-hda'
Archiving volume group "lvm-hda" metadata (seqno 0).
Creating volume group backup "/etc/lvm/backup/lvm-hda" (seqno 1).
Volume group "lvm-hda" successfully created

Perintah diatas akan membuat sebuah Volume Group dengan nama lvm-hda (nama ini
bisa didefinisikan sesuai keinginan Anda).

3. Membuat "Logical Volume"
------------------------------------
Dari Volume Group yang sudah ada Anda kemudian dapat membuat "Logical Volume",
sebelumnya lihat dahulu daftar Volume Group yang ada saat ini, Anda dapat menjalankan
perintah sbb:

[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 3.74 GB
PE Size 4.00 MB
Total PE 958
Alloc PE / Size 0 / 0
Free PE / Size 958 / 3.74 GB
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO

Dan selanjutnya buatlah "Logical Volume" dengan perintah sbb:

[root@sotnec ~]# lvcreate -l 958 lvm-hda -n lvm0
Logical volume "lvm0" created

hasil perintah diatas akan membuat file device di /dev/lvm-hda/lvm0

Untuk melihat "Logical Volume" yang tadi sudah Anda buat jalankan perintah
sbb:

[root@sotnec ~]# lvdisplay
--- Logical volume ---
LV Name /dev/lvm-hda/lvm0
VG Name lvm-hda
LV UUID N3gRGE-2Kbp-jnnL-OwCo-CR9P-kq9g-ucBZ5l
LV Write Access read/write
LV Status available
# open 0
LV Size 3.74 GB
Current LE 958
Segments 2
Allocation inherit
Read ahead sectors 0
Block device 253:0


4. Memformat partisi LVM ("device lvm0") dengan File System ext3
----------------------------------------------------------------

Selanjutnya partsis LVM yang telah dibuat diformat dengan file system ext3,
lakukan perintah berikut :

[root@sotnec ~]# mkfs.ext3 /dev/lvm-hda/lvm0
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
490560 inodes, 980992 blocks
49049 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=1006632960
30 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.


5. Memounting device "lvm0" (partisi LVM)
-----------------------------------------
Setelah selesai diformat maka partisi LVM Anda sudah dapat digunakan
untuk itu coba Anda mount ke direktori tertentu dalam file system linux,
misalnya kita akan memunting device /dev/lvm-hda/lvm0 ke direktori /media/lvm

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 40M 3.5G 2% /media/lvm

Dari perintah df -h tampak bahwa partsis LVM Anda sudah di mount dan
tinggal digunakan. Coba Anda kopi atau salin file atau folder tertentu ke
dalam partisi atau direktori /media/lvm, contoh sbb:

[root@sotnec ~]# cp -rf /etc /media/lvm/

perintah diatas akan menyalin direktori /etc kedalam /media/lvm/
lalu coba lihat size yang telah digunakan saat ini dari partisi LVM Anda, sbb:

[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 85M 3.5G 3% /media/lvm
[root@sotnec ~]# ls -al /media/lvm/
total 36
drwxr-xr-x 4 root root 4096 Apr 24 14:07 .
drwxr-xr-x 5 root root 4096 Apr 24 12:15 ..
drwxr-xr-x 86 root root 8192 Apr 24 14:07 etc
drwx------ 2 root root 16384 Apr 24 14:01 lost+found


Nah sudah berfungsi bukan partisi LVM Anda. Lalu bagaimana jika
partisi LVM Anda mulai penuh dan Anda ingin memperbesar ukuran dari partisi
LVM Anda saat ini. ? Nah untuk menjawabnya coba perhatikan bagian selanjutnya.


===============================================================================
Memperbesar/menambah (Expand) ukuran disk partisi LVM Anda.
===============================================================================

Suatu saat partisi LVM Anda akan kehabisan space atau dengan kata lain
Available size disk nya akan mendekati 0% alias Full penggunaan size nya. Nah
untuk menjaga-jaga Anda berniat untuk menambah ukuran/size partisi LVM anda
(contoh : "lvm0"). Nah bagaimanakah caranya ?, misalkan Anda memiliki partisi
Hard disk /dev/hda12 dengan ukuran 964.62 MB (misal: sebesar inilah tambahan size
yang akan Anda terapkan) . Nah partisi /dev/hda12 ini akan Anda jadikan
sebagai Physical Volume dari Volume Group "lvm-hda". Untuk itu Anda buatlah
terlebih dahulu "Physical Volume" /dev/hda12 dengan perintah sbb:

[root@sotnec ~]# pvcreate /dev/hda12
Physical volume "/dev/hda12" successfully created

Lalu coba cek seluruh "Physical Volume" yang ada saat ini:

[root@sotnec ~]# pvdisplay
--- Physical volume ---
PV Name /dev/hda10
VG Name lvm-hda
PV Size 2.80 GB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 717
Free PE 0
Allocated PE 717
PV UUID BNk2Eo-ne4J-R4Xl-KYou-L8dF-xKBn-5UHFx5

--- Physical volume ---
PV Name /dev/hda11
VG Name lvm-hda
PV Size 964.00 MB / not usable 0
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 241
Free PE 0
Allocated PE 241
PV UUID g1tFCz-AULA-H6UY-NPFC-PRzZ-ekcc-9BkdEX

--- NEW Physical volume ---
PV Name /dev/hda12
VG Name
PV Size 964.62 MB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID RP1FCi-hwJ6-nLkP-hMuU-zM9i-BIcs-mB4GEz

[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 3.74 GB
PE Size 4.00 MB
Total PE 958
Alloc PE / Size 958 / 3.74 GB
Free PE / Size 0 / 0
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO



Kemudian Anda harus memperluas (extend) Volume Group "lvm-hda" dimana sekarang
kita ingin Physical Volume /dev/hda12 menjadi anggota dari Volume Group
"lvm-hda", untuk itu jalankan perintah berikut:

[root@sotnec ~]# vgextend lvm-hda /dev/hda12
Volume group "lvm-hda" successfully extended

Coba cek volume group saat ini, seharusnya Volume Group "lvm-hda" ukuran size
nya bertambah bukan ? dari 3.74 GB menjadi 4.68 GB


[root@sotnec ~]# vgdisplay
--- Volume group ---
VG Name lvm-hda
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 3
Act PV 3
VG Size 4.68 GB
PE Size 4.00 MB
Total PE 1199
Alloc PE / Size 958 / 3.74 GB
Free PE / Size 241 / 964.00 MB
VG UUID 0pGE2d-07s0-5u3t-sZBH-osZp-T6DI-HGXDYO


Apakah "Logical Volume (lvm0)" ukurannya telah bertambah ?
---------------------------------------------------------
Untuk menjawabnya coba Anda mount ulang partisi /dev/lvm-hda/lvm0

[root@sotnec ~]# umount /media/lvm
[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
3.7G 85M 3.5G 3% /media/lvm

dari perintah "df -h " diatas terlihat bahwa partisi lvm0 belum
bertambah ukurannya, nah solusinya agar Logical Volume ukurannya
juga mengikuti ukuran sebagaimana ukuran real Volume Group "lvm-hda" saat ini
maka Anda harus mengextend "Logical Volume" lvm0 dengan perintah sbb:

[root@sotnec ~]# lvextend -l 1199 /dev/lvm-hda/lvm0 /dev/hda12
Extending logical volume lvm0 to 4.68 GB
Logical volume lvm0 successfully resized

Catatan:
-l 1199 menunjukkan total PE yang Anda dapat lihat dari perintah "vgdisplay"


Selanjutnya meresize juga ukuran partisi /dev/lvm-hda/lvm0. Untuk itu
coba lakukan langkah-langkah berikut ini:

Umount terlebih dahulu partisi /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# umount /media/lvm/

Check/scan file system sbb:

[root@sotnec ~]# e2fsck -f /dev/lvm-hda/lvm0
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/lvm-hda/lvm0: 4034/490560 files (0.1% non-contiguous), 37159/980992
blocks

Kemudian coba Anda resize file system /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# resize2fs /dev/lvm-hda/lvm0 4600M
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/lvm-hda/lvm0 to 1177600 (4k) blocks.
The filesystem on /dev/lvm-hda/lvm0 is now 1177600 blocks long.


Coba Anda mount lagi /dev/lvm-hda/lvm0 sbb:

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/

Lalu lihatlah ukurannya saat ini, sbb:

[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
4.5G 85M 4.2G 2% /media/lvm

Dan coba lihat data yg ada pada /dev/lvm-hda/lvm0, tidak hilang
dan tetap ada bukan ?

[root@sotnec ~]# ls /media/lvm/
etc lost+found




===============================================================================
Mengurangi (Reduce) ukuran disk partisi LVM Anda.
===============================================================================

Hal yang sebaliknya dapat juga Anda lakukan (harus hati-hati !!) yaitu
mengurangi atau memperkecil ukuran partisi LVM Anda tetapi tentunya
pengurangan jangan sampai size total partisi LVM lebih kecil dari size yang sudah
digunakan pada partisi LVM tersebut. Nah untuk memperkecil atau mengurangi
partisi LVM , dapat Anda lakukan sbb:

Umount terlebih dahulu partisi /dev/lvm-hda/lvm0, sbb:

[root@sotnec ~]# umount /media/lvm/

Check/scan file system sbb:

[root@sotnec ~]# e2fsck -f /dev/lvm-hda/lvm0
e2fsck 1.35 (28-Feb-2004)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/lvm-hda/lvm0: 4034/588672 files (0.1% non-contiguous), 40237/1177600
blocks

Lalu resize partisi LVM (misalnya menjadi 4200M atau 4.2G) sbb:

[root@sotnec ~]# resize2fs /dev/lvm-hda/lvm0 4200M
resize2fs 1.35 (28-Feb-2004)
Resizing the filesystem on /dev/lvm-hda/lvm0 to 1075200 (4k) blocks.
The filesystem on /dev/lvm-hda/lvm0 is now 1075200 blocks long.


Dan cobalah Anda mount partisi LVM tersebut, sbb:

[root@sotnec ~]# mount /dev/lvm-hda/lvm0 /media/lvm/
[root@sotnec ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/hda8 7.7G 3.7G 3.7G 51% /
/dev/hda6 6.7G 6.0G 363M 95% /opt/source
none 121M 0 121M 0% /dev/shm
/dev/mapper/lvm--hda-lvm0
4.1G 85M 3.8G 3% /media/lvm

Nah tampak bukan ukuran Size partisi LVM ("lvm0") saat ini menjadi "+/- 4,1G".

Selamat mencoba..

By Henry Saptono

Tidak ada komentar:

Posting Komentar