GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengubah Lokasi Kumpulan Penyimpanan Default KVM Libvirt

Panduan ini menjelaskan apa yang dimaksud dengan kumpulan dan volume penyimpanan di Libvirt dan cara mengubah lokasi kumpulan penyimpanan default libvirt KVM menggunakan Virsh program, Manajer-virt dan Kokpit di Linux.

Kolam penyimpanan dan volume di Libvirt

Libvirt menyediakan manajemen penyimpanan pada sistem host KVM melalui kumpulan dan volume penyimpanan.

Kumpulan penyimpanan adalah jumlah penyimpanan yang dialokasikan pada host KVM untuk digunakan oleh mesin virtual. Kumpulan penyimpanan dibagi menjadi volume penyimpanan dan ditetapkan ke VM sebagai perangkat blok.

Dengan kata lain, kolam penyimpanan adalah sumber daya penyimpanan pada sistem host KVM yang dapat digunakan untuk menyimpan volume. Dan volume penyimpanan adalah perangkat penyimpanan yang dapat ditetapkan ke mesin virtual.

Volume penyimpanan dapat berupa perangkat blok, misalnya partisi, volume logis, atau file. Hard disk virtual, perangkat cd/dvd/floppy, dan image ISO yang dilampirkan ke mesin tamu adalah contoh volume penyimpanan.

Anda tidak dapat memiliki volume penyimpanan tanpa kumpulan penyimpanan. Pertama, Anda perlu membuat kumpulan penyimpanan lalu membuat volume penyimpanan di dalam kumpulan.

Secara default, semua mesin virtual yang dibuat dengan libvirt disimpan di bawah /var/lib/libvirt/images/ lokasi. Ini adalah kumpulan penyimpanan default untuk gambar VM Libvirt.

Jenis kumpulan penyimpanan

Kumpulan penyimpanan dapat berupa salah satu dari jenis berikut:

  1. Kumpulan direktori - Gunakan direktori sebagai kumpulan untuk menghosting file gambar. File dapat berupa salah satu dari jenis format volume yang valid seperti gambar mentah, qcow, qcow2, dmg, vmdk, vpc, atau ISO.
  2. Kumpulan sistem file - Gunakan perangkat blok (Misalnya partisi atau grup LVM) sebagai kumpulan alih-alih menggunakan direktori pada sistem file terpasang yang ada.
  3. Kumpulan sistem file jaringan - Gunakan sistem file jaringan (Misalnya cifs , glusterfs , nfs dll) sebagai kolam untuk menyimpan volume penyimpanan. Alih-alih direktori atau perangkat blok, ini memerlukan host jaringan dan jalur direktori bersama.
  4. Kumpulan volume logis - Gunakan grup volume LVM sebagai kumpulan untuk menyimpan volume.
  5. Kumpulan disk - Gunakan disk fisik sebagai kumpulan. Volume dapat dibuat dengan menambahkan partisi ke disk.
  6. kumpulan iSCSI - Gunakan target iSCSI untuk menyimpan volume. Semua volume harus dialokasikan sebelumnya di server iSCSI.
  7. kumpulan langsung iSCSI - Ini adalah varian dari kumpulan iSCSI. Alih-alih menggunakan iscsiadm, ia menggunakan libiscsi . Ini membutuhkan host, jalur yang merupakan target IQN, dan IQN inisiator.
  8. Kumpulan SCSI - Gunakan adaptor bus host SCSI dengan cara yang hampir sama seperti target iSCSI.
  9. Kumpulan multipath - Saat ini, Multipath tidak didukung.
  10. RBD pool - Driver penyimpanan ini menyediakan pool yang berisi semua gambar RBD di pool RADOS. RBD (RADOS Block Device) adalah bagian dari proyek penyimpanan terdistribusi Ceph.
  11. Kolam anjing gembala - Gunakan Gugus Anjing Gembala sebagai kolam untuk menyimpan volume.
  12. Gluster pool - Gunakan sistem file terdistribusi Gluster sebagai pool.
  13. ZFS pool - Gunakan sistem file ZFS sebagai pool.
  14. Vstorage pool - Gunakan penyimpanan yang ditentukan perangkat lunak terdistribusi Virtuozzo sebagai pool.

