Ada satu senario berlaku dimana 1 compute perlu dialihkan dari VMWare dan
migrate ke fizikal server VMware to Physical (V2P). Masalah berlaku
apabila fizikal storage space kurang daripada VMWare storage.
Fizikal = 250GB
VMWare = 500GB
df -hPTKonfigurasi semasa, pada ROOT punya size adalah 450G, baru guna hanya 58G. Bermakna ada 392G lagi free space, akan tapi bila nak clone ke fizikal disk yang lebih kecil, tidak akan berjaya kerana ia allocated space keseluruhan 450G.
Solusi adalah dengan mengurangkan size pada LVM hingga mencukupi size storage
fizikal.
Arahan untuk cipta folder dan mount: -
Umount filesystems dengan jalankan arahan:-
Pada asalnya partition 3 (nvme0n1p3) mempunyai 450G absolute, saya nak
kurangkan kepada 110G sahaja, dengan menggunakan tool fdisk, perkara ini
dapat di capai.
Ringkasan apa yang akan dilakukan :-
- Oleh kerana Used hanya 58G maka kita akan buat satu backup img ke lokasi sementara.
- Delete LV Partition root.
- Kurangkan partition size menggunakan diskpart.
- Cipta semula PV Partition root.
- Restore kembali backup img yang kita buat tadi.
Boot to Rescure Mode Centos 8
Pastikan anda memilih pilihan no 3 Skip to shell, kerana kita tidak mahu rescure mode ni mount filesystem.
Aktifkan Volume Group (VG)
vgchange -ay
Mount Logical Volumes (LV)
Used storage 58GB, jadi saya mount hard disk lagi satu untuk
jadikan backup sementara, bergantung pada ketersediaan storage anda,
boleh juga gunapakai usb drive atau external drive untuk dijadikan
backup sementara. Dalam kes ni saya mempunyai 2 internal hard
disk:
- /dev/nvme0n1 (Internal sebagai filesystem, LVM yang ingin dikecilkan partition size nya)
- /dev/nvme0n2 (Internal sebagai backup sementara)
mkdir /mnt/sysimage/rt mkdir /mnt/sysimage/backup mount /dev/mapper/cl_monitoring-root /mnt/sysimage/rt mount /dev/nvme0n2p1 /mnt/sysimage/backup
xfsdump untuk backup filesystem
Jalankan arahan xfsdump untuk membuat backup :-
xfsdump -l 0 -L "root lv backup" -M "backup" -f /mnt/sysimage/backup/rootbak.img /mnt/sysimage/rt
Pastikan Dump Status: SUCCESS, dan barulah kita ke langkah
seterusnya.
Umount filesystems dengan jalankan arahan:-
umount /mnt/sysimage/rt/
fdisk untuk kurangkan partition volume
fdisk /dev/nvme0n1 - Jalankan tool fdisk ke harddisk nvme0n1 d - delete partition 3 - partition no 3 (nvme0np3) n - create new partition p - primary partition 3 - partition no 3 +110G - disk space sebanyak 110G n - NO untuk tidak membuang LVM signature t - partition type 8e - 8e code untuk partition type xfs w - write (save)
Kurangkan XFS volume | cipta semula logical volume
lvremote /dev/mapper/cl_monitoring-root
Cipta XFS file system
lvcreate -Zy -L 100G -n root cl_monitoring
jadikan filesystem yang kita baru cipta tadi sebagai xfs
mkfs.xfs /dev/mapper/cl_monitoring-root
Mount dan restore
Mount semula root partition sebagai filesystem tadi untuk kita restore dari backup yang kita cipta.
mount /dev/mapper/cl_monitoring-root
Jalankan arahan xfsrestore untuk restore kembali filesystem kita:-
xfsrestore -f /mnt/sysimage/backup/rootbak.img /mnt/sysimage/rt
Pastikan Restore Status: SUCCESS
Akhir sekali, kita boot ke sistem operasi dan lihat perubahan pada LVM, daripada 450GB kepada 110GB.
Sekarang dah boleh clone ke fizikal hard disk yang space mencukupi. Saya gunakan macrium reflect untuk clone.
Kredit kepada:
- How to Shrink XFS Partition for the root filesystem | 1 Easy guide - December 23, 2020 by Babin Lonston
- LVM2: Extend file system - October 1, 2017 by Haruto Sato
Sekian,
Terima kasih.
No comments:
Post a Comment