libvirt
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| libvirt [2020-11-25 10:51:36] – [Installation einer VM auf einem Linux-Ubuntu-Host] manfred | libvirt [2020-11-25 17:06:18] (aktuell) – [libvirt] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== libvirt ====== | ||
| + | |||
| + | * [[http:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | Das Kommandozeilenwerkzeug Virsh des libvirt Toolkits dient zur Verwaltung von virtuellen Maschinen. Es unterstützt dabei zahlreiche Virtualisierungstechnologien, | ||
| + | |||
| + | |||
| + | ===== Virsh-Parameter im Überblick ===== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | ^ Virsh-Parameter | ||
| + | | list -****-all | ||
| + | | list -****-inactive | ||
| + | | dominfo < | ||
| + | | nodeinfo | ||
| + | | start < | ||
| + | | shutdown < | ||
| + | | destroy < | ||
| + | | suspend < | ||
| + | | resume < | ||
| + | | console < | ||
| + | | dumpxml < | ||
| + | | create vm.xml | ||
| + | | undefine < | ||
| + | | setmem < | ||
| + | | setvcpus < | ||
| + | | migrate < | ||
| + | |||
| + | ^ Verbindungsmöglichkeiten mit Virsh ^^ | ||
| + | ^ URI ^ Hypervisor | ||
| + | | lxc:/ | ||
| + | | **qemu:/ | ||
| + | | xen:/ | ||
| + | | openvz:/ | ||
| + | | vbox:/ | ||
| + | | hyperv:/ | ||
| + | | esx:/ | ||
| + | | gsx:/ | ||
| + | | vmwareplayer:/ | ||
| + | | vmwarews:/ | ||
| + | |||
| + | ^ Verbindung per Virsh ^^ | ||
| + | ^ URI ^ Protokoll | ||
| + | | **virsh -c qemu+ssh:/ | ||
| + | | virsh -c qemu:/ | ||
| + | | virsh -c qemu+tcp:/ | ||
| + | |||
| + | |||
| + | ===== Installation einer VM auf einem Linux-Ubuntu-Host ===== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ==== CentOS 7 - Gast ==== | ||
| + | |||
| + | < | ||
| + | virt-install \ | ||
| + | --name centos7 \ | ||
| + | --ram 1024 \ | ||
| + | --disk path=./ | ||
| + | --vcpus 1 \ | ||
| + | --os-type linux \ | ||
| + | --os-variant centos7 \ | ||
| + | --network bridge=virbr0 \ | ||
| + | --graphics none \ | ||
| + | --console pty, | ||
| + | --location ' | ||
| + | --extra-args ' | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== FreeBSD 10.1 - Gast ==== | ||
| + | |||
| + | > wget http:// | ||
| + | |||
| + | < | ||
| + | virt-install \ | ||
| + | --name freebsd10 \ | ||
| + | --ram 1024 \ | ||
| + | --disk path=./ | ||
| + | --vcpus 1 \ | ||
| + | --os-type generic \ | ||
| + | --os-variant generic \ | ||
| + | --network bridge=virbr0 \ | ||
| + | --graphics vnc, | ||
| + | --console pty, | ||
| + | --cdrom ./ | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Ubuntu 14.04 - Gast ==== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | > apt install bridge-utils virtinst libvirt-clients qemu-kvm libvirt-bin virt-manager | ||
| + | |||
| + | __Jetzt muss sich der entsprechende (unprivilegierte) Benutzer neu anmelden, damit die Aufnahme in die Gruppe '' | ||
| + | |||
| + | > virt-install -n web_devel -r 256 --disk path=/ | ||
| + | |||
| + | Das Paket virt-manager enthält ein grafisches Werkzeug, um lokale und entfernte virtuelle Maschinen zu verwalten. Geben Sie folgendes ein, um virt-manager zu installieren: | ||
| + | > aptitude install virt-manager | ||
| + | |||
| + | Da virt-manager eine grafische Benutzeroberfläche erfordert, sollte es auf einer Workstation oder einer Testmaschine anstatt eines Servers installiert werden. Um sich mit dem lokalen libvirt-Dienst zu verbinden, geben Sie folgendes ein: | ||
| + | > virt-manager | ||
| + | > virt-manager -c qemu:/// | ||
| + | |||
| + | Es sollten diese Einstellungen vorgenommen werden: | ||
| + | * Anzeige Spice (Standard) | ||
| + | * Video VGA (Standard ist " | ||
| + | * //Audio kann entfernt werden// | ||
| + | |||
| + | Sie können sich mit folgender Befehlszeileneingabe mit dem auf einem anderen Host laufenden libvirt-Dienst verbinden (hier muss der passwortlose SSH-Login möglich sein, siehe: [[SSH-Schlüssel austauschen für ein passwortlosen Login]]): | ||
| + | > virt-manager -c qemu+ssh:// | ||
| + | |||
| + | |||
| + | === LibVirt-Netzwerk === | ||
| + | |||
| + | * [[https:// | ||
| + | |||
| + | > vi / | ||
| + | |||
| + | > virsh net-list | ||
| + | | ||
| + | ---------------------------------------------------------- | ||
| + | | ||
| + | |||
| + | > virsh net-list --all | ||
| + | | ||
| + | ---------------------------------------------------------- | ||
| + | | ||
| + | | ||
| + | |||
| + | Es gibt mehrere Möglichkeiten, | ||
| + | |||
| + | Grundsätzlich besteht auch die Möglichkeit, | ||
| + | |||
| + | |||
| + | ===== Start/Stop ===== | ||
| + | |||
| + | VM **stoppen**: | ||
| + | root@vmhost01:# | ||
| + | |||
| + | nach dem stoppen muss die VM erst wieder " | ||
| + | root@vmhost01:# | ||
| + | Domain vmgast01 defined from / | ||
| + | |||
| + | ...jetzt steht sie wieder in der **Liste** drin: | ||
| + | root@vmhost01:# | ||
| + | | ||
| + | ---------------------------------------------------- | ||
| + | | ||
| + | | ||
| + | |||
| + | ...dann kann man die VM wieder **starten**: | ||
| + | root@vmhost01:# | ||
| + | Domain vmgast01 started | ||
| + | | ||
| + | root@vmhost01:# | ||
| + | | ||
| + | ---------------------------------------------------- | ||
| + | | ||
| + | | ||
| + | |||
| + | in der VM alles entfernen, was individuel ist; die SSH-Host-Keys werden nur bei der SSH-Installation angelegt und SSH wird durch " | ||
| + | root@vmgast01:# | ||
| + | root@vmgast01:# | ||
| + | root@vmgast01:# | ||
| + | |||
| + | VM anhalten | ||
| + | root@vmhost01:# | ||
| + | |||
| + | Reset, unconfigure or customize | ||
| + | root@vmhost01:# | ||
| + | |||
| + | Reset, unconfigure or customize von einer Auswahl, nicht alle | ||
| + | root@vmhost01:# | ||
| + | |||
| + | |||
| + | ===== Fehler mit virt-install ===== | ||
| + | |||
| + | > virt-install --virt-type kvm --name linux --ram 2048 --cdrom=ubuntu-18.04.1-server-amd64.iso --disk / | ||
| + | Installation wird gestartet … | ||
| + | ERROR internal error: process exited while connecting to monitor: 2018-10-31T15: | ||
| + | Installation der Domäne scheint nicht erfolgreich gewesen zu sein.. | ||
| + | |||
| + | **__Lösung__**: | ||
| + | > virt-install --virt-type kvm --name linux --ram 2048 --cdrom=ubuntu-18.04.1-server-amd64.iso --disk / | ||
| + | |||
| + | Das HDD-Image muss im richtigen Pfad liegen, sonst verhindert AppArmor den Zugriff. | ||
| + | |||
| + | **__Start-Skript: | ||
| + | <file bash libvirt-Test.sh> | ||
| + | #!/bin/bash | ||
| + | |||
| + | |||
| + | |||
| + | OS_VAR=" | ||
| + | NAME=" | ||
| + | RAM=" | ||
| + | |||
| + | IMG="/ | ||
| + | ISO="/ | ||
| + | |||
| + | rm -f ${IMG} | ||
| + | qemu-img create -f qcow2 ${IMG} 10G | ||
| + | chmod 0664 ${IMG} | ||
| + | virt-install --virt-type kvm --name ${NAME} --ram ${RAM} --cdrom=${ISO} --disk ${IMG}, | ||
| + | |||
| + | ls -lha ${IMG} | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Installation einer VM auf einem FreeBSD-Host ===== | ||
| + | |||
| + | * [[https:// | ||
| + | |||