Untuk tujuan panduan ini, kami akan menggunakan Directory pool .

1. Ubah Lokasi Kumpulan Penyimpanan Default KVM Libvirt

Seperti yang sudah dinyatakan, semua gambar KVM/Libvirt disimpan di /var/lib/libvirt/images/ lokasi secara default. Karena lokasi ini berada di rootfs partisi, Anda mungkin ingin memindahkannya ke lokasi lain, misalnya $HOME direktori.

Kita dapat mengubah lokasi default gambar KVM Libvirt VM menggunakan virsh program baris perintah dan front-end grafisnya yang disebut Manajer Virt , dan juga Kokpit konsol web.

Pertama, kita akan melihat cara mengubah jalur kumpulan penyimpanan default Libvirt menggunakan virsh program.

1.1. Ubah lokasi kumpulan penyimpanan default KVM Libvirt menggunakan program virsh

1.1.1. Masuk ke sistem host KVM Anda dan matikan semua tamu yang sedang berjalan.

Untuk menemukan daftar VM yang sedang berjalan, cukup lakukan:

$ daftar virsh --all

Matikan jika ada VM yang berjalan.

$ virsh shutdown

1.1.2. Buat daftar semua kumpulan penyimpanan yang dikonfigurasi di mesin host KVM Anda:

$ daftar kumpulan virsh 

Contoh keluaran:

 Nama Status Autostart default tidak aktif

Seperti yang Anda lihat, saya hanya memiliki satu kumpulan penyimpanan, yaitu default . Itu dibuat secara otomatis ketika kita menginstal kvm/libvirt .

1.1.3. Mari kita lihat detail kumpulan penyimpanan default menggunakan perintah:

$ virsh pool-info default 

Contoh keluaran:

 Nama:default UUID:76f47a3c-7656-4c34-9ab5-c87e5136d532 Status:berjalan Persisten:yes Autostart:no Kapasitas:369,22 GiB Alokasi:65,60 GiB Tersedia:303,62 GiB

Keluaran di atas mencantumkan detail seperti nama kumpulan penyimpanan, UUID, status, persisten, mulai otomatis, kapasitas, ruang yang dialokasikan dari kumpulan penyimpanan, dan sisa ruang yang tersedia.

Karena kita akan mengubah jalur kumpulan penyimpanan, kita juga perlu menemukannya.

1.1.4. Untuk menampilkan jalur kumpulan penyimpanan default, kami menggunakan grep perintah dengan virsh seperti di bawah ini:

$ virsh pool-dumpxml default | grep -i jalur

Contoh keluaran:

/var/lib/libvirt/images

Seperti yang Anda lihat pada output di atas, kumpulan penyimpanan default adalah /var/lib/libvirt/images/ . Kami akan mengubahnya di langkah selanjutnya.

1.1.5. Buat daftar semua gambar VM yang ada yang disimpan di kumpulan penyimpanan default menggunakan virsh seperti di bawah ini:

$ virsh daftar vol default | grep "/var/lib/libvirt/images/"

Contoh keluaran:

archlinux.img /var/lib/libvirt/images/archlinux.img

Saya memiliki satu gambar mesin virtual Arch Linux di kumpulan penyimpanan default.

1.1.6. Hentikan dan tentukan kumpulan penyimpanan default dengan perintah:

$ virsh pool-destroy default
$ virsh pool-undefine default

1.1.7. Edit kumpulan penyimpanan default menggunakan perintah:

$ virsh pool-edit default 

Ini akan membuka file XML VM di editor default Anda.

