Open-Source-VM-Migration: VMware und OpenStack zu RHOSO 18.0 oder Community-OpenStack. Ihre VMs laufen weiter.
Cutover in Minuten.
Seamless Migrate migriert VMs von RHOSP 17.1, OpenStack und VMware vSphere nach RHOSO 18.0 oder Community-OpenStack. Die Festplatten werden im laufenden Betrieb kopiert; die VM stoppt nur für das letzte Delta.
Apache 2.0 Die Demo benötigt keine Cloud-Zugangsdaten
AUSFALLZEIT
Eine VM, drei Wege zur Migration.
Ein Volume mit 200 GiB, davon 120 GiB belegt, 2 MiB/s Schreiblast im Gast, über eine Verbindung mit 125 MiB/s. Das Planungsmodell der Control Plane schätzt die Ausfallzeit jeder Strategie:
Cold-Kopie
cold20 Min. 53 Sek. Ausfallzeit
Die VM bleibt gestoppt, bis alle belegten Daten kopiert sind.
Warm-Migration
warm11 Min. 20 Sek. Ausfallzeit
3 Kopierdurchläufe erfolgen im laufenden Betrieb (31 Min. 32 Sek.); die VM stoppt nur für das letzte Delta.
Storage-Übergabe
storage_handover4 Min. 20 Sek. Ausfallzeit
Es werden keine Daten kopiert: Bei gemeinsam genutztem Ceph oder NetApp ONTAP übergibt Cinder jedes Volume an das Ziel.
PLATTFORMEN
Verschiedene Quellen. Ihr Ziel.
Dasselbe Plan-, Wellen- und Freigabemodell für jede Quelle. Seamless spricht jede Cloud über deren öffentliche APIs an und überträgt die Daten mit der darunterliegenden Ansible-Collection os-migrate.
Red Hat OpenStack Platform 17.1
Das letzte Release auf TripleO-Basis. Migrieren Sie parallel, wenn eine In-Place-Adoption nicht passt.
coldwarmstorage_handover
Community-OpenStack und Kolla-Ansible
Jedes Release mit Keystone v3, Nova 2.60 oder neuer, Cinder v3 und Neutron v2.
coldwarmstorage_handover
VMware vSphere 7.0U3 und 8.x
Verwaltet über vCenter. Warm-Migration mit Changed Block Tracking, Konvertierung durch virt-v2v.
vmware_coldvmware_warm
Ziele
RHOSO 18.0
Red Hat OpenStack Services on OpenShift, die Zielplattform; die Laborvalidierung des Releases steht noch aus. Seamless nutzt die öffentlichen OpenStack-APIs von RHOSO und lässt OpenShift-Ressourcen unberührt.
Community-OpenStack
Jede Release-Serie von 2023.1 Antelope bis 2026.2 Hibiscus, bereitgestellt mit Kolla-Ansible, OpenStack-Ansible oder einem beliebigen anderen Werkzeug, über denselben Codepfad. Die Provider-Prüfung meldet Serie, Support-Stufe und Richtlinienprofil des Ziels.
- Netzwerke, Subnetze, Router und Sicherheitsgruppen neu angelegt
- Flavors, Images, Schlüsselpaare, Projekte und Benutzer übernommen
- MTU gegen die Netzwerke des Ziels geprüft, einschließlich Geneve auf ML2/OVN
- TLS standardmäßig an jedem Endpunkt verifiziert
Alle gängigen Gastbetriebssysteme
Bei OpenStack-Quellen werden KVM-Gäste auf KVM übertragen, daher startet alles, was auf der Quelle startet, auch auf dem Ziel: RHEL, CentOS, Rocky, AlmaLinux, Oracle Linux, Ubuntu, Debian, SLES und Windows. Bei VMware konvertiert virt-v2v den Gast auf dem Konvertierungshost mit RHEL 9. Ältere Versionen erhalten eine Warnung mit Lösungsweg, nie eine stillschweigende Sperre.
STRATEGIEN
Fünf Strategien, eine Wahl pro VM.
Seamless schätzt für jede VM jede infrage kommende Strategie ab und wählt die mit der kürzesten Ausfallzeit; bei Gleichstand gewinnt die einfachere. Sie können die Auswahl überschreiben.
Von OpenStack
coldCold-Kopie
Stoppen, belegte Daten per SSH kopieren, auf dem Ziel starten.
warmWarm
Snapshot-Durchläufe im laufenden Betrieb, nach dem Stopp nur noch das letzte Delta.
storage_handoverStorage-Übergabe
Cinder unmanage an der Quelle, manage auf dem Ziel. Es werden keine Daten kopiert.
Voraussetzung: Beide Clouds auf demselben Ceph-Cluster oder derselben NetApp ONTAP SVM.
Von VMware
vmware_coldVMware cold
Vollständige Kopie, dann Konvertierung mit virt-v2v.
vmware_warmVMware warm
Durchläufe mit Changed Block Tracking, dann das letzte Delta und eine In-Place-Konvertierung.
Voraussetzung: Changed Block Tracking auf der VM aktiviert.
TECHNOLOGY PREVIEWS
GPU-VMs ziehen um. Ihre Adressen können folgen.
Release Candidate, keine Produktionszertifizierung. Ein Laborlauf für das Release ist noch nicht dokumentiert. Neu in 0.4.0-rc.1, jeweils pro Plan zuschaltbar und in der Simulation validiert: Beide laufen in der Demo, ihre Labortests auf GPU-Hosts und echten Clouds stehen noch aus. Das Label entfällt, sobald sie bestanden sind.
GPU-Workloads
Technology Preview, in der Simulation validiert
VMs mit einer NVIDIA vGPU, per Time-Slicing oder MIG, oder mit einer vollständig durchgereichten GPU werden migriert statt blockiert. Ihre Festplatten wandern wie bei jeder VM; kein GPU-Zustand wird übertragen, und die VM startet auf dem Ziel wie nach einem Herunterfahren.
- GPUs aus dem OpenStack-Flavor oder aus vCenter gelesen und im Inventar angezeigt
- Jede GPU per Plan einem GPU-Flavor des Ziels zugeordnet, nie nach Größe oder Name abgeglichen; eine GPU-VM ohne Zuordnung bleibt blockiert
- Freie Kapazität bei der Validierung und erneut vor dem Stopp der Quelle aus Placement gelesen; solange der Pool voll ist, läuft die Quelle weiter
- Die Verifizierung prüft den GPU-Flavor und seine Placement-Zuteilung; die Befunde nennen Treiber und Lizenzserver, die der Gast braucht
Netzwerk-Cutover
Technology Preview, in der Simulation validiert
Eine Migration kann die Netzwerkidentität der VM mitnehmen. Jeder Teil ist pro Plan zuschaltbar, und ein Plan ohne ihn migriert wie bisher.
- Hooks: Ansible-Playbooks und HTTPS-Webhooks, die ein Admin registriert, laufen bei pre_stop, post_create, post_verify, on_rollback und on_finalize, jeweils mit Timeout und optionalem Revert
- Floating IPs behalten ihre Adresse bei jeder OpenStack-Strategie, werden nach dem Stopp der Quelle umgezogen und beim Rollback zurückgegeben
- Ein DNS-Wechsel in Designate oder auf einem RFC-2136-Server per Compare-and-Swap, beim Rollback zurückgetauscht
- Eine Erreichbarkeitsprüfung, die in die Ausfallzeit zählt, und ein Octavia-Helfer, der das Quellmitglied leert und die migrierte VM aufnimmt
Die Vorabprüfung nennt, was Sache des Betriebs bleibt, mit Runbooks: Heat-Stacks und Autoscaling-Gruppen, Octavia-Pools, die Wellen aufteilen würden, Ports mit Address Pairs und DNS-Namen, die das Ziel nicht veröffentlichen kann.
Als Nächstes: 0.5.0
Geplant: Benachrichtigungen per E-Mail, Slack und signierten Webhooks; SSH-Host-Key-Pinning im Datenpfad; und als Technology Previews eine hochverfügbare Control Plane, Zugangsdaten pro Mandant und Changed-Extent-Tracking, das den Festplatten-Scan aus dem letzten Warm-Durchlauf auf Ceph-RBD-Volumes entfernt.
Release Notes von 0.4.0-rc.1 (öffnet in neuem Tab)FUNKTIONSWEISE
Ein Weg. Jeder Schritt in Ihrer Hand.
Ein Ablauf für jede Quelle. Jede Migration durchläuft einen expliziten Zustandsautomaten, setzt nach einem Neustart der Control Plane an ihrem Checkpoint wieder auf und hinterlässt für jede Aktion einen Audit-Trail.
- 01
Beide Clouds verbinden
Fügen Sie RHOSP 17.1, Community-OpenStack, Kolla-Ansible oder vCenter als Quelle und RHOSO 18.0 oder eine Community-OpenStack-Cloud als Ziel hinzu, mit Voreinstellungen für jede Plattform. Zugangsdaten sind nur schreibbar und landen im Secret Store der Plattform, nie in der Datenbank oder in einer API-Antwort. Ein Klick prüft jede Verbindung und ihre Fähigkeiten und meldet bei einem Ziel dessen Release-Serie, Support-Stufe und Richtlinienprofil.
- 02
Wellen planen, Pilot zuerst
Erfassen Sie das Inventar mit Festplatten, NICs, Gastbetriebssystem und Migrationsbereitschaft. Wählen Sie VMs aus, ordnen Sie Netzwerke, Flavors, Volume-Typen und Projekte zu und lassen Sie den Planer die Wellen nach Risiko sortieren, beginnend mit einer kleinen Pilotwelle. Eine Welle startet erst, wenn die vorherige abgeschlossen ist.
- 03
Validieren, bevor sich etwas bewegt
Vorabprüfungen melden Blocker, Warnungen und Hinweise, jeweils mit Lösung. Jede VM erhält eine Schätzung für jede infrage kommende Strategie und eine automatische Auswahl, die Sie überschreiben können.
- 04
Kopieren im laufenden Betrieb
VMs mit Warm-Migration werden im laufenden Betrieb in Snapshot-Durchläufen kopiert. Nach dem ersten Durchlauf werden nur die Chunks übertragen, deren BLAKE2b-Hash sich geändert hat, und jeder Durchlauf endet mit einem verifizierten Manifest-Hash. Eine konvergierte VM wartet auf ihr Wartungsfenster; Keep-Warm-Syncs halten sie aktuell.
- 05
Cutover im Wartungsfenster
Ein Cutover startet nur mit Freigabe durch eine zweite berechtigte Person, innerhalb des Wartungsfensters und mit einem freien Cutover-Slot. Die VM stoppt, das letzte Delta wird synchronisiert, und sie startet auf dem Ziel. Die Ausfallzeit wird vom Stopp bis zum verifizierten Start gemessen.
- 06
Verifizieren, dann finalisieren
Seamless prüft den Status ACTIVE des Servers, seine Ports, TCP-Probes und Konsolenmuster. Schlägt eine Prüfung fehl, folgt automatisch ein Rollback: Die Instanz auf dem Ziel wird entfernt, ihre Volumes bleiben erhalten, und die Quell-VM startet wieder. Die Finalisierung, der einzige Schritt, der sich nicht rückgängig machen lässt, erfordert eine freigabeberechtigte Person und den vollständig eingegebenen Namen der VM.
DASHBOARD
Jede Migration im Blick.
Das Dashboard ist Teil der Control Plane: Pläne und Wellen, jede Ausfallzeit-Uhr gegen ihr SLO, Freigaben und der Audit-Trail, live aktualisiert über Server-Sent Events. Das sind seine echten Bildschirme, aufgenommen in der Demo mit simulierten Clouds.

