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 ersetzen

Zum Ersetzen eines GitHub Enterprise Server-Knotens musst du die betroffenen Knoten in der Clusterkonfigurationsdatei (cluster.conf) als offline markieren und die Ersatzknoten hinzufügen. Dies ist ggf. erforderlich, wenn bei einem Knoten ein Fehler auftritt, oder um zur Leistungssteigerung einen Knoten mit mehr Ressourcen hinzuzufügen.

Informationen zum Ersetzen von Clusterknoten

Die Clustertopologie für GitHub Enterprise Server ermöglicht eine horizontale Skalierung für Unternehmen mit Zehntausenden von Entwickler*innen. GitHub empfiehlt Clustering, wenn bei Verwendung eines einzelnen primären Knotens regelmäßig eine Ressourcenüberlastung auftreten würde. Das Clustering erfordert eine sorgfältige Planung und zusätzlichen Verwaltungsaufwand. Weitere Informationen findest du unter Informationen zu Clustering.

Du kannst in einem Cluster sowohl einen funktionierenden Knoten als auch einen Knoten ersetzen, der unerwartet ausgefallen ist.

Warnung: Um Konflikte zu vermeiden, muss der Ersatzknoten einen neuen Hostnamen verwenden, der im Cluster noch nicht verwendet wurde.

Funktionierenden Knoten ersetzen

  1. Bereitstellen und Installieren von GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersetzungsknoten. 1. Konfiguriere mithilfe der Verwaltungsshell oder DHCP nur die IP-Adresse des Ersatzknotens. Konfiguriere keine anderen Einstellungen. 1. Um den neu verteilten Ersatzknoten hinzuzufügen, entferne auf einem beliebigen Knoten in der Datei cluster.conf den ausgefallenen Knoten, und füge den neuen Ersatzknoten hinzu. Diese geänderte cluster.conf-Datei ersetzt z. B. ghe-data-node-3 durch den neu bereitgestellten Knoten ghe-replacement-data-node-3.

    [cluster "ghe-replacement-data-node-3"]
      hostname = ghe-replacement-data-node-3
      ipv4 = 192.168.0.7
      # ipv6 = fd12:3456:789a:1::7
      git-server = true
      pages-server = true
      mysql-server = true
      elasticsearch-server = true
      redis-server = true
      memcache-server = true
      metrics-server = true
      storage-server = true
    
    1. Führe aus der administrativen Shell des Knotens mit der geänderten `cluster.conf` `ghe-cluster-config-init` aus. Dadurch wird der neu hinzugefügte Knoten im Cluster initialisiert. 1. Führe auf demselben Knoten `ghe-cluster-config-apply` aus. Dadurch wird die Konfigurationsdatei validiert und auf jeden Knoten im Cluster kopiert. Außerdem wird jeder Knoten entsprechend der geänderten Datei `cluster.conf` konfiguriert. 1. Wenn du einen Knoten offline nimmst, der Datendienste wie `git-server`, `pages-server` oder `storage-server` bereitstellt, evakuiere den Knoten. Weitere Informationen findest du unter [AUTOTITLE](/admin/enterprise-management/configuring-clustering/evacuating-a-cluster-node-running-data-services). 1. Um den fehlgeschlagenen Knoten offline auf einem beliebigen Knoten zu markieren, ändere die [Clusterkonfigurationsdatei](/admin/enterprise-management/configuring-clustering/initializing-the-cluster#about-the-cluster-configuration-file) (`cluster.conf`) im relevanten Knotenabschnitt, sodass der Text `offline = true` enthalten ist.

    Diese geänderte Datei cluster.conf markiert beispielsweise den ghe-data-node-3-Knoten als offline:

      [cluster "ghe-data-node-3"]
      hostname = ghe-data-node-3
      offline = true
      ipv4 = 192.168.0.6
      # ipv6 = fd12:3456:789a:1::6
      
    1. Führe aus der administrativen Shell des Knotens, wo du `cluster.conf` geändert hast, `ghe-cluster-config-apply` aus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und der Knoten als offline markiert. 1. Wenn du den primären MySQL- oder Redis-Knoten ersetzt, ändere in `cluster.conf` den `mysql-master`- oder `redis-master`-Wert in den Namen des Ersatzknotens.

    In dieser geänderten cluster.conf-Datei wird beispielsweise ein neu bereitgestellter Clusterknoten ghe-replacement-data-node-1 als primärer MySQL- und Redis-Knoten angegeben:

    mysql-master = ghe-replacement-data-node-1
    redis-master = ghe-replacement-data-node-1
    

Knoten in einem Notfall ersetzen

  1. Bereitstellen und Installieren von GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersetzungsknoten. 1. Konfiguriere mithilfe der Verwaltungsshell oder DHCP nur die IP-Adresse des Ersatzknotens. Konfiguriere keine anderen Einstellungen. 1. Um den fehlgeschlagenen Knoten offline auf einem beliebigen Knoten zu markieren, ändere die Clusterkonfigurationsdatei (cluster.conf) im relevanten Knotenabschnitt, sodass der Text offline = true enthalten ist.

    Diese geänderte Datei cluster.conf markiert beispielsweise den ghe-data-node-3-Knoten als offline:

      [cluster "ghe-data-node-3"]
      hostname = ghe-data-node-3
      offline = true
      ipv4 = 192.168.0.6
      # ipv6 = fd12:3456:789a:1::6
      
    1. Führe aus der administrativen Shell des Knotens, wo du `cluster.conf` geändert hast, `ghe-cluster-config-apply` aus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und der Knoten als offline markiert. 1. Um den neu verteilten Ersatzknoten hinzuzufügen, entferne auf einem beliebigen Knoten in der Datei `cluster.conf` den ausgefallenen Knoten, und füge den neuen Ersatzknoten hinzu. Diese geänderte `cluster.conf`-Datei ersetzt z. B. `ghe-data-node-3` durch den neu bereitgestellten Knoten `ghe-replacement-data-node-3`.
    [cluster "ghe-replacement-data-node-3"]
      hostname = ghe-replacement-data-node-3
      ipv4 = 192.168.0.7
      # ipv6 = fd12:3456:789a:1::7
      git-server = true
      pages-server = true
      mysql-server = true
      elasticsearch-server = true
      redis-server = true
      memcache-server = true
      metrics-server = true
      storage-server = true
    
    1. Wenn du den primären MySQL- oder Redis-Knoten ersetzt, ändere in `cluster.conf` den `mysql-master`- oder `redis-master`-Wert in den Namen des Ersatzknotens.

    In dieser geänderten cluster.conf-Datei wird beispielsweise ein neu bereitgestellter Clusterknoten ghe-replacement-data-node-1 als primärer MySQL- und Redis-Knoten angegeben:

    mysql-master = ghe-replacement-data-node-1
    redis-master = ghe-replacement-data-node-1
    
    1. Führe aus der administrativen Shell des Knotens mit der geänderten `cluster.conf` `ghe-cluster-config-init` aus. Dadurch wird der neu hinzugefügte Knoten im Cluster initialisiert. 1. Führe auf demselben Knoten `ghe-cluster-config-apply` aus. Dadurch wird die Konfigurationsdatei validiert und auf jeden Knoten im Cluster kopiert. Außerdem wird jeder Knoten entsprechend der geänderten Datei `cluster.conf` konfiguriert. 1. Wenn du einen Knoten offline nimmst, der Datendienste wie `git-server`, `pages-server` oder `storage-server` bereitstellt, evakuiere den Knoten. Weitere Informationen findest du unter [AUTOTITLE](/admin/enterprise-management/configuring-clustering/evacuating-a-cluster-node-running-data-services).