Öffentliche Veröffentlichung von VirtualBox KVM
(cyberus-technology.de)Öffentliche Veröffentlichung von VirtualBox KVM
- Cyberus Technology hat das KVM-Backend von VirtualBox als Open Source veröffentlicht.
- VirtualBox ist ein plattformübergreifender Virtual Machine Monitor (VMM), der verschiedene Gastbetriebssysteme unterstützt und eine konsistente Benutzeroberfläche auf mehreren Host-Betriebssystemen bietet.
- Mit dem KVM-Backend kann VirtualBox den Linux-KVM-Hypervisor zum Ausführen virtueller Maschinen nutzen, anstelle des benutzerdefinierten Kernel-Moduls, das die Standardversion von VirtualBox verwendet.
Open-Source-Veröffentlichung
- Um sein Versprechen gegenüber Open Source einzulösen, hat Cyberus Technology das KVM-Backend unter einer Open-Source-Lizenz auf GitHub veröffentlicht.
- Nutzer können VirtualBox und das KVM-Backend von Cyberus Technology über GitHub bauen und die verbesserten Funktionen direkt nutzen.
- Die Roadmap für 2024 enthält weitere spannende Funktionen, und es sind zusätzliche Beiträge geplant, die bei jeder Veröffentlichung von Updates auf technische Details eingehen werden.
Support erhalten
- Wenn Sie VirtualBox und KVM nutzen möchten oder eine maßgeschneiderte Virtualisierungslösung benötigen, steht Cyberus Technology mit Beratung und Engineering-Services bereit.
- Nutzer, die Support erhalten möchten, können über das Support-Formular oder per E-Mail an service@cyberus-technology.de Kontakt aufnehmen.
GN⁺-Meinung:
- Die Open-Source-Veröffentlichung des KVM-Backends für VirtualBox ist ein wichtiger Fortschritt für die Weiterentwicklung von Virtualisierungstechnologien sowie für Nutzer- und Entwickler-Communities, die breitere Kompatibilität anstreben.
- Diese Ankündigung steht für technischen Fortschritt, da sie Leistungsverbesserungen bei virtuellen Maschinen, stärkere Sicherheit und eine breitere Unterstützung für Hardware- und Gast-Anwendungsfälle ermöglicht.
- Die Bemühungen von Cyberus Technology, zur Open-Source-Community beizutragen, dürften die Weiterentwicklung und Innovation von Open-Source-Software fördern.
1 Kommentare
Meinungen auf Hacker News
Wer VirtualBox nutzt, sollte beim Extension Pack vorsichtig sein. Oracle ist sehr klagefreudig.
https://www.reddit.com/r/sysadmin/comments/147k6az/oracle_is...
https://www.reddit.com/r/sysadmin/comments/d1ttzp/oracle_is_...
https://www.theregister.com/2019/10/04/oracle_virtualbox_mer...
In unserer Organisation haben wir VirtualBox verboten. VMware Workstation oder virt-manager sind deutlich günstiger, als sich mit Oracle auseinanderzusetzen.
Deshalb mussten wir so schnell wie möglich dafür sorgen, dass es niemand mehr nutzt. Das gilt natürlich nicht nur für VBox, sondern genauso für Datenbanken; man fährt besser damit, sie einfach zu meiden.
Man kann nicht jemandem auf der Straße eine Banane in die Hand drücken und drei Monate später zurückkommen und 1000 Dollar verlangen.
Endlich ist es da. Jedes Mal, wenn ich virtuelle Maschinen betreibe, wähle ich libvirt, weil es schneller und einfacher zu handhaben ist als VirtualBox, aber die GUI-Optionen waren wirklich dürftig.
Selbst virt-manager, die „beste“ libvirt-GUI, ist voller Bugs und es fehlen Funktionen. Sie kommt mit HiDPI-Displays nicht gut zurecht, und es gibt zum Beispiel keine Möglichkeit, IPv6 zu konfigurieren.
Ich habe mehrfach VirtualBox gewählt, obwohl die Performance schlechter ist als bei libvirt/KVM, einfach weil die Bedienung angenehmer ist. Jetzt scheint das nicht mehr nötig zu sein.
$ virsh net-dumpxml default6default673590ea2-eb15-4e67-b104-319721bdf302Bei Bedarf kann man auch DHCPv6 verwenden.
Die beiden sind praktisch das genaue Gegenteil. Ich nutze virt-manager, weil die GUI einfacher ist, und die VirtualBox-Konfiguration ist ohnehin fast ein Albtraum.
Jedenfalls ist diese Funktion ein Schritt in die richtige Richtung. Ich bin gespannt, ob Distributionen sie übernehmen und ob sie irgendwann upstream integriert wird.
Damals war mein Haupt-PC Windows 10, und die Kommandozeilenumgebung unter Windows war ziemlich miserabel.
Macht das VirtualBox im Grunde zu einem Ersatz für virt-manager und virsh?
Soweit ich weiß, unterstützt VirtualBox kein PCI-Passthrough für Dinge wie GPUs; ich frage mich, wie solche Fälle gehandhabt werden.
Unter Linux bin ich zu QEMU/KVM gewechselt und habe VirtualBox nicht mehr angerührt, aber unter Windows nutze ich VirtualBox und merke jedes Mal, dass die GUI viel besser und zugänglicher ist.
Nebenbei habe ich gesehen, dass VirtualBox über das Extension Pack experimentelles PCI-Passthrough anbietet [0]. Lässt sich das auch mit dem KVM-Backend nutzen?
[0] https://docs.oracle.com/en/virtualization/virtualbox/6.0/adm...
Der praktische Vorteil ist, dass man das vbox-Kernelmodul, einen Drittanbieter-Treiber, nicht bei jedem Kernel-Upgrade neu kompilieren muss. DKMS versucht das zwar ohne Eingriff des Administrators zu erledigen, ist aber nicht immer fehlerfrei.
Gleichzeitig ist die VirtualBox-Anwendung darauf ausgelegt, gut in den Desktop integriert zu sein; per VNC auf den Gast zuzugreifen, ist daher kaum eine Alternative.
Für FreeBSD wäre ein ähnlicher Ansatz für den bhyve-Hypervisor wünschenswert.
Auch die Terminologiefrage ist interessant, wurde aber kürzlich schon im Zusammenhang mit dem Linux Direct Rendering Manager DRM behandelt. Diese Abkürzungen wurden in engeren Kreisen verwendet als in der „gesamten ICT“, und dasselbe galt für Keyboard-Video-Mouse-Geräte.
Weniger als 1 % der Fachleute beschäftigen sich auf diesem Niveau mit Linux-Interna, und auch weniger als 1 % sind Vor-Ort-Ingenieure in Serverräumen; es gab also kein kollektives Bewusstsein für diese Begriffe, weshalb sie wiederverwendet wurden.
LVM ist im Storage-Bereich bereits in Gebrauch, und LKVM könnte ebenfalls verwirrend sein.
Downvotes machen deine Distribution auch nicht kompetenter.
Ich verstehe nicht, was das gegenüber dem bringt, was man unter Linux mit KVM und virt-manager ohnehin schon bekommt
VirtualBox ist insgesamt benutzerfreundlicher. Gast-Integration, Drag & Drop, Zwischenablage, USB-Passthrough und Audio-Unterstützung sind bei VBox ebenfalls sehr gut
Die meisten virtuellen Maschinen sind verschlüsselt, sodass ich sie bedenkenlos mitnehmen kann. Verschiedene Geheimnisse sind zwar zusätzlich separat verschlüsselt, aber durch die Verschlüsselung der virtuellen Maschine selbst muss ich mir keine Sorgen machen, dass bei einem Geräteverlust am Flughafen Dinge offengelegt werden, auf die niemand Zugriff haben sollte
Mit virt-manager und KVM gibt es zwar Möglichkeiten, aber keine hat mir gefallen. Ich wollte mich nicht auf Verschlüsselung auf Dateisystemebene des Hosts verlassen, es gab auch Portabilitätsprobleme, und weil ich früher mit Full-Disk-Encryption ein paar Probleme hatte, fühlte es sich unangenehm an, mich darauf zu stützen
VirtualBox macht im Grunde ebenfalls Full-Disk-Encryption, aber sie ist für den Gast nicht sichtbar und wirkt zuverlässig
In Sachen Portabilität sollte ich mit https://www.vbox.me/ die virtuelle Maschine und den Host auf einem Flash-Laufwerk installieren und meine Umgebung ohne zusätzliche Installation auf jedem Windows-Host ausführen können. Ich habe das noch nicht wirklich ausprobiert, aber es war ein großer Pluspunkt
Inzwischen wird der Großteil meiner Umgebung automatisch mit Vagrant eingerichtet: https://github.com/robsheldon/vagrantfiles Damit bekomme ich auch einige Vorteile von virt-manager
Mir gefällt es wirklich nicht, in irgendeiner Form von Oracle abhängig zu sein
KVM kenne ich nur im Kontext von Keyboard-Video-Monitor-Geräten; zum Konzept virtueller Maschinen scheint das nicht recht zu passen. Bedeutet es hier etwas anderes?
https://en.m.wikipedia.org/wiki/Kernel-based_Virtual_Machine
Xen erweitert den Kernel, um virtuelle CPUs per Zeitscheiben zu unterstützen
KVM weist jeden virtuellen Core als Prozess zu, der den Linux-Scheduler verwendet
Wenn der vCPU-Core einer Hardware-VM präemptiert wird, löst das einen vmexit-Aufruf aus, bei dem Register usw. erneut eingerichtet werden müssen, und das ist teuer
Frühere AWS-Instanzen liefen auf Xen, was den Vorteil hatte, dass Fairness zwischen Gästen leichter herzustellen war
KVM hat den Vorteil, vom gut optimierten Linux-Scheduler auf Basis von Rot-Schwarz-Bäumen zu profitieren
Wenn zum Beispiel eine neue CPU erscheint, bekommt KVM Unterstützung upstream, während Xen sie selbst unterstützen muss
Mit Verbesserungen bei Technologien wie cgroups sorgte der Vorteil, Threads nicht wegen abgelaufener Zeitscheiben zu präemptieren, sondern sie fertig laufen zu lassen, dafür, vmexit-Kosten zu vermeiden
Theoretisch dürfte es auch VirtualBox zugutekommen, im Kern optimierte Linux-Funktionen zu nutzen
Die meisten Leute, die KVM verwenden, nutzen eine Abstraktionsschicht wie libvirt, die die Implementierungsdetails verbirgt
Wenn man sich tatsächlich die Prozesse ansieht, sieht man vermutlich qemu, auch wenn die Implementierung KVM ist
Das interessiert mich wirklich. Als Penetration Tester nutze ich ein Linux-Notebook und verbringe viel Zeit in einer Kali-VM in VirtualBox
Mit welchem Performance-Gewinn kann man durch ein KVM-Backend ungefähr rechnen?
Da man sich mit deren VPN verbinden muss, schien es mir sinnvoll, diese Aktivitäten von meinem privaten Netzwerk zu trennen
Mich würde interessieren, welche Netzwerkkonfiguration man für eine Pentesting-VM verwendet. Idealerweise soll die VM Zugriff aufs Internet und damit auf das HTB-VPN haben, aber keinen Zugriff auf mein lokales Netzwerk
Ich bin mir allerdings nicht sicher, wie man das zuverlässig umsetzt. Vielleicht ist der Gedanke von vornherein zu paranoid, um praktisch sinnvoll zu sein; deshalb würde mich die Sicht eines Experten interessieren
Normalerweise würde ich QEMU verwenden, aber wenn VirtualBox Funktionen enthält, die das einfacher machen, wäre VirtualBox in diesem Fall für mich in Ordnung
Allgemein lässt sich das allerdings schwer sagen
Früher haben einige unserer Kunden VBox genutzt, daher habe ich einmal zu libvirt beigetragen, um bestimmte VirtualBox-Funktionen zu unterstützen
Wenn es das damals gegeben hätte, wäre es praktisch gewesen, und wir hätten alle Kunden dazu bringen können, KVM-VMs zu nutzen
Glückwunsch zur Arbeit
Cool ist es schon, aber vielleicht bin ich inzwischen einfach alt und grantig: Vor 10 Jahren wäre das großartig gewesen. Interessiert das heute wirklich noch jemanden?
Heutzutage gibt es beim Virtualisieren einer Linux-GUI innerhalb von Linux auch deutlich bessere Wege als virt-manager, VMware oder VirtualBox
Mit crosvm kann man Wayland über Shared-Memory-Buffer teilen und im Gast OpenGL- und Vulkan-Beschleunigung bekommen
Dadurch erscheinen Gastanwendungen nahtlos über den Wayland-Compositor des Hosts
Allerdings ist der Hauptanwendungsfall von VBox größtenteils Windows