
Ich verwende eine Workstation, die stark auf Virtualisierung angewiesen ist. Ich habe mich für VirtualBox entschieden, weil:
- im Gegensatz zu VMWare ist es kostenlos und viel portabler und wartungsfreier (keine Fehlerbehebung bei Problemen mit der Kompilierung von Kernelmodulen erforderlich). Ich möchte mich nicht auf eine solche Software verlassen, wenn man bedenkt, wie viel Kopfzerbrechen sie mir in der Vergangenheit bereitet hat.
- Im Gegensatz zu KVM verfügt es über GPU-Beschleunigung ohne VGA-Passthrough. Außerdem ist es einfach zu verwenden und mein Job erfordert, dass ich VIELE virtualisierte Umgebungen zum Testen von Software einrichte.
Ich habe jedoch ein 12-Bay-Software-RAID6-Array installiert, das auf Btrfs basieren soll (Kernel 4.12 führt Patches für RAID56 ein), sodass ich einen Kernel auf dem neuesten Stand brauche. Möglicherweise eine RC-Version. Alle meine Maschinen basieren auf Btrfs, daher ist es aus Kompatibilitätsgründen absolut sinnvoll, Btrfs auch für RAID zu verwenden.
Das primäre Host-Betriebssystem ist vom Internet isoliert und führt viele wichtige Aufgaben aus, auf die ich mich verlasse. Ich brauche hier also ein stabiles Betriebssystem – was mit den Anforderungen an den neuesten Kernel von btrfs kollidiert. Daher plane ich, die RAID-Unterstützung an die VM zu delegieren und sie über NFS zurück zum Host zu exportieren. Zuvor habe ich getestet, ob NFS mit allen btrfs-Funktionen kompatibel ist, und es ist so cool – alles sollte großartig funktionieren.
Mein Plan war einwandfrei:
- KVM-virtuelle Maschine für RAID-Unterstützung mit virtio
- VirtualBox-VMs für Netzwerke und Testlabor-VMs für die Arbeit
Und es wäre perfekt - KVM ist definitiv die ideale Wahl für eine solche Arbeitslast - es ist Headless, sodass ein X-Absturz RAID nicht beschädigen würde, es funktioniert großartig und es wäre fantastischWenn... VirtualBox würde nicht mit KVM kollidieren. Aber das tut es (KVM-Maschinen starten nicht, wenn VBox-Maschinen mit aktiviertem VT-x laufen und umgekehrt). An diesem Punkt ist mir also ziemlich klar, dass ich VirtualBox leider für Arbeitslasten verwenden muss, für die es wahrscheinlich nie gedacht war – Hochleistungs-E/A. Aber ich sehe nicht viele andere Möglichkeiten.
Entschuldigen Sie diese lange Erklärung, aber sie erklärt, warum ich mich tatsächlich entschieden habe, Virtualbox für eine solche Arbeitslast anstelle von KVM zu verwenden, obwohl diese Entscheidung keinen Sinn zu ergeben scheint. Ich hoffe also, dass dieser Thread nicht überflutet wird von„benutzen Sie einfach KVM“Antworten.
Auf den Punkt gebracht
Meine Frage ist: Ermöglicht VirtualBox eine erweiterte Optimierung der Speicherleistung wie KVM? Ist es annähernd in der Lage, sequenzielles Lesen von ca. 1000 MB/s zu erreichen und es über NFS über den lokalen Host zu übertragen? Die Workstation ist mit einem 10-Gbit/s-Backbone verbunden, daher möchte ich, dass sie annähernd das volle Potenzial für eine schnelle Array-Synchronisierung erreicht.