LVM Volume Group/Logical Volume(Disk)’in başka sisteme taşınması

Share

Bugünku konumuz, cok nadir de olsa daha önceden oluşturmuş olduğumuz LVM diskin başka sisteme taşınması.

Bugünkü yazi çok sevdiğim bir arkadaşımın sunucularındakı disk kapasite artrırımına gitmesi ve mevcut kullanımda olan LVM disklerinindeki verinin sorunsuz olarak taşınması ihtiyacının ortaya çıkması nedeniyle yazmak istedim.

Volume Group/Logical Volume(Disk)’in başka bir sisteme taşınması oldukca basit ve kolay bir işlemdir.
Bu işlemi gerceklestirmek için vgexport/vgimport LVM komutları kullanılmaktadır.

File system’in unmount (Çikartmak) edilmesi;

Ilk olarak, aktif olan Volume’un unmount (Devreden cikartmak) edilmesi gerekmektedir.
Bu sekilde kullanıcıların erişimi kesilmis olur.

Daha onceden olusturmuş olduğumuz yapi;

[root@earth ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00066145

Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 2350 18566144 83 Linux
/dev/sda3 2350 2611 2097152 82 Linux swap / Solaris

Disk /dev/sdb: 42.9 GB, 42949672960 bytes
228 heads, 22 sectors/track, 16723 cylinders
Units = cylinders of 5016 * 512 = 2568192 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xc305e531

Device Boot Start End Blocks Id System
/dev/sdb1 1 3895 9765625 8e Linux LVM

Disk /dev/sdc: 42.9 GB, 42949672960 bytes
139 heads, 49 sectors/track, 12316 cylinders
Units = cylinders of 6811 * 512 = 3487232 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x18e0d666

Device Boot Start End Blocks Id System
/dev/sdc1 1 3080 10485760 8e Linux LVM

Disk /dev/mapper/vgProdData-lvProdData: 20.4 GB, 20401094656 bytes
255 heads, 63 sectors/track, 2480 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

[root@earth ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb1 vgProdData lvm2 a-- 9.31g 312.00m
/dev/sdc1 vgProdData lvm2 a-- 10.00g 0
[root@earth ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vgProdData 2 1 0 wz--n- 19.30g 312.00m
[root@earth ~]# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
lvProdData vgProdData -wi-ao---- 19.00g
[root@earth ~]#

[root@earth ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 18274628 6359612 10986712 37% /
tmpfs 957244 72 957172 1% /dev/shm
/dev/sda1 297485 39143 242982 14% /boot
/ISO/rhel-server-6.5-x86_64-dvd.iso 3762278 3762278 0 100% /RHEL6-Repo
/dev/mapper/vgProdData-lvProdData 19610300 176200 18437956 1% /ProdData
[root@earth ~]#

Taşınmasını planladığımız diskimiz /ProdData ya mount olan vgProdData group volume içinde bulunan lvProdData logic volume.

NOT: Eğer taşınacak volume /etc/fstab uzerinden kalıcı yapıldı ise, /etc/fstab dosyasinin da guncellenmesi gerekmektedir.

[root@earth ~]# umount /ProdData

Taşınacak olan LVM Volume Group’un inactive edilmesi;

LVM Group’un inactive edilmesi, LVM diskin uzerinde oluşabilecek erşim ve veri değişimini kernel tarafından engellenmesini sağlar.

[root@earth ~]# vgchange -an vgProdData
0 logical volume(s) in volume group "vgProdData" now active
[root@earth ~]#

LVM Volume Group(Disk)’in Export edilmesi;

LVM Volume Group(Disk)’in eski sunucudan cıkartılması için vgexport komutu ile hazırlık yapılmaktadır.

[root@earth ~]# vgexport vgProdData
Volume group "vgProdData" successfully exported
[root@earth ~]#

Bu işlem başarılı bir şekilde tamamlandıktan sonra, eski sunucumuzu kapatabiliriz. Fiziksel diskler uygun bir şekilde çıkartılıp yeni sunucuya takılmalıdır.

Burada önemli olan konu, taşınacak olan disklerin yapısı, Standart disk, RAID vb.
Söz konusu Diskler HP Proliant Sunucusunda taşınacagından, sunucu uzerindeki disklerler Hardware RAID olarak konfigure edildiğinden yeni sunucuya takıldıktan sonra meta data/konfig Diskler uzerinden alacğından yapı sorunsuz bir sekilde taşınacaktır.

LVM Volume (Disk)’in Import edilmesi;

Daha önceki yazılarımda belirtmiş olduğum online disk ekleme işlemi de yapmak mümkün olmaktadır.
Kullanmakta olduğunuz sunucunuz kritik sunucu ise ve kapatmanız mümkün değil ise hpacucli tool’u kullanılarak diskleri sisteme tanıtabilir sonra da bir önceki yazımda belirtmiş olduğum yöntem ile online kernel’a diskleri göstermek mümkündür.

NOT: Anlatım VM sunucu üzerinde olduğundan diskler /dev/sdb ve /dev/sdc olarak sisteme görünüyor olacak. Proliant Sunucu uzerinde yaptığınızda /dev/cciss/c0d0 seklinde görülecektir.

[root@mars ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0004f87a

Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 2350 18566144 83 Linux
/dev/sda3 2350 2611 2097152 82 Linux swap / Solaris
[root@mars ~]#

[root@mars ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@mars ~]# echo "- - -" > /sys/class/scsi_host/host1/scan
[root@mars ~]# echo "- - -" > /sys/class/scsi_host/host2/scan
[root@mars ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0004f87a

Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 2350 18566144 83 Linux
/dev/sda3 2350 2611 2097152 82 Linux swap / Solaris

Disk /dev/sdb: 42.9 GB, 42949672960 bytes
228 heads, 22 sectors/track, 16723 cylinders
Units = cylinders of 5016 * 512 = 2568192 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xc305e531

Device Boot Start End Blocks Id System
/dev/sdb1 1 3895 9765625 8e Linux LVM

Disk /dev/sdc: 42.9 GB, 42949672960 bytes
139 heads, 49 sectors/track, 12316 cylinders
Units = cylinders of 6811 * 512 = 3487232 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x18e0d666

Device Boot Start End Blocks Id System
/dev/sdc1 1 3080 10485760 8e Linux LVM
[root@mars ~]#

Yeni diskleri pvscan komutu ile kontrol edebiliriz;

[root@mars ~]# pvscan
PV /dev/sdb1 is in exported VG vgProdData [9.31 GiB / 312.00 MiB free]
PV /dev/sdc1 is in exported VG vgProdData [10.00 GiB / 0 free]
Total: 2 [19.30 GiB] / in use: 2 [19.30 GiB] / in no VG: 0 [0 ]
[root@mars ~]#
Disklerin Linux İşletim sisteminde sorunsuz geldiğini görüldükten sonra Import işlemi yapilabilir. Import işlemi için yeni sunucuda;

[root@mars ~]# vgimport vgProdData
Volume group "vgProdData" successfully imported
[root@mars ~]#
NOT: LVM Disk yönetimi eski surum ise (LVM 1) kullanılacak komut’a fiziksel volume(lar)ın da eklenmesi gerekmektedir.

# vgimport vgProdData /dev/sdb1 /dev/sdc1
vgimport -- doing automatic backup of volume group "vgProdData"
vgimport -- volume group "vgProdData" successfully imported and activated

LVM Volume Group (Disk)’in active edilmesi;

Eski sunucumuzdan LVM Volume group kaldırılmadan once inactive edilmisti. Import işlemi tamamlandıktan sonra actvate etmemiz gerekmektedir

[root@mars ~]# vgchange -ay vgProdData
1 logical volume(s) in volume group "vgProdData" now active
[root@mars ~]#
Aktivasyon işlem tamamlandıktan sonra Logical Volume yani asıl verinin oldugu Volume(lar)’in kontrolu yapılması gerekmetedir.

LVM Volume Goup(Disk)’in mount (bağlanması) edilmesi;

[root@mars ~]# mkdir /ProdData
[root@mars ~]# mount /dev/vgProdData/lvProdData /ProdData/
[root@mars ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 18274628 3162696 14183628 19% /
tmpfs 957244 80 957164 1% /dev/shm
/dev/sda1 297485 39141 242984 14% /boot
/dev/sr0 3762278 3762278 0 100% /media/RHEL_6.5 x86_64 Disc 1
/dev/mapper/vgProdData-lvProdData 19610300 176200 18437956 1% /ProdData
[root@mars ~]#

NOT: Diski kalıcı yapmak isterseniz /etc/fstab dosyasini guüncelleminiz gerekmektedir. Daha onceki yazimizda detay bilgi bulabilrsiniz.

Ve LVM Volume Group(Disk)/Logical Volume(lar) kullanıma hazır…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.