GNU/Linux >> Belajar Linux >  >> Linux

Cara Memperpanjang Ukuran Disk Mesin Virtual KVM Di Linux

Panduan singkat ini menjelaskan apa itu Virt-size alat baris perintah dan bagaimana kami dapat memperluas atau memperluas ukuran disk mesin virtual KVM menggunakan alat Virt-resize di Linux.

Suatu hari saya perhatikan bahwa salah satu mesin Virtual KVM saya kehabisan ruang disk. Saya tidak dapat menginstal aplikasi baru atau tidak dapat menyimpan file karena ruang disk yang rendah. Untuk memperbaiki masalah ini, saya cukup meningkatkan ukuran disk mesin virtual KVM menggunakan virt-size memerintah. Saya pribadi menguji langkah-langkah yang diberikan di bawah ini untuk meningkatkan ukuran disk mesin virtual CentOS 8 KVM dan itu berfungsi seperti yang diharapkan.

Alat pengubahan ukuran virt

Ubah ukuran virt adalah alat baris perintah untuk mengubah ukuran disk mesin virtual. Menggunakan virt-resize, kita dapat menambah atau mengurangi ukuran disk mesin virtual. Kita juga dapat menghapus partisi di dalam virtual disk dengan perintah virt-resize. Harap dicatat bahwa virt-mengubah ukuran mesin hidup. Sistem tamu harus dimatikan sebelum mengubah ukuran gambar disk.

Untuk memperluas ukuran disk mesin Virtual, pertama-tama kita membuat image disk yang lebih besar daripada image sumber. Dan kemudian kita menyalin gambar sumber ke gambar tujuan dan akhirnya mengubah ukurannya.

Virt-resize adalah bagian dari libguestfs-tools kemasan. Untuk menginstal paket libguestfs-tools di Debian, Ubuntu dan turunannya, jalankan:

$ sudo apt install libguestfs-tools

Untuk menginstal paket libguestfs-tools di Fedora, RHEL dan klonnya, jalankan:

$ sudo dnf install libguestfs-tools

Di Fedora 34, guestfs-tools package menyediakan alat virt-resize. Jadi jika Anda menggunakan Fedora 34, instal guestfs-tools paket seperti di bawah ini:

$ sudo dnf install guestfs-tools

Sekarang mari kita lihat bagaimana memperluas ukuran disk mesin virtual menggunakan virt-resize memerintah.

Memperluas atau memperluas ukuran disk mesin virtual KVM di Linux

Untuk tujuan panduan ini, saya akan menggunakan disk image mesin virtual CentOS 8 bernama centos8.qcow2 . Saya telah menyimpan mage ini di direktori kerja saya saat ini. Anda dapat menggunakan virsh dumpxml perintah untuk menemukan gambar disk yang ingin Anda ubah ukurannya.

Contoh:

$ virsh dumpxml centos8

Ganti centos8 dengan nama VM Anda pada perintah di atas.

Setelah menemukan gambar disk yang ingin Anda ubah ukurannya, periksa detail partisi di dalam gambar disk ini. Untuk mencetak detail partisi dan ukurannya dari image disk, jalankan:

$ virt-filesystems --long --parts --blkdevs -h -a centos8.qcow2 

Contoh keluaran:

 Name       Type       MBR  Size  Parent
 /dev/sda1  partition  83   1.0G  /dev/sda
 /dev/sda2  partition  8e   19G   /dev/sda
 /dev/sda   device     -    20G   -

Seperti yang Anda lihat pada output di atas, image disk saya hanya memiliki dua partisi, yaitu /dev/sda1 dengan ukuran 1 GB dan /dev/sda2 dengan 19GB. Ukuran total gambar disk adalah 20 GB.

Sekarang kita akan,

  • menambah total ukuran gambar disk dari 20 GB menjadi 30 GB ,
  • tambah ukuran partisi pertama /dev/sda1 dari 1,0 GB hingga 1,5 GB ,
  • Perluas partisi kedua /dev/sda2 untuk mengisi ruang yang tersisa.

Virt-resize tidak dapat mengubah ukuran gambar disk di tempat. Juga, Virt-resize tidak boleh digunakan pada mesin virtual langsung. Sebelum mengubah ukuran disk image, matikan mesin Virtual dan ambil cadangan disk image asli.

$ mv centos8.qcow2 centos8.qcow2.backup

Perintah di atas akan mengganti nama disk image saat ini menjadi centos8.qcow2 ke centos8.qcow2.backup .

Buat disk image baru dengan nama yang sama dan ukuran 30GB menggunakan perintah:

$ qemu-img create -f qcow2 -o preallocation=metadata centos8.qcow2 30G

Contoh keluaran:

