In unserem vorherigen Artikel der Linux KVM-Reihe haben wir erklärt, wie man Linux KVM installiert und eine Gast-VM erstellt.
Aber sobald Sie eine Gast-VM erstellt haben, müssen Sie wissen, wie einige der routinemäßigen Wartungsaktivitäten auf der VM durchgeführt werden.
In diesem Tutorial wird erklärt, wie die folgenden Linux KVM VM-Aktivitäten durchgeführt werden:
- Arbeitsspeicher zur VM hinzufügen
- vCPU zur VM hinzufügen
- Festplatte zu VM hinzufügen
- VM-Konfiguration speichern
- Löschen Sie eine VM
1. Arbeitsspeicher zur virtuellen Maschine hinzufügen
Um Ihrer VM zusätzlichen Arbeitsspeicher hinzuzufügen, sollten Sie wie folgt vorgehen:
- Fahren Sie Ihre VM herunter
- Bearbeiten Sie die VM-Datei und erhöhen Sie den Wert des dieser VM zugewiesenen maximalen Arbeitsspeichers
- Starten Sie die VM neu
- Verwenden Sie virsh setmem, um den Arbeitsspeicher auf den maximal für diese VM zugewiesenen Arbeitsspeicher einzustellen.
Lassen Sie uns in diesem Beispiel den Speicher der VM von myRHELVM1 von 2 GB auf 4 GB erhöhen.
Fahren Sie zuerst die VM mit virsh shutdown wie unten gezeigt herunter:
# virsh shutdown myRHELVM1 Domain myRHELVM1 is being shutdown
Bearbeiten Sie als Nächstes die VM mit virsh edit:
# virsh edit myRHELVM1
Suchen Sie nach der folgenden Zeile und ändern Sie den Wert für den Speicher wie folgt. In meinem Beispiel war es früher 2097152:
<memory unit='KiB'>4194304</memory>
Bitte beachten Sie, dass der obige Wert in KB angegeben ist. Nachdem Sie die Änderung vorgenommen haben, speichern und beenden Sie:
# virsh edit myRHELVM1 Domain myRHELVM1 XML configuration edited.
Starten Sie die VM mit der aktualisierten Konfigurationsdatei neu. Jetzt sehen Sie, dass der maximale Speicher von 2 GB auf 4 GB erhöht wurde.
Sie können den VM-Speicher jetzt dynamisch bis zur maximalen 4G-Grenze ändern.
Erstellen Sie die Domänen-XML-Datei mit virsh create
# virsh create /etc/libvirt/qemu/myRHELVM1.xml Domain myRHELVM1 created from /etc/libvirt/qemu/myRHELVM1.xml
Zeigen Sie den verfügbaren Arbeitsspeicher für diese Domäne an. Wie Sie unten sehen, hat diese Domain nur 2 GB (benutzter Speicher), obwohl der maximal verfügbare Speicher 4 GB beträgt.
# virsh dominfo myRHELVM1 | grep memory Max memory: 4194304 KiB Used memory: 2097152 KiB
Stellen Sie den Speicher für diese Domain mit virsh setmem wie unten gezeigt auf 4 GB ein:
# virsh setmem myRHELVM1 4194304
Nun zeigt das Folgende, dass wir dieser Domain 4 GB (benutzter Speicher) zugewiesen haben.
# virsh dominfo myRHELVM1 | grep memory Max memory: 4194304 KiB Used memory: 4194304 KiB
2. VCPU zur VM hinzufügen
Um die der VM zugewiesene virtuelle CPU zu erhöhen, führen Sie virsh edit aus und ändern Sie den vcpu-Parameter wie unten beschrieben.
Lassen Sie uns in diesem Beispiel den Speicher der VM von myRHELVM1 von 2 GB auf 4 GB erhöhen.
Fahren Sie zuerst die VM mit virsh shutdown wie unten gezeigt herunter:
# virsh shutdown myRHELVM1 Domain myRHELVM1 is being shutdown
Bearbeiten Sie als Nächstes die VM mit virsh edit:
# virsh edit myRHELVM1
Suchen Sie nach der folgenden Zeile und ändern Sie den Wert für vcpu wie folgt. In meinem Beispiel war es früher 2.
<vcpu placement='static'>4</vcpu>
Erstellen Sie die Domänen-XML-Datei mit virsh create
# virsh create /etc/libvirt/qemu/myRHELVM1.xml Domain myRHELVM1 created from /etc/libvirt/qemu/myRHELVM1.xml
Zeigen Sie die dieser Domäne zugewiesenen virtuellen CPUs wie unten gezeigt an. Dies weist darauf hin, dass wir die vCPU von 2 auf 4 erhöht haben.
# virsh dominfo myRHELVM1 | grep -i cpu CPU(s): 4 CPU time: 21.0s
3. Festplatte zu VM hinzufügen
In diesem Beispiel haben wir nur zwei virtuelle Laufwerke (vda1 und vda2) auf dieser VM.
# fdisk -l | grep vd Disk /dev/vda: 10.7 GB, 10737418240 bytes /dev/vda1 * 3 1018 512000 83 Linux /dev/vda2 1018 20806 9972736 8e Linux LVM
Das Erstellen und Anhängen eines neuen Speichergeräts an eine Linux-KVM-Gast-VM umfasst zwei Schritte:
- Erstellen Sie zuerst ein virtuelles Disk-Image
- Hängen Sie das Image der virtuellen Festplatte an die VM an
Lassen Sie uns eine weitere virtuelle Festplatte erstellen und an unsere VM anhängen. Dazu müssen wir zuerst eine Disk-Image-Datei mit dem Befehl qemu-img create erstellen, wie unten gezeigt.
Im folgenden Beispiel erstellen wir ein virtuelles Festplatten-Image mit einer Größe von 7 GB. Die Disk-Images befinden sich normalerweise im Verzeichnis /var/lib/libvirt/images/.
# cd /var/lib/libvirt/images/ # qemu-img create -f raw myRHELVM1-disk2.img 7G Formatting 'myRHELVM1-disk2.img', fmt=raw size=7516192768
Um das neu erstellte Disk-Image anzuhängen, verwenden Sie den Befehl virsh Attach-Disk wie unten gezeigt:
# virsh attach-disk myRHELVM1 --source /var/lib/libvirt/images/myRHELVM1-disk2.img --target vdb --persistent Disk attached successfully
Der obige virsh Attach-Disk-Befehl hat die folgenden Parameter:
- myRHELVM1 Der Name der VM
- –source Der vollständige Pfad des Quell-Disk-Images. Dies ist diejenige, die wir oben mit dem Befehl qemu-image erstellt haben. d. h.:myRHELVM1-disk2.img
- –target Dies ist der Einhängepunkt des Geräts. In diesem Beispiel möchten wir das angegebene Disk-Image als /dev/vdb anhängen. Bitte beachten Sie, dass wir /dev nicht wirklich angeben müssen. Es reicht, wenn Sie einfach vdb angeben.
- –persistent gibt an, dass die Festplatte, die mit der VM verbunden ist, persistent ist.
Wie Sie unten sehen, ist das neue /dev/vdb jetzt auf der VM verfügbar.
# fdisk -l | grep vd Disk /dev/vda: 10.7 GB, 10737418240 bytes /dev/vda1 * 3 1018 512000 83 Linux /dev/vda2 1018 20806 9972736 8e Linux LVM Disk /dev/vdb: 7516 MB, 7516192768 bytes
Jetzt können Sie das /dev/vdb-Gerät partitionieren und mehrere Partitionen /dev/vdb1, /dev/vdb2 usw. erstellen und es auf der VM mounten. Verwenden Sie fdisk, um die Partitionen zu erstellen, wie wir zuvor erklärt haben.
Um eine Festplatte von der Gast-VM zu trennen, können Sie den folgenden Befehl verwenden. Achten Sie jedoch darauf, die richtige vd* anzugeben, da Sie sonst möglicherweise das falsche Gerät entfernen.
# virsh detach-disk myRHELVM1 vdb Disk detached successfully
4. Konfiguration der virtuellen Maschine speichern
Wenn Sie viele Änderungen an Ihrer VM vornehmen, wird empfohlen, die Konfigurationen zu speichern.
Verwenden Sie die Datei virsh dumpxml, um eine Sicherungskopie zu erstellen und die Konfigurationsinformationen Ihrer VM wie unten gezeigt zu speichern.
# virsh dumpxml myRHELVM1 > myrhelvm1.xml # ls myrhelvm1.xml myrhelvm1.xml
Sobald Sie die Konfigurationsdatei im XML-Format haben, können Sie Ihre Gast-VM jederzeit aus dieser XML-Datei neu erstellen, indem Sie den Befehl virsh create wie unten gezeigt verwenden:
virsh create myrhelvm1.xml
5. Virtuelle KVM-Maschine löschen
Wenn Sie zu Testzwecken mehrere VMs erstellt haben und diese löschen möchten, sollten Sie die folgenden drei Schritte ausführen:
- Fahren Sie die VM herunter
- Zerstören Sie die VM (und definieren Sie sie)
- Entfernen Sie die Disk-Image-Datei
Lassen Sie uns in diesem Beispiel die VM myRHELVM2 löschen. Fahren Sie zuerst diese VM herunter:
# virsh shutdown myRHELVM2 Domain myRHELVM2 is being shutdown
Zerstören Sie als Nächstes diese VM wie unten gezeigt:
# virsh destroy myRHELVM2 Domain myRHELVM2 destroyed
Abgesehen davon, dass Sie sie zerstören, sollten Sie die VM auch wie unten gezeigt aufheben:
# virsh undefine myRHELVM2 Domain myRHELVM2 has been undefined
Entfernen Sie schließlich alle Disk-Image-Dateien, die Sie für diese VM erstellt haben, aus dem Verzeichnis /var/lib/libvirt/images:
Jetzt können Sie die Disk-Img-Datei unter /var/lib/libvirt/images entfernen
rm /var/lib/libvirt/images/myRHELVM2-disk1.img rm /var/lib/libvirt/images/myRHELVM2-disk2.img