KVM-Treiber in FreeBSD?!

McStarfighter

Kosmokrat
Nun ja, KVM für FreeBSD ist ja nicht wirklich greifbar, aber: Gibts in FreeBSD wenigstens die virtio-Treiber für ein Leben als KVM-Gast?

Und ja, ich weiß daß die Treiber nicht unbedingt zwingend sind. Aber mehr Performance wäre schon klasse ... ;)


Danke im Voraus.
 
Ja, KVM ist Linux-Kram. Dies aber auch nur in der Eigenschaft als Host. Ich will FreeBSD ja als Gast laufen lassen und suche dafür die Gast-Treiber für FreeBSD.

Ich kenne VirtualBox. Es kann aber nicht zusammen mit KVM auf dem Host laufen ... und KVM als Hypervisor hat schon seinen Grund ... ;)
 
Da ich Linux so weit nicht kenne, vielleicht kannst Du ja die Gründe erwähnen oder wenigstens einen Link auf die Gründe posten, damit man sich bilden kann.

Und wieso braucht ein Betriebssystem "Treiber"? O_o;
 
nakal: Ein KVM Gast braucht "Treiber" um statt über emulierte Hardware (S-ATA Controller, NICs) mit dem Hypervisor zu kommunizieren mit diesem direkt zu kommunizieren. Somit kann der I/O Overhead massiv reduziert werden.
 
Nun ja, in Bezug auf virtuelle Umgebungen ist das durchaus normal. Nehmen wir doch mal das Beispiel VirtualBox.
Da hast du dir dann deinen Windows-Gast eingerichtet. Der an sich kann aber zum Beispiel nichts mit der virtuellen Grafikkarte anfangen und nutzt daher den generischen, welcher aber nicht grad optimal ist. Ebenso ist es mit den virtuellen Festplatten. Und normalerweise installiert man doch in so ziemlich jeder Virtualisierungsumgebung Dinge wie "VMware Tools", "Parallels Tools", "Virtual PC Inegrationskomponenten" oder auch die "VirtualBox Gasterweiterungen". All diese Pakete sind im Grunde spezielle Treiber und Dienste / Daemons, damit es performanter läuft. DAHER die Notwendigkeit von solchen Treibern. Und dies ist nun mal auch noch OS-abhängig. Linux z.B. bringt bereits viele Schnittstellen und Treiber für ein Leben innerhalb eines VMware- oder KVM-Käfigs mit.
Die virtio-Treiber sind ebenfalls solche "Addons", aber eben für KVM-Gäste. Sie dienen der sogenannten Paravirtualisierung wie z.B. dem direkten Nutzen der physischen Netzwerkkarte ohne Emulations-Overhead. Gleiches auch für Storage.
Die Gründe, die ich ansprach, sind meiner eigenen Natur. Keine offziellen oder ähnliches. Hat mit nem Projekt zu tun, an dem ich arbeite.
@oenone: Ich habe bisher immer nur erfahren, daß sich VirtualBox sträubt, wenn ein KVM-Gast aktiv ist. Kannst du das widerlegen? Wäre hilfreich und würde vieles leichter machen.
 
@oenone: Ich habe bisher immer nur erfahren, daß sich VirtualBox sträubt, wenn ein KVM-Gast aktiv ist. Kannst du das widerlegen? Wäre hilfreich und würde vieles leichter machen.

Tatsächlich! VirtualBox hat wohl nen Bug, wodurch es nicht mehr starten will (bzw. ohne hardwarevirt), wenn KVM-Gast aktiviert ist. Ich hatte es andersrum gestartet und es lief einwandfrei.
 
Das ist leider kein Bug, sondern ein Sicherheitsfeature. Grund ist das Nichtvorhandensein eines "Controllers" für konkurrierende VT-Zugriffe in der CPU. Diese Barriere ist auch bei der VMware Workstation vorhanden, die meckert bereits am Anfang der Installation, wenn das KVM-Modul geladen ist.

Und bei meinem Projekt wird ein spezieller KVM-Gast permanent aktiv sein, wodurch VMware Workstation und VirtualBox nicht möglich sind ...
 
In VirtualBox kannst Du, ohne irgendwelche zusätzlichen Treiber, einfach Hardware austauschen. So als ob Du in einem PC ein Teil ausbaust und neues reinsteckst.