Formatting 'centos8.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off preallocation=metadata compression_type=zlib size=32212254720 lazy_refcounts=off refcount_bits=16

Pastikan ukuran disk yang baru dibuat adalah 30GB:

$ virt-filesystems --long --parts --blkdevs -h -a centos8.qcow2

Contoh keluaran:

Name      Type    MBR  Size  Parent
 /dev/sda  device  -    30G   -

Sekarang perluas/perpanjang ukuran gambar disk mesin virtual KVM menggunakan perintah:

$ virt-resize --resize /dev/sda1=+500M --expand /dev/sda2 centos8.qcow2.backup centos8.qcow2

Di sini,

  • --resize /dev/sda1=+500M - memperbesar ukuran /dev/sda1 partisi menjadi 500 MB.
  • --expand /dev/sda2 - mengubah ukuran /dev/sda2 partisi ke untuk mengisi semua ruang yang tersisa. Dalam kasus saya, ukurannya akan diubah dari 19.0G menjadi 28.5G.
  • centos8.qcow2.backup - ini adalah gambar disk masukan asli.
  • centos8.qcow2 - ini adalah gambar disk keluaran yang baru dibuat.

Contoh output dari perintah di atas adalah:

[   0.0] Examining centos8.qcow2.backup
 
 Summary of changes:
 /dev/sda1: This partition will be resized from 1.0G to 1.5G.  The 
 filesystem ext4 on /dev/sda1 will be expanded using the ‘resize2fs’ 
 method.
 /dev/sda2: This partition will be resized from 19.0G to 28.5G.  The LVM PV 
 on /dev/sda2 will be expanded using the ‘pvresize’ method.
 
 [   4.2] Setting up initial partition table on centos8.qcow2
 [   5.6] Copying /dev/sda1
  100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
 [   9.7] Copying /dev/sda2
  100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
 [  45.1] Expanding /dev/sda1 using the ‘resize2fs’ method
 [  45.3] Expanding /dev/sda2 using the ‘pvresize’ method
 Resize operation completed with no errors.  Before deleting the old disk, 
 carefully check that the resized disk boots and works correctly.

Periksa partisi dan ukurannya dengan virt-filesystems perintah:

$ virt-filesystems --long -h --all -a centos8.qcow2

Contoh keluaran:

 Name          Type        VFS   Label  MBR  Size  Parent
 /dev/sda1     filesystem  ext4  -      -    1.4G  -
 /dev/cl/root  filesystem  xfs   -      -    17G   -
 /dev/cl/swap  filesystem  swap  -      -    2.0G  -
 /dev/cl/root  lv          -     -      -    17G   /dev/cl
 /dev/cl/swap  lv          -     -      -    2.0G  /dev/cl
 /dev/cl       vg          -     -      -    29G   /dev/sda2
 /dev/sda2     pv          -     -      -    29G   -
 /dev/sda1     partition   -     -      83   1.5G  /dev/sda
 /dev/sda2     partition   -     -      8e   29G   /dev/sda
 /dev/sda      device      -     -      -    30G   -

Seperti yang Anda lihat pada output di atas, ukuran disk image CentOS8 KVM saya telah diubah ukurannya dari 20 GB menjadi 30 GB.

Sekarang boot mesin virtual dengan image disk baru. Anda juga dapat membuat mesin virtual baru menggunakan gambar Qcow2 seperti yang dijelaskan dalam tautan berikut.

  • Membuat Mesin Virtual KVM Menggunakan Gambar Qcow2 Di Linux

Jika berfungsi tanpa masalah, periksa secara menyeluruh apakah semua data Anda ada. Jika semuanya baik-baik saja, hapus disk cadangan yang lama.

Jika ada masalah dengan disk baru, matikan mesin virtual dan ganti nama disk cadangan ke nama aslinya. Ulangi langkah di atas dengan hati-hati lagi. Jangan lupa backup data dan disk image.


Linux
  1. Cara Menambahkan Memori, vCPU, Hard Disk ke Mesin Virtual KVM Linux

  2. Linux KVM di Virtualbox

  3. Cara memperluas partisi PV Linux secara online setelah pertumbuhan disk virtual

  1. Cara mempartisi disk di Linux

  2. Bagaimana menghapus Mesin Virtual berbasis KVM di Redhat Linux

  3. Bagaimana Cara Memeriksa Apakah Sistem Linux Berjalan di Sistem Fisik atau Mesin Virtual?

  1. Cara Membuat Snapshot Mesin Virtual KVM dengan Perintah Virsh

  2. Cara Memeriksa Apakah Sistem Linux Adalah Mesin Fisik Atau Virtual

  3. Bagaimana Mengkonversi VMDK (Virtual Machine Disk) ke VDI menggunakan VBoxManage?