Skip to main content
Wir veröffentlichen regelmäßig Aktualisierungen unserer Dokumentation, und die Übersetzung dieser Seite ist möglicherweise noch nicht abgeschlossen. Aktuelle Informationen findest du in der englischsprachigen Dokumentation.

Clusterknoten evakuieren

Du kannst Datendienste auf einem Clusterknoten evakuieren.

Informationen zum Evakuieren von Clusterknoten

In einer Clusterkonfiguration für GitHub Enterprise Server kannst du einen Knoten „evakuieren“, bevor du den Knoten offline schaltest. Die Evakuierung stellt sicher, dass die verbleibenden Knoten in einer Dienstebene alle Daten des Diensts enthalten. Wenn du zum Beispiel die VM eines Knotens in deinem Cluster ersetzt, solltest du zuerst den Knoten evakuieren.

Weitere Informationen zu Knoten und Dienstebenen für GitHub Enterprise Server findest du unter Informationen zu Clusterknoten.

Warnungen:

  • Zur Vermeidung eines Datenverlusts empfiehlt GitHub dringend, dass du einen Knoten evakuierst, bevor du ihn offline schaltest.

  • Wenn du nur über drei Knoten in deinem Datendienstecluster verfügst, kannst du die Knoten nicht evakuieren, weil ghe-spokes kein weiterer Standort für das Erstellen einer Kopie zur Verfügung steht. Wenn du über vier oder mehr Knoten verfügst, verschiebt ghe-spokes alle Repositorys von dem evakuierten Knoten.

Clusterknoten evakuieren

Wenn du planst, einen Knoten offline zu schalten und dem Knoten eine Datendienstrolle wie git-server, pages-server oder storage-server zugewiesen ist, evakuiere jeden Knoten, bevor du den Knoten offline schaltest.

  1. SSH in einen beliebigen Knoten in deinem Cluster. Weitere Informationen findest du unter Auf die Verwaltungsshell (SSH) zugreifen.

  2. Führe den folgenden Befehl aus, um die UUID des zu evakuierenden Knotens zu ermitteln. Ersetze HOSTNAME durch den Hostnamen des Knotens.

    $ ghe-config cluster.HOSTNAME.uuid
  3. Überwache den Status des Knotens, während GitHub Enterprise Server die Daten kopiert. Schalte den Knoten erst dann offline, wenn die Kopie vollständig ist. Um den Status deines Knotens zu überwachen, führe einen der folgenden Befehle aus, und ersetze UUID durch die UUID aus Schritt 2.

    • Git:

      $ ghe-spokes evac-status git-server-UUID
    • GitHub Pages :

      $ echo "select count(*) from pages_replicas where host = 'pages-server-UUID'" | ghe-dbconsole -y
    • Storage:

      $ ghe-storage evacuation-status storage-server-UUID
  4. Nach Abschluss des Kopiervorgangs kannst du den Knoten evakuieren, indem du einen der folgenden Befehle ausführst und dabei UUID durch die UUID aus Schritt 2 ersetzt.

    • Git:

      $ ghe-spokes server evacuate git-server-UUID \'REASON FOR EVACUATION\'
    • GitHub Pages :

      $ ghe-dpages evacuate pages-server-UUID
    • Für Speicher schaltest du zunächst den Knoten offline, indem du den folgenden Befehl ausführst.

      $ ghe-storage offline storage-server-UUID

      Wenn der Speicherknoten offline ist, kannst du ihn evakuieren, indem du den folgenden Befehl ausführst.

      $ ghe-storage evacuate storage-server-UUID