Wie erstelle ich eine VM von Grund auf mit virsh?

24

Es sieht so aus, als könnten Sie mit virsh keine brandneue VM erstellen, es sei denn, Sie haben bereits eine funktionierende XML-Datei.

Ich habe gerade alle erforderlichen Bits installiert, damit QEMU-KVM funktioniert, und muss jetzt meine erste VM erstellen.

Wie man?

Hinweis: Ich habe keine Grafiken!

EnzoR
quelle
Hey, ich überlege mir nur ein paar Fragen. Wie sind Sie damit umgegangen?
I_GNU_it_all_along
Ich habe das Problem gelöst, indem ich die Manpages und die offiziellen QEMU- und KVM-Websites sowie eine Reihe von Tests und Versuchen durchgesehen habe. Ich habe darum gebeten, alles manuell zu erledigen, stattdessen habe ich Antworten auf die Vorgehensweise bei Anwendungen von Drittanbietern. Ich bin fast fertig und werde meine Arbeitslösungen auch hier so schnell wie möglich veröffentlichen.
EnzoR
1
@I_GNU_it_all_along Deine ist die einzig sinnvolle Antwort / Bemerkung, die ich bisher habe.
EnzoR
1
Vielen Dank. Tut mir leid, ich kann Ihnen bei der manuellen Installation nicht weiterhelfen.
I_GNU_it_all_along
1
@I_GNU_it_all_along Ich fand das Ding der vorgekochten XML-Datei wirklich nervig. Ich glaube nicht, dass ich ein dummer Affe bin, wenn ich verstehen will. Das Problem mit libvrtd-basiertem Zeug ist, dass es zu wenig Dokumentation gibt und jeder mit einem Black-Box-Ansatz ziemlich vertraut zu sein scheint. Vielen Dank.
EnzoR

Antworten:

36

Es ist eine ziemlich gute Komplettlösung hier . Das Tool, das Sie verwenden möchten, ist virt-install, das Sie bereits haben sollten, wenn Sie alles installiert haben, was für QEMU-KVM erforderlich ist. Hier ist der relevanteste Abschnitt.

6. Erstellen einer neuen Gast-VM mit virt-install

Das virt-install-Tool wird zum Erstellen der VM verwendet. Dieses Tool kann sowohl im interaktiven als auch im nicht interaktiven Modus verwendet werden.

Im folgenden Beispiel habe ich alle erforderlichen Werte zum Erstellen einer VM als Befehlszeilenparameter an den Befehl virt-install übergeben.

# virt-install \
-n myRHELVM1 \
--description "Test VM with RHEL 6" \
--os-type=Linux \
--os-variant=rhel6 \
--ram=2048 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/myRHELVM1.img,bus=virtio,size=10 \
--graphics none \
--cdrom /var/rhel-server-6.5-x86_64-dvd.iso \
--network bridge:br0

Im obigen Befehl virt-install haben die Parameter folgende Bedeutung:

  • n: Name Ihrer virtuellen Maschine

  • description: Eine gültige Beschreibung Ihrer VM. Zum Beispiel: Anwendungsserver, Datenbankserver, Webserver usw.

  • os-type: Der Betriebssystemtyp kann Linux, Solaris, Unix oder Windows sein.

  • os-variant: Verteilungstyp für den obigen Betriebssystemtyp. Beispielsweise kann es sich bei Linux um rhel6, centos6, ubuntu14, suse11, fedora6 usw. handeln.

    Für Windows kann dies win2k, win2k8, win8, win7 sein

  • ram: Speicher für die VM in MB

  • vcpu: Gesamtzahl der virtuellen CPUs für die VM.

  • disk path=/var/lib/libvirt/images/myRHELVM1.img,bus=virtio,size=10: Pfad, in dem die VM-Image-Dateien gespeichert sind. Größe in GB. In diesem Beispiel hat diese VM-Image-Datei eine Größe von 10 GB.

  • graphics none: Dies weist virt-install an, eine Textkonsole an der seriellen VM-Schnittstelle anstelle eines grafischen VNC-Fensters zu verwenden. Wenn Sie den xmanager eingerichtet haben, können Sie diesen Parameter ignorieren.

  • cdrom: Gibt den Speicherort des Installationsabbilds an. Sie können den NFS- oder http-Installationsort angeben (anstelle von –-cdrom). Beispielsweise: --location=http://.com/pub/rhel6/x86_64/*

  • network bridge:br0: In diesem Beispiel wird der Bridged-Adapter br0 verwendet. Es ist auch möglich, ein eigenes Netzwerk an einem bestimmten Port anstelle eines überbrückten Adapters zu erstellen.

    Wenn Sie NAT verwenden möchten, verwenden Sie für den Netzwerkparameter mit dem virtuellen Netzwerknamen VMnetwork1 Folgendes. Alle Netzwerkkonfigurationsdateien befinden sich unter / etc / libvirt / qemu / networks / für die virtuellen Maschinen. Beispielsweise:

    –-network network=VMnetwork1

I_GNU_it_all_along
quelle
6
Es ist ziemlich seltsam, dass dies in den meisten Dokumentationen nicht erwähnt wird, sondern davon ausgegangen wird, dass Sie bereits eine funktionierende VM haben, wenn Sie das Tutorial wahrscheinlich gerade deshalb lesen, weil Sie dies nicht tun. Trotzdem danke. :)
Teekin