Der ganze Rollout auf einen Blick
Migrationen nach Zustand, durchschnittliche Ausfallzeit und SLO-Einhaltung, jede VM, die gerade steht, mit ihrer Uhr, und die Freigaben, die auf eine Person warten: Cutover-Freigaben und Advisor-Entscheidungen, jede verlinkt dorthin, wo sie getroffen wird.

Wellen, Freigaben und die Finalisierungs-Warteschlange
Zustand und Kennzahlen eines Plans, eine Migration, die mit Approve und Override auf eine Advisor-Entscheidung wartet, die auf dem Ziel verifizierten VMs, die Welle für Welle auf die Finalisierung warten, und die Aktionen, die der Zustand erlaubt: bearbeiten, validieren, Wellen planen, pausieren, abbrechen.

Eine VM durch ihren Cutover
Der nächste Schritt und die jetzt verfügbaren Aktionen; die nicht verfügbaren sagen, warum. Der Phasen-Stepper, der Fortschritt der letzten Kopie, die Ausfallzeit-Uhr gegen das SLO mit den Teilen der Schätzung, und wer den Cutover angefordert und wer ihn freigegeben hat.

Jede VM mit ihrer Bereitschaft
Die VMs der Quelle mit Projekt, Betriebszustand, vCPUs und RAM, GPUs, Festplatten, belegtem Platz und Gast-Betriebssystem, einer Bereitschaftsmarkierung mit ihrer Anleitung und dem Plan, der jede VM hält. Hier filtern, auswählen und einen Plan starten.

