
Wie viele andere auch erwäge ich, mit OpenStack oder VMware eine „private Cloud“ zu erstellen.
VMware vMotion verfügt über eine nette Funktion, die Live-Migration von VMs auch ohne gemeinsam genutzten Speicher ermöglicht. Ich habe diese Funktion in einer Laborumgebung ausprobiert und sie funktioniert gut. Diese Funktion hat auch ihre Nachteile, ist aber für Sites interessant, die eine einfache VM-Umgebung benötigen und sich nicht die Komplexität und Kosten eines gemeinsam genutzten Speichers leisten möchten. Gemeinsam genutzter Speicher kann die Kosten einer virtuellen/Cloud-Infrastruktur leicht um 50.000 bis 100.000 US-Dollar erhöhen. Weitere Informationen zu dieser Funktion finden Sie unter:
- ESXi- und vCenter Server 5.1-Dokumentation > vCenter Server und Hostverwaltung > Migrieren virtueller Maschinen im vSphere-Webclient
- Techtarget: Live-Migration mit nichts geteilt.
Bietet OpenStack mit KVM eine ähnliche Funktion? Kann OpenStack eine Live-Migration ohne gemeinsam genutzten Speicher durchführen? KVM ist der Standard-Hypervisor für OpenStack und wir würden lieber beim Standard bleiben, sofern es keinen zwingenden Grund gibt, etwas anderes zu verwenden.
Antwort1
OpenStack unterstütztLivemigration ohne Shared Storage (mit Reservierung):
Theoretisch kann Live-Migration mit nicht gemeinsam genutztem Speicher mithilfe einer Funktion namens KVM Live Block Migration durchgeführt werden. Dies ist jedoch eine wenig bekannte Funktion in OpenStack, die im Vergleich zur Live-Migration nur begrenzt getestet wurde und im KVM-Upstream veraltet sein soll.
Dieses Dokument ist jedoch unvollständig. Eine Implementierung der Live-Migration wurde verworfen, aber es wurde eine neue (und bessere) Implementierung erstellt.
Es gabeinige Diskussionendazu auf der OpenStack-Mailingliste im April 2013, wo Daniel Berrange sagt:
Was ich oben über die bestehende Implementierung geschrieben habe, ist immer noch richtig. Der neue Blockmigrationscode ist jetzt in libvirt integriert und verwendet einen in den QMEU-Prozess integrierten NBD-Server, um die Blockmigration durchzuführen. API-mäßig sollte er eigentlich genauso funktionieren wie der bestehende, veraltete Blockmigrationscode. Wenn Sie also eine ausreichend neue libvirt und ein ausreichend neues KVM haben, sollte es wahrscheinlich „einfach mit OpenStack funktionieren“, ohne dass Codeänderungen in Nova erforderlich sind. Ich habe das allerdings nicht selbst getestet.