Informationen zum Ersetzen von GitHub Enterprise Server-Clusterknoten
Du kannst in einem GitHub Enterprise Server-Cluster sowohl einen funktionierenden Knoten als auch einen Knoten ersetzen, der unerwartet ausgefallen ist.
Warnung: Um Konflikte zu vermeiden, verwende keinen Hostnamen wieder, der zuvor einem Knoten im Cluster zugewiesen wurde.
Funktionierenden Knoten ersetzen
Du kannst einen vorhandenen funktionalen Knoten in deinem Cluster ersetzen. Beispielsweise solltest du einen virtuellen Computer (VM) mit zusätzlichen CPU-, Arbeitsspeicher- oder Speicherressourcen bereitstellen.
Um einen funktionalen Knoten zu ersetzen, installiere die GitHub Enterprise Server-Anwendung auf einem neuen virtuellen Computer, konfiguriere eine IP-Adresse, füge den neuen Knoten der Clusterkonfigurationsdatei hinzu, initialisiere den Cluster, und wende die Konfiguration an. Schalte anschließend den ersetzten Knoten offline.
-
Bereitstellen und Installieren von GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersetzungsknoten.
-
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.conf
den ausgefallenen Knoten, und füge den neuen Ersatzknoten hinzu. Diese geändertecluster.conf
-Datei ersetzt z. B.ghe-data-node-3
durch den neu bereitgestellten 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 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. -
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 Dateicluster.conf
konfiguriert. -
Wenn du einen Knoten offline nimmst, der Datendienste wie
git-server
,pages-server
oderstorage-server
bereitstellt, evakuiere den Knoten. Weitere Informationen findest du unter Evakuieren eines Clusterknotens, auf dem Datendienste ausgeführt werden. -
Um den fehlgeschlagenen Knoten offline auf einem beliebigen Knoten zu markieren, ändere die Clusterkonfigurationsdatei (
cluster.conf
) im relevanten Knotenabschnitt, sodass der Textoffline = true
enthalten ist.Diese geänderte Datei
cluster.conf
markiert beispielsweise denghe-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
-
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. -
Wenn du den primären MySQL- oder Redis-Knoten ersetzt, ändere in
cluster.conf
denmysql-master
- oderredis-master
-Wert in den Namen des Ersatzknotens.In dieser geänderten
cluster.conf
-Datei wird beispielsweise ein neu bereitgestellter Clusterknotenghe-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
Du kannst einen fehlerhaften Knoten in deinem Cluster ersetzen. Beispielsweise kann sich ein Software- oder Hardwareproblem auf die Verfügbarkeit eines Knotens auswirken.
Um einen Knoten im Notfall zu ersetzen, installiere die GitHub Enterprise Server-Anwendung auf einer neuen VM, konfiguriere eine IP-Adresse, schalte den fehlerhaften Knoten offline, wende die Konfiguration an, füge den neuen Knoten der Clusterkonfigurationsdatei hinzu, initialisiere den Cluster, und wende die Konfiguration an. Evakuiere dann den fehlerhaften Knoten.
-
Bereitstellen und Installieren von GitHub Enterprise Server mit einem eindeutigen Hostnamen auf dem Ersetzungsknoten.
-
Konfiguriere mithilfe der Verwaltungsshell oder DHCP nur die IP-Adresse des Ersatzknotens. Konfiguriere keine anderen Einstellungen.
-
Um den fehlgeschlagenen Knoten offline auf einem beliebigen Knoten zu markieren, ändere die Clusterkonfigurationsdatei (
cluster.conf
) im relevanten Knotenabschnitt, sodass der Textoffline = true
enthalten ist.Diese geänderte Datei
cluster.conf
markiert beispielsweise denghe-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
-
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. -
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ändertecluster.conf
-Datei ersetzt z. B.ghe-data-node-3
durch den neu bereitgestellten 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 primären MySQL- oder Redis-Knoten ersetzt, ändere in
cluster.conf
denmysql-master
- oderredis-master
-Wert in den Namen des Ersatzknotens.In dieser geänderten
cluster.conf
-Datei wird beispielsweise ein neu bereitgestellter Clusterknotenghe-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
-
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. -
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 Dateicluster.conf
konfiguriert. -
Wenn du einen Knoten offline nimmst, der Datendienste wie
git-server
,pages-server
oderstorage-server
bereitstellt, evakuiere den Knoten. Weitere Informationen findest du unter Evakuieren eines Clusterknotens, auf dem Datendienste ausgeführt werden.