Temukan baris yang bertuliskan "<path>/var/lib/libvirt/images</path>" di bawah target direktif dan ubah ke jalur baru pilihan Anda.

Dalam kasus saya, saya telah mengubah <path> elemen dari /var/lib/libvirt/images ke /home/sk/.local/share/libvirt/images .

 default 76f47a3c-7656-4c34-9ab5-c87e5136d532 396452147200 71178977280 325273169920    /home/sk/.local/share/ libvirt/images  0755 1000 
1000
   

Pastikan saja jalur baru ada. Jika ada, buat saja dan berikan izin yang memadai ke direktori jalur baru. Simpan file dan tutup.

KIAT:

Jika tidak ada kumpulan Penyimpanan default karena alasan apa pun, Anda dapat membuatnya seperti di bawah ini:

$ virsh pool-define-as --name default --type dir --target /home/sk/.local/share/libvirt/images/

Ganti jalur penyimpanan dengan milik Anda.

1.1.8. Terakhir, mulai kumpulan penyimpanan default:

$ virsh pool-start default

1.1.9. Setel kumpulan penyimpanan untuk memulai secara otomatis pada boot sistem:

$ virsh pool-autostart default

1.1.10. Verifikasi apakah jalur kumpulan penyimpanan libvirt telah diubah atau tidak dengan perintah:

$ virsh pool-dumpxml default | grep -i jalur

Anda sekarang akan melihat jalur baru.

 /home/sk/.local/share/libvirt/images

Mulai sekarang, gambar virtual akan disimpan di kumpulan penyimpanan baru.

1.1.11. Periksa status kumpulan penyimpanan:

$ virsh pool-list Nama Status Autostart------------------------------- default aktif ya

1.1.12. Mulai ulang layanan libvirtd:

$ sudo systemctl restart libvirtd

1.1.13. Kita perlu melakukan satu hal terakhir. Salin semua gambar VM dari jalur penyimpanan lama ke yang baru:

$ sudo mv /var/lib/libvirt/images/archlinux.qcow2 /home/sk/.local/share/libvirt/images/

Semua selesai!

Ini adalah bagaimana kami mengubah lokasi kumpulan penyimpanan default KVM Libivrt ke yang baru dari baris perintah menggunakan Virsh program. Seperti yang Anda lihat, mengubah jalur penyimpanan default untuk tamu KVM/Libvirt cukup mudah!

Sekarang mari kita lihat bagaimana mengubah jalur kumpulan penyimpanan default Libvirt menggunakan aplikasi grafis bernama Virt-manager .

1.2. Ubah lokasi kumpulan penyimpanan default KVM Libvirt menggunakan Virt-manager

Manajer-virt , kependekan dari Virtual Machine Manager, adalah aplikasi antarmuka pengguna grafis yang digunakan untuk mengelola mesin virtual melalui libvirt . Dengan kata lain, Virt-manager adalah front-end grafis yang adil untuk libvirt .

1.2.1. Buka aplikasi Virt-manager. Klik kanan pada QEMU/KVM dan klik Detail pilihan.

Anda juga dapat mengeklik Edit-> Detail sambungan dari antarmuka Virt-manager.

1.2.2. Di bawah Penyimpanan bagian, Anda akan melihat lokasi kumpulan penyimpanan default.

1.2.3. Klik Hentikan Pangkalan lalu Hapus Pangkalan opsi di panel kiri bawah.

Ini akan menonaktifkan dan menghapus kumpulan default.

1.2.4. Klik tambah (+) tanda tangani di panel kiri bawah untuk membuat kumpulan penyimpanan baru untuk digunakan oleh mesin virtual.

Masukkan nama untuk kumpulan penyimpanan (Misalnya default dalam hal ini). Pilih jenis kolam. Dalam kasus kami, saya telah memilih Filesystem Directory . Tentukan lokasi target dan klik Selesai.

