Bhyve

Lance

Well-Known Member
Hallo,

ich poste das in diesem Thread da ich es nicht produktiv brauche und einfach nur neugierig bin. Bhyve. Ich habe ja schon gelesen, dass hier von dem einenm oder anderen darauf erfolgreich Windows 10 betrieben wird. Mich würde interessieren ob

- es robust, und einfach zu warten ist

- man es ohne Bedenken produktiv einsetzen kann (als Alternative zu Hyp-V oder ESXi)

- Man USB Geräte (v.a. Datenträger) an den Gast durchreichen kann bzw zur Verfügung stellen kann

- Man ohne erheblichen Aufwand physische Maschinen importieren/konvertieren kann.

Sollte dies der Fall sein, will ich mir es auf jeden Fall mal ansehen und ausprobieren, denn gerade im produktiven Umfeld lassen sich doch sicher Lizenzkosten sparen und man hat (durch OpenSource) eine höhere Sicherheit. (Aber wahrscheinlich weit höherer Aufwand bei der Konfiguration im Vgl zu VMWare oder H-V)

LG Lance
 

Andy_m4

Well-Known Member
- es robust, und einfach zu warten ist
Was wartet man denn bei einer virtuellen Maschine? Muss man da öfter mal Schmiermittel dran tun, damit es nicht klemmt? :-)
Wartung fällt eigentlich nur in dem Umfang an, den man ohnehin hat. Also zum Beispiel Dein Gastsystem mit Updates versorgen oder sowas. Aber das musst Du ja völlig unabhängig davon, ob Du das System auf Hypervisor-A, Hypervisor-B oder gar auf einer physischen Maschine betreibst.

- man es ohne Bedenken produktiv einsetzen kann (als Alternative zu Hyp-V oder ESXi)
Bhyve versteht sich nicht als vollwertiger Ersatz zu den großen Lösungen.
Wenn es Dir lediglich darum geht einen Hypervisor zu haben auf dem man ein beliebiges Betriebssystem fahren kann, so funktioniert das hinreichend gut.
Auch wenn es sicher nicht überall den Reifegrad bereits etablierter Lösungen hat.

- Man ohne erheblichen Aufwand physische Maschinen importieren/konvertieren kann.
Kann man im Prinzip schon. Die Problematik ist hier auch weniger bhyve selbst, sondern das Gastsystem. Das muss dann ggf. mit der (aus seiner Sicht) veränderten Hardware umgehen können. Es gibt da kein fertiges Tool was sein System sozusagen für bhyve vorbereitet und Du es dann einfach unter bhyve booten kannst. Das musst Du ggf. von Hand erledigen.

- Man USB Geräte (v.a. Datenträger) an den Gast durchreichen kann bzw zur Verfügung stellen kann
Das hab ich selbst noch nicht probiert, es gibt aber ein Eintrag im Wiki dazu:
https://wiki.freebsd.org/bhyve/pci_passthru
 

Columbo0815

Kaffeemann
Teammitglied
Hallo,

- Man USB Geräte (v.a. Datenträger) an den Gast durchreichen kann bzw zur Verfügung stellen kann
LG Lance
Zu den meisten Punkten hat dir @Andy_m4 schon hinreichend ausführlich Antworten geliefert. Ergänzen kann ich jedenfalls nichts. In Bezug auf USB-Geräte durchreichen solltest du beachten, dass du nicht "während des Betriebes" einfach einen neuen USB-Port durchreichen kannst, wie es bei anderen Virtualisierern funktioniert. Du konfigurierst das, wie im Wiki (siehe Link oben) beschrieben und ab dem nächsten Boot steht es dem Gast (und nur diesem) zur Verfügung. Das funktioniert hier dem Grunde nach gut, selten reagiert der USB-Port aber nicht mehr, sodass nur ein Reboot des Hosts hilft. Aber: Sehr selten und evtl. ein Problem mit meiner Hardware.

Als Alternative kannst du aber für einige Sachen auch RDP nutzen. Ich habe hier zum Beispiel ein Headset, welches ich am Host selbst anschließe (ohne den USB-Port an den Gast durchzureichen) und mit xfreerdp dem Gast zur Verfügung stelle.
 

mr44er

moderater Moderator
Teammitglied
Zum Thema passthrough gerade mit USB sollte noch erwähnt werden, dass man je nach Beschaffenheit des Controllers keine einzelnen Ports durchreichen kann, sondern eben nur den Controller in Gänze und unter 3.0 schonmal gar nicht. :)
 

Andy_m4

Well-Known Member
Genau. Solche Passthru-Geschichten sind immer etwas speziell. Ich würde auch, wenn möglich, darauf verzichten und stattdessen über Umwege gehen. Das Headset-Beispiel war da ganz passend. Oder wenns z.B. um nen USB-Memory-Stick geht dann würde ich den eher über ein Network-Filesystem an den Gast durchreichen statt über Passthru zu gehen.

Naiv würde ich ein sysprep machen
Kann man probieren.
Ich selbst bin kein übermäßig großer Freund davon Windows-Instanzen in eine VM zu schieben, sondern installiere sie dann lieber neu. Genauso wie man bei einem Hardware-Wechsel Windows lieber neu installiert, auch wenn Windows inzwischen besser damit umgehen kann als früher.

So eine Neuinstallation ist dann auch mal die Möglichkeit der Auffrischung. Windows-Installationen die schon ein paar Jahre hinter sich haben, sammelt ja doch hier und da gerne Dreck auf. :-) Und das ist dann die Gelegenheit das mal wieder ordentlich neu zu machen ohne das man später noch damit ggf. kämpfen muss, das da noch alte Reste drin sind.

Diese in-die-VM-schieben-Funktionalität ist dann eher was für Windows-Installationen die halt keine (bzw. möglichst wenig) Downtime haben sollen.
 

mr44er

moderater Moderator
Teammitglied
Genau, frische Installationen sind in vielerlei Hinsicht besser. (Allein die Sache mit virtio!)

Darauf aufbauend noch folgender Denkansatz: Man begibt sich auf neues Terrain, kennt den Virtualisierer noch nicht.
Jetzt bastelt man sich die bestehende Winstallation zur VM hin und Käpt'n Bluescreen begrüßt dich. Diskimage verfriemelt? bhyve falsch konfiguriert? Das eine winupdate? Der Treiberhack für mein spezielles Gerät?
Ganz schnell könnte man dann bei 'bla, bhyve ist doof' sein. Man könnte aber auch erst nach zwei Stunden erfolglosem Nebelstochern zu 'bla, bhyve ist doof' trugschlussen. :p

Da macht man lieber gleich frisch, denn unterm Strich spart es Zeit. Ebenfalls geringere Fehleranfälligkeit und man kommt zu 'bhyve ist ja voll geil, schlank und tut was es soll'. :)
 

Yamagi

Possessed With Psi Powers
Teammitglied
Es arbeiten einige Entwickler an besseren Desktop Features:

  • VGA Emulation
  • Shared Folders per 9p
  • Echtes USB Passthrough

Audio-Emulation ist bereits 12.2, ebenso die verbesserte NVMe-Emulation. Letztere ist vor allem für Windows-Gäste interessant. Es wird auch noch ein großes UEFI-Update kommen, die Vorarbeiten sind bereits in 12.2 enthalten und Testbuilds des neuen Images finden sich regelmäßig auf freebsd-virtualization@. Damit sollte diverse Firmware-Zickereien behoben werden und es gibt endlich vollständigen nvram-Support. Beides ist vor allem für Linux-Gäste interessant.
 
Oben