Beide Clouds, geprüft
Jede Quelle und jedes Ziel mit Gesundheitszustand, Endpunkt, Region, Anmelde- und TLS-Status, Konvertierungshost, Rollen, Compute-API-Version und Storage-Backends sowie bei einem Ziel dessen Release-Serie, Support-Stufe, Richtlinienprofil und freie GPU-Kapazität. Alle mit einem Klick prüfen; Zugangsdaten sind nur schreibbar.

Empfehlungen mit ihren Belegen
Was der Advisor empfohlen hat, mit seiner Konfidenz gegen die Schwelle der Richtlinie, und was entschieden wurde und warum: übernommen, von einer Person überstimmt oder wartend auf eine Freigabe. Frühere Vorfälle und ihre Lösungen, durchsuchbar.

Der Audit-Trail, live verfolgt
Jede Aktion an Plänen, Migrationen, Advisor und Providern mit Akteur, Zeit und IDs, gefiltert nach Kategorie und Plan. Das Angezeigte herunterladen oder den ganzen Trail als JSON Lines für einen Write-once-Speicher exportieren.
- Live, nicht abgefragt
- Phasenwechsel, Durchläufe, Freigaben und Ereignisse kommen über Server-Sent Events. Nach einem Verbindungsabbruch setzt das Dashboard beim letzten gesehenen Ereignis wieder an.
- Sagt warum, nicht nur nein
- Vier Rollen, von Viewer bis Admin. Eine Aktion, die Sie gerade nicht ausführen können, bleibt auf der Seite und sagt, worauf sie wartet: eine Rolle, eine Freigabe, ein Wartungsfenster, eine Phase.
- WCAG 2.2 AA
- Tastatur zuerst, Fortschritt und Ergebnisse werden Screenreadern angesagt, 44 px große Ziele, reduzierte Bewegung wird respektiert, kein Status nur über Farbe.
- Nichts von einem anderen Host
- Schriften und Skripte werden mit der Control Plane ausgeliefert, und nichts wird von Dritten geladen: Eine Installation ohne Internetzugang sieht genauso aus.
ABSICHERUNG
Umkehrbar, bis Sie es für endgültig erklären
Freigaben, Wartungsfenster und Rollbacks sind Regeln in der Control Plane, keine Konventionen in einem Runbook. Die Quell-VM bleibt, wo sie ist, bis eine freigabeberechtigte Person finalisiert.
- Von der Control Plane erzwungene Bedingungen
- Ein Cutover startet nur, wenn die Freigabe erteilt ist, das Wartungsfenster offen ist und ein Cutover-Slot frei ist.
- Vier-Augen-Prinzip
- Wer einen Cutover anfordert oder erzwingt, kann ihn nicht freigeben. Die Freigabe muss eine zweite berechtigte Person erteilen.
- Rollback bis zur Finalisierung
- Ein Rollback entfernt die Instanz auf dem Ziel, behält ihre Volumes, gibt eine beim Cutover umgezogene Floating-IP-Adresse oder einen DNS-Eintrag zurück und startet die Quell-VM wieder. Eine fehlgeschlagene Verifizierung löst ihn automatisch aus.
- Bestätigung per Namenseingabe für den unumkehrbaren Schritt
- Vor der Finalisierung werden keine Quelldaten gelöscht, und die Finalisierung erfordert eine freigabeberechtigte Person und den vollständig eingegebenen Namen der VM.
- Wiederaufnahme nach Neustart
- Laufende Migrationen setzen an ihrem Checkpoint wieder auf, sobald die Control Plane wieder verfügbar ist. Ein geplanter Stopp kann die Arbeit zuerst auslaufen lassen: Die Pläne pausieren, und die laufenden Cutover werden abgeschlossen, bevor etwas stoppt.
- Keine gestrandete Quell-VM
- Jeder Schritt hat ein festes Zeitlimit, sodass ein hängendes Playbook eine gestoppte VM nie dauerhaft offline hält.
- Jede Aktion protokolliert
- Jeder ändernde Aufruf wird im Audit-Trail erfasst. Exportieren Sie ihn oder bereinigen Sie ihn nach Ihren Aufbewahrungsfristen.
BEREITSTELLUNG
Zu Hause in Ihrer Infrastruktur.
Ein Container-Image und PostgreSQL. Betreiben Sie Seamless auf dem OpenShift-Cluster neben RHOSO, auf jedem Kubernetes oder auf einem einzelnen Host: mit der eigenen Docker Engine eines Linux-Servers, mit Colima auf einem Mac oder mit Podman.
Linux
Docker Engine 20.10+ mit Compose v2.20+: Ubuntu, Debian, RHEL, Rocky Linux, AlmaLinux, Fedora
$ scripts/compose-init.shscripts/compose-init.sh$ make seamless-upmake seamless-up$ curl -fsS http://127.0.0.1:8080/api/v1/healthcurl -fsS http://127.0.0.1:8080/api/v1/health$ ssh -L 8080:127.0.0.1:8080 you@your-serverssh -L 8080:127.0.0.1:8080 you@your-serverDie eigene Docker Engine des Servers, ohne Colima und ohne Node.js: Das Image baut das Dashboard selbst. Die Control Plane lauscht nur auf 127.0.0.1:8080, sodass kein Firewall-Port geöffnet wird und das Dashboard über einen SSH-Tunnel erreichbar ist; die Container starten nach einem Neustart automatisch wieder, und SELinux kann im Enforcing-Modus bleiben.
macOS
Colima oder Docker Desktop mit einem benannten Kontext
$ make seamless-colima-upmake seamless-colima-up$ scripts/compose-init.shscripts/compose-init.sh$ make seamless-upmake seamless-up$ make seamless-logsmake seamless-logsEin eigenes Colima-Profil (4 CPU, 6 GiB, 40 GiB), das nie Ihren aktiven Docker-Kontext ändert. Docker Desktop oder jeder andere Kontext: Ergänzen Sie jedes make um SEAMLESS_DOCKER_CONTEXT=desktop-linux.
Podman
4.7 oder neuer
$ scripts/compose-init.shscripts/compose-init.sh$ make seamless-up SEAMLESS_ENGINE=podmanmake seamless-up SEAMLESS_ENGINE=podman$ make seamless-logs SEAMLESS_ENGINE=podmanmake seamless-logs SEAMLESS_ENGINE=podmanpodman compose steuert denselben Stack, mit docker-compose als Provider, sofern installiert. Auf SELinux-Hosts wird der Token-Mount automatisch neu gelabelt.
Kubernetes
1.28 oder neuer: EKS, AKS, GKE, RKE2, k3s, kubeadm
$ kubectl apply -k deploy/kuberneteskubectl apply -k deploy/kubernetes$ kubectl -n seamless-migrate rollout status deploy/seamlesskubectl -n seamless-migrate rollout status deploy/seamless$ kubectl -n seamless-migrate get ingress seamlesskubectl -n seamless-migrate get ingress seamlessEin Kustomize-Overlay der OpenShift-Manifeste mit einem Ingress. Legen Sie zuerst die Secrets aus secret-example.yaml und das TLS-Secret seamless-tls an.
OpenShift
4.16 oder neuer
$ oc apply -k deploy/openshiftoc apply -k deploy/openshift$ oc -n seamless-migrate rollout status deploy/seamlessoc -n seamless-migrate rollout status deploy/seamless$ oc -n seamless-migrate get route seamlessoc -n seamless-migrate get route seamlessPostgreSQL 16, ein gehärtetes Deployment mit einem Replikat, eine Route mit Edge-TLS und NetworkPolicies mit Default-Deny. Secrets bleiben außerhalb der kustomization.
FAQ
Fragen und Antworten.
Was Teams fragen, bevor sie ihre erste VM migrieren.
Was ist Seamless Migrate?
Seamless Migrate ist eine Open-Source-Control-Plane unter der Apache License 2.0, die virtuelle Maschinen von Red Hat OpenStack Platform 17.1, Community-OpenStack (einschließlich Kolla-Ansible) und VMware vSphere nach Red Hat OpenStack Services on OpenShift (RHOSO) 18.0 oder in eine Community-OpenStack-Cloud von 2023.1 Antelope bis 2026.2 Hibiscus migriert. Seamless Migrate plant Wellen, schätzt die Ausfallzeit jeder VM, kopiert Festplatten im laufenden Betrieb, macht jeden Cutover von einer Freigabe und einem Wartungsfenster abhängig, verifiziert jede VM auf dem Ziel und rollt sie automatisch zurück, wenn eine Prüfung fehlschlägt.
Wie migriere ich VMs von VMware vSphere nach OpenStack?
Fügen Sie vCenter (vSphere 7.0U3 oder 8.x) als Quelle und RHOSO 18.0 oder eine Community-OpenStack-Cloud als Ziel hinzu, planen Sie dann Wellen und validieren Sie sie. Für VMs mit Changed Block Tracking (CBT) greift die Warm-Migration: CBT-Durchläufe kopieren die Festplatten im laufenden Betrieb, und beim Cutover wird nur das letzte Delta übertragen, gefolgt von einer In-Place-Konvertierung mit virt-v2v. Für VMs ohne CBT greift die Cold-Migration: erst eine vollständige Kopie, dann die Konvertierung. Die Daten laufen über das vmware-migration-kit von os-migrate und einen Konvertierungshost mit VDDK in der Ziel-Cloud.
Kann ich Workloads ohne In-Place-Adoption von RHOSP 17.1 nach RHOSO 18.0 migrieren?
Ja. Das Adoptionsverfahren von Red Hat wandelt eine 17.1-Umgebung an Ort und Stelle um. Passt das nicht, etwa bei neuer Hardware, einem neuen Storage-Backend, einem Netzwerkumbau wie dem Wechsel von ML2/OVS zu ML2/OVN oder mehreren Clouds, die konsolidiert werden sollen, migriert Seamless Migrate die Workloads parallel: Netzwerke, Sicherheitsgruppen, Flavors, Images, Schlüsselpaare, Projekte und Benutzer werden auf RHOSO neu angelegt, dann wird jede VM per Cold-Migration, Warm-Migration oder Storage-Übergabe übertragen.
Kann ich statt RHOSO in eine Community-OpenStack-Cloud migrieren?
Ja. Neben RHOSO 18.0 ist jede Release-Serie von Community-OpenStack, von 2023.1 Antelope bis 2026.2 Hibiscus, ein Ziel, unabhängig davon, ob sie mit Kolla-Ansible, OpenStack-Ansible oder einem anderen Werkzeug bereitgestellt wurde: Registrieren Sie die Cloud mit der Voreinstellung OpenStack Community oder Kolla-Ansible, dann laufen dieselben Strategien Cold-Migration, Warm-Migration und Storage-Übergabe auch dort. Die Provider-Prüfung meldet für jedes Ziel Release-Serie, Support-Stufe und Richtlinienprofil, und die Vorabprüfung blockiert einen Plan bei einer fehlenden Fähigkeit, bevor sich etwas bewegt. RHOSO 18.0 ist heute die Zielplattform; die Laborvalidierung des Releases steht noch aus; der Laborlauf auf jeder im Upstream gepflegten Community-Serie steht noch aus und kommt vor einem finalen Release.
Wie viel Ausfallzeit erfordert eine Migration?
Das hängt von der Strategie und der VM ab. Für ein Volume mit 200 GiB, davon 120 GiB belegt, bei 2 MiB/s Schreiblast im Gast und einer Verbindung mit 125 MiB/s veranschlagt das Planungsmodell 20 Min. 53 Sek. für eine Cold-Kopie, 11 Min. 20 Sek. für eine Warm-Migration und 4 Min. 20 Sek. für eine Storage-Übergabe. Die Ausfallzeit einer Warm-Migration richtet sich nach dem letzten Delta und einem Scan der Festplatte, nicht nach der vollständigen Kopie.
Was ist der Unterschied zwischen Cold-Migration, Warm-Migration und Storage-Übergabe?
Eine Cold-Migration stoppt die VM und kopiert ihre belegten Daten; die Ausfallzeit wächst daher mit der Festplattengröße. Eine Warm-Migration kopiert die Festplatten in Snapshot-Durchläufen im laufenden Betrieb und stoppt die VM nur für das letzte Delta. Eine Storage-Übergabe kopiert überhaupt keine Daten: Teilen sich beide Clouds einen Ceph-Cluster oder eine NetApp ONTAP SVM, gibt Cinder jedes Volume an der Quelle per unmanage ab und übernimmt es auf dem Ziel per manage, sodass die Ausfallzeit unabhängig von der Größe wenige Minuten beträgt.
Lassen sich VMs mit GPUs migrieren?
Ja, als in der Simulation validierte Technology Preview. VMs mit einer NVIDIA vGPU, per Time-Slicing oder MIG, oder mit einer vollständig durchgereichten GPU werden migriert, sobald ihr Plan jede GPU einem GPU-Flavor des Ziels zuordnet; eine GPU-VM ohne Zuordnung bleibt blockiert. Die Validierung gleicht die GPUs des Plans mit der freien Kapazität des Ziels in Placement ab, und das Cutover-Gate liest sie vor dem Stopp der Quelle erneut: Ist kein Platz, wartet die Migration und die Quelle läuft weiter. Eine VMware-VM mit durchgereichter GPU zieht nur per Cold-Migration um, ausgeschaltet. Die Labortests auf GPU-Hosts stehen noch aus.
Behalten migrierte VMs ihre IP-Adressen und DNS-Namen?
Feste IPs und MAC-Adressen bleiben standardmäßig erhalten. Als in der Simulation validierte Technology Preview kann ein Plan außerdem die Adresse jeder Floating IP behalten, die nach dem Stopp der Quelle umzieht und beim Rollback zurückgegeben wird, und bei einer geänderten Adresse einen DNS-Eintrag in Designate oder auf einem RFC-2136-Server umstellen. Die Verifizierung wartet, bis jede umgezogene Adresse antwortet, und zählt die Wartezeit zur Ausfallzeit; Seamless selbst spricht kein BGP. Den Rest übernehmen Hooks, die ein Admin registriert, Ansible-Playbooks oder HTTPS-Webhooks, und die Vorabprüfung nennt, was Sache des Betriebs bleibt, etwa Heat-Stacks, Autoscaling-Gruppen und Octavia-Pools.
Kann ich eine Migration zurückrollen?
Ja, bis zur Finalisierung. Ein Rollback entfernt die Instanz auf dem Ziel, behält ihre Volumes und startet die Quell-VM wieder; eine fehlgeschlagene Verifizierung löst ihn automatisch aus. Vor der Finalisierung werden keine Quelldaten gelöscht, und die Finalisierung erfordert eine freigabeberechtigte Person und den vollständig eingegebenen Namen der VM.
Welche Gastbetriebssysteme lassen sich migrieren?
Bei OpenStack-Quellen werden KVM-Gäste auf KVM übertragen, daher startet alles, was auf der Quelle startet, auch auf dem Ziel: RHEL 5 bis 10, CentOS, Rocky, AlmaLinux, Oracle Linux, Ubuntu, Debian, SLES, openSUSE, Windows Server 2003 bis 2025 und Windows 7 bis 11. Bei VMware konvertiert virt-v2v den Gast: RHEL 7 bis 10 und Windows Server 2016 bis 2025 werden von Red Hat unterstützt; andere Gäste funktionieren nach einer Testkopie oder benötigen vorab installierte virtio-Treiber.
Wo läuft Seamless Migrate?
Seamless Migrate besteht aus einem Container-Image und PostgreSQL 16. Betreiben Sie es auf OpenShift 4.16 oder neuer neben RHOSO, auf Kubernetes 1.28 oder neuer (EKS, AKS, GKE, RKE2, k3s, kubeadm) oder auf einem einzelnen Host: mit der eigenen Docker Engine eines Linux-Servers, 20.10 oder neuer mit Compose v2.20 (Ubuntu, Debian, RHEL, Rocky Linux, AlmaLinux, Fedora; ohne Colima, ohne Node.js), mit Colima auf einem Mac oder mit Podman 4.7 oder neuer. Ein einziges Betriebsskript, seamless-ctl.sh, fährt eine Bereitstellung auf jeder Plattform auf dieselbe Weise hoch und herunter, startet sie neu, skaliert sie und lässt vor einem geplanten Stopp die laufenden Pläne auslaufen. Eine Demo mit simulierten Clouds läuft auf einem Laptop und benötigt keine Cloud-Zugangsdaten.
Ist Seamless Migrate kostenlos?
Ja. Seamless Migrate ist Open Source unter der Apache License 2.0, und der Quellcode liegt auf GitHub.
Ist Seamless Migrate ein Produkt von Red Hat?
Nein. Seamless Migrate ist ein unabhängiges Open-Source-Projekt. Es steht in keiner Verbindung zu Red Hat, der OpenInfra Foundation oder Broadcom, wird von ihnen weder gesponsert noch befürwortet und ist durch keine Subscription von Red Hat abgedeckt. Es baut auf der Upstream-Ansible-Collection os-migrate auf, die weiterhin die Daten überträgt.
Wie unterscheidet sich Seamless Migrate von os-migrate?
os-migrate exportiert und importiert Tenant-Ressourcen und kopiert Workloads per Cold-Migration, wobei die VM während der gesamten Kopie gestoppt bleibt. Seamless Migrate baut darauf auf und ergänzt Warm-Migration für OpenStack-Quellen, Storage-Übergabe, die Orchestrierung von VMware-Warm-Migrationen sowie eine Control Plane mit Plänen, Wellen, Schätzungen der Ausfallzeit, Freigaben, Verifizierung, Rollback, Dashboard, REST API und CLI.
LOSLEGEN
Große Möglichkeiten.
Zuerst ein kleiner Pilot.
Die Demo durchläuft jede Phase, von der Vorabkopie über Cutover und Verifizierung bis zum Rollback, mit simulierten Clouds auf Ihrem Laptop. Zum Ausprobieren ist kein OpenStack nötig.
Docker auf einem Linux-Server oder Colima auf einem Mac
$ git clone https://github.com/imransetiadi/seamless-vms-migrationgit clone https://github.com/imransetiadi/seamless-vms-migration$ cd seamless-vms-migrationcd seamless-vms-migration# nur macOS: unter Linux nicht nötig$ make seamless-colima-upmake seamless-colima-up # nur macOS: unter Linux nicht nötig$ scripts/compose-init.shscripts/compose-init.sh# simulierte Clouds, alle Phasen$ make seamless-demomake seamless-demo # simulierte Clouds, alle PhasenLokale Demo ausprobieren (öffnet in neuem Tab)Melden Sie sich unter /login mit dem Admin-Token an, das compose-init.sh ausgegeben hat. Podman funktioniert auch: SEAMLESS_ENGINE=podman.