1.2.5. Sekarang Penyimpanan baru aktif. Periksa Mulai Otomatis box untuk memulai kumpulan penyimpanan baru secara otomatis saat boot sistem.

1.2.6. Pindahkan semua gambar VM dari direktori penyimpanan lama ke yang baru.

$ sudo mv /var/lib/libvirt/images/archlinux.qcow2 /home/sk/.local/share/libvirt/images/

1.2.7. Terakhir, mulai ulang layanan libvirtd:

$ sudo systemctl restart libvirtd

1.3. Ubah lokasi kumpulan penyimpanan default KVM Libvirt menggunakan Cockpit

Kokpit adalah alat administrasi server berbasis web gratis untuk memantau dan mengelola server Linux melalui browser web.

1.3.1 Buka browser web Anda dan masuk ke konsol Cockpit dengan menavigasi ke http://localhost:9090 atau http://IP-address:9090 dari bilah alamat.

1.3.2. Klik Mesin Virtual tab di panel kiri. Di sisi kanan, klik Kolam penyimpanan pilihan.

1.3.3. Di bawah bagian Storage pools, Anda akan melihat storage pool default. Klik panah kecil untuk memperluas tab kumpulan penyimpanan dan klik Nonaktifkan dan Hapus tombol.

Catatan: Karena saya sudah mengubah lokasi penyimpanan default, ini menunjukkan jalur baru. Di sistem Anda, ini akan menampilkan jalur default lama yaitu /var/lib/libvirt/images .

1.3.4. Masukkan nama kumpulan penyimpanan, jenis, dan jalur target, lalu klik Buat . Pastikan kotak centang Startup dicentang.

1.3.5. Klik Aktifkan tombol untuk memulai kumpulan.

1.3.6. Pindahkan semua gambar VM dari direktori penyimpanan lama ke yang baru.

$ sudo mv /var/lib/libvirt/images/archlinux.qcow2 /home/sk/.local/share/libvirt/images/

1.3.7. Mulai ulang layanan libvirtd:

$ sudo systemctl restart libvirtd

Pemecahan Masalah

Setelah Mengubah jalur kumpulan penyimpanan, Anda mungkin akan mengalami kesalahan berikut saat memulai VM:

Gagal memulai domain 'Archlinux_default' kesalahan:Tidak dapat mengakses file penyimpanan '/home/sk/.local/share/libvirt/images/Archlinux_default.img' (sebagai uid:107, gid:107):Izin ditolak. 

Ini karena qemu pengguna mungkin tidak memiliki izin membaca ke direktori penyimpanan. Untuk memperbaikinya, lihat tautan berikut:

  • [Terpecahkan] Tidak dapat mengakses file penyimpanan, Izin ditolak Kesalahan di KVM Libvirt

Kesimpulan

Dalam panduan ini, kami membahas topik KVM/Libvirt yang penting - Kolam penyimpanan . Kami mempelajari apa itu kumpulan dan volume penyimpanan, lalu bagaimana mengubah lokasi kumpulan penyimpanan default kvm libvirt menggunakan tiga program, yaitu VIrsh, Virt-manager, dan Cockpit. Semoga ini bermanfaat bagi Anda.


Linux
  1. Konfigurasikan penyimpanan virtual KVM default di Redhat Linux

  2. Cara Mengubah Direktori 'DocumentRoot' Apache Default di Linux

  3. Cara Mengubah Aplikasi Default Debian

  1. Bagaimana cara mengubah lokasi qmake PREFIX

  2. Bagaimana cara membuat dupe dari VM KVM/libvirt/virt-manager?

  3. Bagaimana saya bisa mengubah grup default pengguna di Linux?

  1. Linux – Bagaimana Cara Membuat Dupe Of A Kvm/libvirt/virt-manager Vm?

  2. Bagaimana Mengubah Program "membaca" Default?

  3. Bagaimana cara mengubah shell default saya di akun domain