Virtualisierungsfrage: KVM/qemu
Hallo, alle im Urlaub? Da in der ML 'virtual@lists.opensuse.org' seit über einem Jahr nichts mehr läuft, frage ich mal hier: Ich habe einen alten Rechner zum KVM-Host (openSUSE Leap 15.2) gemacht, da kann ich nun meine Spielereien ausprobieren ohne jedes mal eine andere HW plattmachen zu müssen. Läuft perfekt :-) Das Konfigurieren eines OS auf einer VM ist nun das was noch Zeit kostet. Das Installieren des OS auf der VM geht ja schnell. Ich habe nun ein paar kleine Skripte geschrieben die von einer entfernten Maschine aus, auf dem KVM-Host einen Klon einer vorhandenen VM erzeugen, ihn starten und eine Verbindung vom entfernten Rechner zum neuen Klon herstellen. Das geht sehr schnell und der Klon nimmt nur minimalen Platz in Anspruch. (wg. CoW) Nun möchte ich das ein anderer als 'root' diese Skripte starten kann. Da die benötigten Aufrufe auf dem KVM-Host unter System: laufen, mussten einige Veränderungen vorgenommen werden: Zunächst habe ich die 'Access Control' angepasst: Dazu habe ich eine Gruppe libvirt erstellt und den fraglichen User vBernd zum Mitglied dieser Gruppe gemacht. Dieser User ist auch Mitglied in der Gruppe kvm. Dann habe ich in '/etc/libvirt/libvirt.conf' die drei Einträge: unix_sock_group = "libvirt" unix_sock_rw_perms = "0770" auth_unix_rw = "none" vorgenommen. In '/etc/libvirt/qemu.conf' habe ich: user = "vBernd" group = "libvirt" dynamic_ownership = 1 eingetragen. Dann den libvirtd neu gestartet und auf dem KVM-Host: # su - vBernd eingegeben Wenn ich dort aber nun: # virsh list --all eingebe, erhalte ich nur die Kopfzeilen: Id Name Status --------------------- Was nun? Für mich sieht es so aus als wenn das Programm virsh läuft. Es wirft keinen Fehler. Aber die Ausgabe ich eben auch nicht die erwartete ... Auch die Programme virt-install und virt-clone scheinen zu laufen. (Habe das nicht ausprobiert, aber der pure Aufruf der Programme ohne die benötigten Optionen bringt die gleichen Meldungen wie beim User root. Bernd -- Die normative Kraft des Faktischen behindert die Entwicklung zum Besseren.
Nachtrag: Wenn ich die Verbindung zum KVM-Host via "Virtuelle Maschinenverwaltung" aufbaue, werden sowohl der Benutzer vBernd akzeptiert als auch alle VM angezeigt. Die grundsätzliche Konfiguration scheint also zu stimmen. evtl. läuft virsh beim User vBernd also nicht mit den passenden Rechten. (Also Session: statt System:) Wie kann ich das denn kontrollieren? Bernd Am 03.09.21 um 08:41 schrieb Bernd Nachtigall:
Hallo,
alle im Urlaub?
Da in der ML 'virtual@lists.opensuse.org' seit über einem Jahr nichts mehr läuft, frage ich mal hier:
Ich habe einen alten Rechner zum KVM-Host (openSUSE Leap 15.2) gemacht, da kann ich nun meine Spielereien ausprobieren ohne jedes mal eine andere HW plattmachen zu müssen. Läuft perfekt :-)
Das Konfigurieren eines OS auf einer VM ist nun das was noch Zeit kostet. Das Installieren des OS auf der VM geht ja schnell. Ich habe nun ein paar kleine Skripte geschrieben die von einer entfernten Maschine aus, auf dem KVM-Host einen Klon einer vorhandenen VM erzeugen, ihn starten und eine Verbindung vom entfernten Rechner zum neuen Klon herstellen. Das geht sehr schnell und der Klon nimmt nur minimalen Platz in Anspruch. (wg. CoW)
Nun möchte ich das ein anderer als 'root' diese Skripte starten kann. Da die benötigten Aufrufe auf dem KVM-Host unter System: laufen, mussten einige Veränderungen vorgenommen werden:
Zunächst habe ich die 'Access Control' angepasst: Dazu habe ich eine Gruppe libvirt erstellt und den fraglichen User vBernd zum Mitglied dieser Gruppe gemacht. Dieser User ist auch Mitglied in der Gruppe kvm. Dann habe ich in '/etc/libvirt/libvirt.conf' die drei Einträge: unix_sock_group = "libvirt" unix_sock_rw_perms = "0770" auth_unix_rw = "none" vorgenommen. In '/etc/libvirt/qemu.conf' habe ich: user = "vBernd" group = "libvirt" dynamic_ownership = 1 eingetragen.
Dann den libvirtd neu gestartet und auf dem KVM-Host: # su - vBernd eingegeben
Wenn ich dort aber nun: # virsh list --all eingebe, erhalte ich nur die Kopfzeilen: Id Name Status ---------------------
Was nun?
Für mich sieht es so aus als wenn das Programm virsh läuft. Es wirft keinen Fehler. Aber die Ausgabe ich eben auch nicht die erwartete ...
Auch die Programme virt-install und virt-clone scheinen zu laufen. (Habe das nicht ausprobiert, aber der pure Aufruf der Programme ohne die benötigten Optionen bringt die gleichen Meldungen wie beim User root.
Bernd
-- Die normative Kraft des Faktischen behindert die Entwicklung zum Besseren.
Muuuaah ... so einfach ... Da ging mein Nachtrag ja in die richtige Richtung ... Danke! Bernd Am 03.09.21 um 09:29 schrieb Ulf Volmer:
On 03.09.21 08:41, Bernd Nachtigall wrote:
Wenn ich dort aber nun: # virsh list --all eingebe, erhalte ich nur die Kopfzeilen: Id Name Status ---------------------
Versuche doch bitte:
alias virsh='virsh --connect qemu:///system'
Viele Grüße Ulf
-- Die normative Kraft des Faktischen behindert die Entwicklung zum Besseren.
Am Freitag, 3. September 2021, 08:41:58 CEST schrieb Bernd Nachtigall:
Hallo,
alle im Urlaub?
Da in der ML 'virtual@lists.opensuse.org' seit über einem Jahr nichts mehr läuft, frage ich mal hier:
Ich habe einen alten Rechner zum KVM-Host (openSUSE Leap 15.2) gemacht, da kann ich nun meine Spielereien ausprobieren ohne jedes mal eine andere HW plattmachen zu müssen. Läuft perfekt :-)
Das Konfigurieren eines OS auf einer VM ist nun das was noch Zeit kostet. Das Installieren des OS auf der VM geht ja schnell. Ich habe nun ein paar kleine Skripte geschrieben die von einer entfernten Maschine aus, auf dem KVM-Host einen Klon einer vorhandenen VM erzeugen, ihn starten und eine Verbindung vom entfernten Rechner zum neuen Klon herstellen. Das geht sehr schnell und der Klon nimmt nur minimalen Platz in Anspruch. (wg. CoW)
Nun möchte ich das ein anderer als 'root' diese Skripte starten kann. Da die benötigten Aufrufe auf dem KVM-Host unter System: laufen, mussten einige Veränderungen vorgenommen werden:
Zunächst habe ich die 'Access Control' angepasst: Dazu habe ich eine Gruppe libvirt erstellt und den fraglichen User vBernd zum Mitglied dieser Gruppe gemacht. Dieser User ist auch Mitglied in der Gruppe kvm. Dann habe ich in '/etc/libvirt/libvirt.conf' die drei Einträge: unix_sock_group = "libvirt" unix_sock_rw_perms = "0770" auth_unix_rw = "none" vorgenommen. In '/etc/libvirt/qemu.conf' habe ich: user = "vBernd" group = "libvirt" dynamic_ownership = 1 eingetragen.
Dann den libvirtd neu gestartet und auf dem KVM-Host: # su - vBernd eingegeben
Wenn ich dort aber nun: # virsh list --all eingebe, erhalte ich nur die Kopfzeilen: Id Name Status ---------------------
Was nun?
Warum so kompliziert? Ich füge einfach einen USer zur Gruppe libvirt. Sonst ändere ich überhaupt nichts. Nicht in libvirt.conf noch in qemu.conf. Noch lege ich irgendwelche aliases an. Gruß Eric
Am 03.09.21 um 10:45 schrieb Eric Schirra: (...)
Warum so kompliziert? Ich füge einfach einen USer zur Gruppe libvirt. Sonst ändere ich überhaupt nichts. Nicht in libvirt.conf noch in qemu.conf. Noch lege ich irgendwelche aliases an.(...)
Das klappt auf einem Leap 15.2? Und Du kannst danach Klone von VM aus dem system: Kontext anlegen? Bernd -- Die normative Kraft des Faktischen behindert die Entwicklung zum Besseren.
Am Freitag, 3. September 2021, 11:04:07 CEST schrieb Bernd Nachtigall:
Am 03.09.21 um 10:45 schrieb Eric Schirra: (...)
Warum so kompliziert? Ich füge einfach einen USer zur Gruppe libvirt. Sonst ändere ich überhaupt nichts. Nicht in libvirt.conf noch in qemu.conf. Noch lege ich irgendwelche aliases an.(...)
Das klappt auf einem Leap 15.2?
Unter Leap 15.2 und 15.3.
Und Du kannst danach Klone von VM aus dem system: Kontext anlegen?
Weiß nicht genau was du damit meinst. Aber eine vorhande VM kann ich über die GUI clonen. Gruß Eric
On 03.09.21 11:12, Eric Schirra wrote:
Am Freitag, 3. September 2021, 11:04:07 CEST schrieb Bernd Nachtigall:
Und Du kannst danach Klone von VM aus dem system: Kontext anlegen?
Weiß nicht genau was du damit meinst.
Es gibt bei libvirt/qemu einen System und einen Session Kontext. Details findest Du z.B. unter https://libvirt.org/drvqemu.html Viele Grüße Ulf
Am Freitag, 3. September 2021, 17:38:02 CEST schrieb Ulf Volmer:
On 03.09.21 11:12, Eric Schirra wrote:
Am Freitag, 3. September 2021, 11:04:07 CEST schrieb Bernd Nachtigall:
Und Du kannst danach Klone von VM aus dem system: Kontext anlegen?
Weiß nicht genau was du damit meinst.
Es gibt bei libvirt/qemu einen System und einen Session Kontext.
Details findest Du z.B. unter
https://libvirt.org/drvqemu.html
Viele Grüße Ulf
Wieder was gelernt. Verwende Libvirt seit gefühlt 15 Jahren, aber das habe ich nicht gewusst. Mal schauen ob ichs irgendwann brauch. Gut zu wissen, danke! - Ich hab auf fast allen Rechnern hier libvirt laufen, verbinde mich mit virt- manager drauf und betreibe damit auch meine Mini-Cloud beim Hetzner... Ursprünglich auf XEN, dann KVM, seit 15? Jahren mit libvirt/virt-manager. Tut alles was ich brauche, inkl. Netzwerk für OpenVPN-Schulungen. :-) Die Kontext-Geschichte war mir neu, die schaue ich mir mal an... -- Best Regards - Mit freundlichen Grüßen, Markus Feilner, Feilner IT - 20 years of open services - ------------------------- Agile Recursive Documentation: – Document it or it didn't happen! – ------------------------- Digitale Souveränität, Nachhaltigkeit, Dokumentation Linux, Security, Strategy, Politics, Journalism, Networking. https://www.feilner-it.net, 93059 Regensburg Wöhrdstr. 10, +49 170 302 7092 (+Signal) PGP: 40A3C306F96133067C11CFD9A958A906268C9F0A http://www.feilner-it.net/files/MFpub.asc Xing: http://www.xing.com/profile/Markus_Feilner LinkedIn: https://www.linkedin.com/in/markusfeilner @mfeilner: Matrix, Jabber, Skype, Twitter, Diaspora, ...
On 03.09.21 18:01, Markus Feilner wrote:
Am Freitag, 3. September 2021, 17:38:02 CEST schrieb Ulf Volmer:
Es gibt bei libvirt/qemu einen System und einen Session Kontext.
Details findest Du z.B. unter
nicht gewusst. Mal schauen ob ichs irgendwann brauch. Gut zu wissen, danke! - Ich hab auf fast allen Rechnern hier libvirt laufen, verbinde mich mit virt- manager drauf und betreibe damit auch meine Mini-Cloud beim Hetzner... Ursprünglich auf XEN, dann KVM, seit 15? Jahren mit libvirt/virt-manager. Tut alles was ich brauche, inkl. Netzwerk für OpenVPN-Schulungen. :-)
Für Single- User Installationen ist es vermutlich wurscht, was man da nimmt. Spätestens, wenn man Server Installationen mit verteilter Administration einsetzt, wird man wohl den System- Kontext bevorzugen. Viele Grüße Ulf
participants (4)
-
Bernd Nachtigall
-
Eric Schirra
-
Markus Feilner
-
Ulf Volmer