Es gibt einen Satz Kernel-Modulen (3 Stück, glaube ich), damit mit dem Kernel ohne größeren Overhead kommuniziert werden kann (aber das nur von der Emulationsumgebung her). Wenn ich eine andere Netzwerkkarte in VirtualBox einstecke, dann brauche ich nicht ein anderes Kernelmodul. Die Hardware, die da emuliert wird, ist abstrakt genug gestaltet worden um das Modul für Netzwerk entsprechend anzusprechen.

Genauso ist es mit allen anderen Geräten, ob andere Soundkarte, anderer USB-Controller oder beliebige Kombinationen von SATA/IDE-Controllern... kann man alles beliebig austauschen, auch wenn ein Betriebssystem schon installiert ist.

Es gibt natürlich auch Guest Additions. Dazu gehören Treiber die Du im Gastbetriebssystem installierst, klar. Aber Du hast davon gesprochen, dass man um ein Betriebssystem überhaupt zu benutzen bestimmten Satz an Treiber beim Host-System braucht, abhängig vom Gast, den man installieren will. So habe ich das verstanden. Und das ist ... ähm... blöd!
 
Es geht hier die ganze Zeit nur um das Gastsystem, nakal, vom Hostsystem hat niemand geredet.

@McStarfighter: Seltsam, warum funktioniert es dann andersrum?

VBox meckert übrigens nicht über das KVM-Modul, das ist bei mir schon geladen, sondern dass die Hardware-Virtualisierung schon verwendet wird, also erst wenn vor Start schon ein KVM-Gast läuft.
 
@oenone: Danke für die Erklärung. Macht nur am Ende leider keinen Unterschied (oder kann ein VB-Gast trotzdem starten?) ...
@nakal: Macht nix, ist mir auch schon untergekommen ... ;)
 
lustig wie bei java und openoffice jeder über oracle schreit, aber dann lieber ein halb propetiäres produkt wie virtualbox unterstützt, anstatt an k/qemu[+kvm/libvirt] rumzufrickeln. :D
 
VirtualBox ist leider deutlich funktionaler als qemu und wird, soweit ich das sehe, auch aktiver entwickelt.

Ich hatte einige Zeit qemu verwendet, das geht, für kleinere tests oder so auch ganz gut. Aber insgesamt ist die Performance wirklich sehr schlecht, gerade wenns Graphiklastig wird.

Mit Virtualbox arbeitet man auch mit moderatem Hardwareeinsatz wie als wäre der Gast ein nativ laufendes System, auch bei Graphischen Anwendungen, selbst Videos sind kein wirkliches Problem.
 
Qemu an sich fehlte es leider immer an Kernel-Modulen zur besseren Performance. KQEMU war ja scheinbar auch nur recht halbherzig. Und nun hat QEMU seinen Schwerpunkt darin, ein Frontend für KVM und Xen zu sein... Wobei ich der Meinung bin, daß die Unterstützung der Fremd-Architekturen ein wenig zu sehr untergeht im Rampenlicht ...
Für mich ist und bleibt das Qemu-Paket an sich der universellste Virtualisierer überhaupt ... zumindest auf ner Linux-Distro ... ;)
 
Du kannst ja mal versuchen Leute zu mobilisieren HXEN auf FreeBSD zu portieren. Da dies komplett im Userspace läuft wäre die GPL scheissegal :D
 
lustig wie bei java und openoffice jeder über oracle schreit, aber dann lieber ein halb propetiäres produkt wie virtualbox unterstützt, anstatt an k/qemu[+kvm/libvirt] rumzufrickeln. :D

Wer schreit denn über die?
Ich für meinen Teil bin zwar nicht unbedingt begeistert darüber, was die atm tun aber wenn ich mich dazu zwinge Rational zu bleiben, dann habe ich eigentlich fast vollstes Verständnis für ihre Taten, denn leicht ist es sicher nicht Sun profitabel zu machen.

Vernünftige Virtualisierung unter FreeBSD wäre allerdings mal was feines, wobei es mich bisher nicht viel gestört hat, dass es nicht als Dom0 tut. Dass es allerdings als DomU oder Guest meist nur recht bescheiden regt mich immer mal wieder etwas auf. Mein einzig brauchbarer FreeBSD Guest läuft atm auf einem ESX ander Uni, privat stehe ich aber eher weniger auf VMWare Produkte ;-)
 
Nun ja, meine Frage ist zwar irgendwie immer noch nicht beantwortet, aber es scheint wohl keiner zu wissen, ob FreeBSD virtio-Treiber mit sich rumträgt ...
 
Zurück
Oben