Skip to main content

Initiieren eines Failovers zu deiner Replikat-Appliance

Du kannst an der Befehlszeile zu Wartungs- und Testzwecken oder beim Fehlschlagen der primären Appliance ein Failover zu einer GitHub Enterprise Server-Replikat-Appliance durchführen.

Die für das Failover erforderliche Zeit hängt davon ab, wie lange es dauert, das Replikat manuell hochzustufen und den Traffic weiterzuleiten. Die durchschnittliche Dauer liegt zwischen 20–30 Minuten.

Wenn ein Replikat hochgestuft wird, wird nicht automatisch die Replikation für vorhandene Appliances eingerichtet. Nach dem Hochstufen eines Replikats kannst Du bei Bedarf eine Replikation von der neuen primären Instanz zu den vorhandenen Appliances und zur vorherigen primären Instanz einrichten.

  1. Wenn die primäre Appliance verfügbar ist, versetze die primäre Appliance in den Wartungsmodus, damit die Replikation abgeschlossen werden kann, bevor du die Geräte wechselst.

    • Versetze die Appliance in den Wartungsmodus.

      • Informationen zur Verwendung der Verwaltungskonsole findest du unter Wartungsmodus aktivieren und planen.

      • Du kannst auch den Befehl ghe-maintenance -s verwenden.

        ghe-maintenance -s
        
    • Wenn die Anzahl der aktiven Git-Vorgänge, MySQL-Abfragen und Resque-Aufträge null erreicht, warte 30 Sekunden.

      Hinweis: In Nomad werden immer Aufträge ausgeführt, auch im Wartungsmodus. Daher kannst du diese Aufträge gefahrlos ignorieren.

    • Um den Status OK für alle Berichte zu Replikationskanälen zu überprüfen, verwende den Befehl ghe-repl-status -vv.

      ghe-repl-status -vv
      
  2. Aktivieren Sie den Wartungsmodus für alle aktiven Replikat-Appliances. Weitere Informationen findest du unter Wartungsmodus aktivieren und planen.

  3. Verwenden Sie auf der Replikat-Appliance, auf die Sie ein Failover ausführen möchten, zum Beenden der Replikation und zum Hochstufen der Replikat-Appliance auf den Status „primär“ den Befehl ghe-repl-promote.

    ghe-repl-promote
    

    Hinweis: Wenn der primäre Knoten nicht verfügbar ist, können Warnungen und Timeouts auftreten, die jedoch ignoriert werden können.

  4. Aktualisiere den DNS-Eintrag so, dass er auf die IP-Adresse des Replikats verweist. Nach dem Verstreichen des TTL-Zeitraums wird der Traffic an das Replikat geleitet. Stelle bei der Verwendung eines Load-Balancers sicher, dass er so konfiguriert ist, den Traffic an das Replikat zu senden.

  5. Benachrichtige die Benutzer, dass sie die normalen Vorgänge wieder aufnehmen können.

  6. Richte bei Bedarf die Replikation von der neuen primären Instanz auf die bestehenden Appliances und die vorherige primäre Instanz ein. Weitere Informationen findest du unter Informationen zur Hochverfügbarkeitskonfiguration.

  7. Appliances, für die du keine Replikation einrichten möchtest, die aber vor dem Failover Teil der Hochverfügbarkeitskonfiguration waren, müssen anhand ihrer UUID aus der Hochverfügbarkeitskonfiguration entfernt werden.

    • Rufe die UUID auf den früheren Appliances über cat /data/user/common/uuid ab.

      cat /data/user/common/uuid
      
    • Entferne auf der neuen primären Appliance die UUIDs mithilfe von ghe-repl-teardown. Ersetze UUID durch eine UUID, die du im vorherigen Schritt abgerufen hast.

      ghe-repl-teardown -u  UUID
      

Weiterführende Themen