Hinweis
Enterprise Live Migrations ist in öffentliche Vorschau und kann geändert werden.
Was ist Enterprise Live Migrations?
Enterprise Live Migrations (ELM) ist ein Dienst für die Migration von Repositorys von GitHub Enterprise Server zu GitHub Enterprise-Cloud mit Datenresidenz (GHE.com). Es wird mit Hilfe eines Befehlszeilentools auf GitHub Enterprise Server betrieben.
Migrationen sind "live", da Benutzer das Quell-Repository während des großteils des Migrationsprozesses weiterhin verwenden können. Nachdem die Repository-Daten anfänglich gesammelt wurden, überprüfen Webhooks auf Änderungen am Repository, etwa neue Commits oder Aktualisierungen der Einstellungen. Die Änderungen werden ELM gemeldet und in die Migration einbezogen.
Eine ELM Migration umfasst ein einzelnes Repository. Daten auf Organisationsebene, z. B. Organisationseinstellungen, Teams und Projekte, sind nicht in der Migration enthalten und müssen manuell im Zielunternehmen neu konfiguriert werden.
Unterschiede zu GitHub Enterprise Importer
ELM und GitHub Enterprise Importer (GEI) sind separate Werkzeuge, die die Migration von Repositories von GitHub Enterprise Server zu GHE.com unterstützen.
Die wichtigsten Vorteile ELM sind:
- Reduzierte Entwicklerausfallzeiten: Während einer Migration mit GEI verlieren Entwickler den Zugriff auf das Repository für die Dauer der Migration. Diese Ausfallzeit verursacht Risiken wie blockierte Bereitstellungen oder ins Stocken geratene Feature-Entwicklung.
- Monorepo-Unterstützung: ELM ist in der Lage, große, komplexe Monorepos mit tiefen Historien zu migrieren. Diese überschreiten häufig die Kapazität von GEI.
- Bessere Sichtbarkeit: ELM Bietet detaillierte Einblicke auf Repositoryebene in den Migrationsfortschritt, um präzise Fehler zu erkennen, sodass Sie sicher sein können, dass das migrierte Repository ein genaues Replikat ist.
Aufgrund der höheren Datenverkehrslast, die Liveupdates zugeordnet ist, ELM unterstützt jedoch weniger gleichzeitige Migrationen als GEI: bis zu 10 gleichzeitige Repositorymigrationen aus einer einzigen GitHub Enterprise Server Instanz und 20 gleichzeitige Migrationen pro Zielunternehmen.
Sie können beide Tools im Laufe einer Plattformmigration verwenden und die Repositories priorisieren, die am meisten von ELM profitieren.
Übersicht über eine Migration
In der Regel führt ein Websiteadministrator eine Migration mit dem elm CLI-Tool in einer Terminalsitzung über SSH aus. Der Betreiber muss sowohl Zugriff auf personal access tokens als auch auf das Zielunternehmen GitHub Enterprise Server gewähren.
Die übergeordneten Phasen einer Migration sind:
-
**Erstellung**: Der Websiteadministrator führt CLI-Befehle aus, um die Migration zu erstellen und zu starten, wobei das Quellrepository und das Ziel angegeben werden. -
**Preflight-Prüfungen**: Der Migrationsdienst überprüft Parameter, Token, Netzwerkkonnektivität und Repositorykonfiguration. -
**Backfill**: Das ELM Tool führt eine anfängliche Durchforstung durch, um alle Repositorydaten zu erfassen und an den Migrationsdienst auf der Zielplattform zu senden. Während der Backfill-Phase überprüfen Webhooks auf Live-Updates für das Repository, während die Migration fortgesetzt wird. -
**Umschaltung**: Das Quell-Repository ist gesperrt, und alle endgültigen Live-Updates werden an ELM gesendet. Dies ist der Ausfallzeitszeitraum für Entwickler. -
**Abschluss**: Die Migration ist abgeschlossen. Der Websiteadministrator kann überprüfen, ob die Daten erfolgreich migriert wurden. -
**Nachverfolgung**: Ein Organisationsinhaber führt Nachverfolgungsaufgaben im Empfängerunternehmen durch, wie das Neukonfigurieren von Organisationseinstellungen und das Neu zuordnen von Aktivitäten an Benutzer.
Nächste Schritte
Informationen zum Ausführen einer Migration finden Sie unter Vorbereiten der Livemigration von GitHub Enterprise Server zu GHE.com.