Artikelversion: Enterprise Server 2.17
Clusterknoten ersetzen
Zum Ersetzen eines GitHub Enterprise Server-Knotens müssen Sie die betroffenen Knoten in der Clusterkonfigurationsdatei („cluster.conf“) als offline markieren und die Ersatzknoten hinzufügen. Dies ist ggf. erforderlich, wenn ein Knoten fehlschlägt oder um einen Knoten mit mehr Ressourcen hinzuzufügen, um die Leistung zu erhöhen.
Warnung: Zum Vermeiden von Konflikten muss der Ersatzknoten einen Hostnamen verwenden, der noch nicht im Cluster verwendet wurde.
Funktionierenden Knoten ersetzen
-
Verteile und installiere GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersatzknoten.
-
Konfiguriere mithilfe der Verwaltungsshell oder DHCP nur die IP-Adresse des Ersatzknotens. Konfiguriere keine anderen Einstellungen.
-
Um den neu verteilten Ersatzknoten hinzuzufügen, entferne auf einem beliebigen Knoten in der Datei
cluster.confden ausgefallenen Knoten, und füge den neuen Ersatzknoten hinzu. So ersetzt beispielsweise diese geänderte Dateicluster.confden Wertghe-data-node-3durch den neu verteilten Knotenghe-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
-
Führe in der Verwaltungsshell des Knotens mit der geänderten Datei
cluster.confden Befehlghe-cluster-config-initaus. Dadurch wird der neu hinzugefügte Knoten im Cluster initialisiert. -
Führe auf demselben Knoten den Befehl
ghe-cluster-config-applyaus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und jeder Knoten entsprechend der geänderten Dateicluster.confkonfiguriert. -
Wenn Du einen Knoten offline nimmst, für den in der Datei „cluster.conf“ der Wert
git-server = truefestgelegt ist, evakuiere den Knoten. Weitere Informationen findest Du unter „Clusterknoten evakuieren“. -
Um den ausgefallenen Knoten als offline zu markieren, füge auf einem beliebigen Knoten in der Clusterkonfigurationsdatei (
cluster.conf) im Abschnitt mit dem entsprechenden Knoten den Textoffline = truehinzu.Beispielsweise wird in der folgenden geänderten Datei
cluster.confder Knotenghe-data-node-3als offline markiert:[cluster "ghe-data-node-3"] hostname = ghe-data-node-3 offline = true ipv4 = 192.168.0.6 # ipv6 = fd12:3456:789a:1::6
-
Führe in der Verwaltungsshell des Knotens mit der geänderten Datei
cluster.confden Befehlghe-cluster-config-applyaus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und der Knoten als offline markiert. -
Wenn Du den MySQL-Masterknoten oder den Redis-Masterknoten ersetzt, ersetze in der Datei
cluster.confden Wertmysql-masteroderredis-masterdurch den Namen des Ersatzknotens.So gibt beispielsweise diese geänderte Datei
cluster.confden neu verteilten Clusterknotenghe-replacement-data-node-1als MySQL- und Redis-Masterknoten an:mysql-master = ghe-replacement-data-node-1 redis-master = ghe-replacement-data-node-1
Knoten in einem Notfall ersetzen
-
Verteile und installiere GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersatzknoten.
-
Konfiguriere mithilfe der Verwaltungsshell oder DHCP nur die IP-Adresse des Ersatzknotens. Konfiguriere keine anderen Einstellungen.
-
Um den ausgefallenen Knoten als offline zu markieren, füge auf einem beliebigen Knoten in der Clusterkonfigurationsdatei (
cluster.conf) im Abschnitt mit dem entsprechenden Knoten den Textoffline = truehinzu.Beispielsweise wird in der folgenden geänderten Datei
cluster.confder Knotenghe-data-node-3als offline markiert:[cluster "ghe-data-node-3"] hostname = ghe-data-node-3 offline = true ipv4 = 192.168.0.6 # ipv6 = fd12:3456:789a:1::6
-
Führe in der Verwaltungsshell des Knotens mit der geänderten Datei
cluster.confden Befehlghe-cluster-config-applyaus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und der Knoten als offline markiert. -
Um den neu verteilten Ersatzknoten hinzuzufügen, entferne auf einem beliebigen Knoten in der Datei
cluster.confden ausgefallenen Knoten, und füge den neuen Ersatzknoten hinzu. So ersetzt beispielsweise diese geänderte Dateicluster.confden Wertghe-data-node-3durch den neu verteilten Knotenghe-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
-
Wenn Du den MySQL-Masterknoten oder den Redis-Masterknoten ersetzt, ersetze in der Datei
cluster.confden Wertmysql-masteroderredis-masterdurch den Namen des Ersatzknotens.So gibt beispielsweise diese geänderte Datei
cluster.confden neu verteilten Clusterknotenghe-replacement-data-node-1als MySQL- und Redis-Masterknoten an:mysql-master = ghe-replacement-data-node-1 redis-master = ghe-replacement-data-node-1
-
Führe in der Verwaltungsshell des Knotens mit der geänderten Datei
cluster.confden Befehlghe-cluster-config-initaus. Dadurch wird der neu hinzugefügte Knoten im Cluster initialisiert. -
Führe auf demselben Knoten den Befehl
ghe-cluster-config-applyaus. Dadurch wird die Konfigurationsdatei validiert, auf jeden Knoten im Cluster kopiert und jeder Knoten entsprechend der geänderten Dateicluster.confkonfiguriert. -
Wenn Du einen Knoten offline nimmst, für den in der Datei „cluster.conf“ der Wert
git-server = truefestgelegt ist, evakuiere den Knoten. Weitere Informationen findest Du unter „Clusterknoten evakuieren“.