Aviso: para evitar conflitos, o nó de substituição deve usar um nome de host exclusivo no cluster.
Substituir um nó funcional
-
Provision and install GitHub Enterprise Server com um nome de host exclusivo no nó de substituição.
-
Usando o shell administrativo ou DHCP, configure only (somente) o endereço IP de cada nó. Não altere outras configurações.
-
Para adicionar o novo nó de substituição provisionado, em qualquer nó, modifique o arquivo
cluster.conf
para remover o nó com falha e adicionar o nó de substituição. Por exemplo, este arquivo modificadocluster.conf
substituighe-data-node-3
pelo novo nó provisionado,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
-
A partir do shell administrativo do nó modificado
cluster.conf
, executeghe-cluster-config-init
. Isto irá inicializar o nó recém-adicionado no cluster. -
No mesmo nó, execute
ghe-cluster-config-apply
. Isto irá validar o arquivo de configuração, copiá-lo para cada nó do cluster, e configurar cada nó de acordo com o arquivocluster.conf
. -
Se você estiver usando um nó offline que tenha
git-server = true
definido em cluster.conf, remova o nó. Para obter mais informações, consulte "Evacuating a cluster node." -
Para marcar a falha do nó offline, em qualquer nó, modifique o cluster configuration file (
cluster.conf
) na seção nó relevante para incluir o textooffline = true
.Por exemplo, esta modificação
cluster.conf
irá marcar o nóghe-data-node-3
como offline:[cluster "ghe-data-node-3"] hostname = ghe-data-node-3 offline = true ipv4 = 192.168.0.6 # ipv6 = fd12:3456:789a:1::6
-
A partir do shell administrativo do nó modificado
cluster.conf
, executeghe-cluster-config-apply
. Isso irá validar o arquivo de configuração, copiá-lo para cada nó do cluster e marcar o nó offline. -
Se você estiver substituindo o nó primário do MySQL ou Redis, no
cluster.conf
, modifique o valor demysql-master
ouredis-master
com o nome do nó de substituição.Por exemplo, o arquivo
cluster.conf
modificado especifica um novo nó de cluster provisionado,ghe-replacement-data-node-1
como o nó principal do MySQL e do Redis:mysql-master = ghe-replacement-data-node-1 redis-master = ghe-replacement-data-node-1
Substituir um nó em caso de emergência
-
Provision and install GitHub Enterprise Server com um nome de host exclusivo no nó de substituição.
-
Usando o shell administrativo ou DHCP, configure only (somente) o endereço IP de cada nó. Não altere outras configurações.
-
Para marcar a falha do nó offline, em qualquer nó, modifique o cluster configuration file (
cluster.conf
) na seção nó relevante para incluir o textooffline = true
.Por exemplo, esta modificação
cluster.conf
irá marcar o nóghe-data-node-3
como offline:[cluster "ghe-data-node-3"] hostname = ghe-data-node-3 offline = true ipv4 = 192.168.0.6 # ipv6 = fd12:3456:789a:1::6
-
A partir do shell administrativo do nó modificado
cluster.conf
, executeghe-cluster-config-apply
. Isso irá validar o arquivo de configuração, copiá-lo para cada nó do cluster e marcar o nó offline. -
Para adicionar o novo nó de substituição provisionado, em qualquer nó, modifique o arquivo
cluster.conf
para remover o nó com falha e adicionar o nó de substituição. Por exemplo, este arquivo modificadocluster.conf
substituighe-data-node-3
pelo novo nó provisionado,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
-
Se você estiver substituindo o nó primário do MySQL ou Redis, no
cluster.conf
, modifique o valor demysql-master
ouredis-master
com o nome do nó de substituição.Por exemplo, o arquivo
cluster.conf
modificado especifica um novo nó de cluster provisionado,ghe-replacement-data-node-1
como o nó principal do MySQL e do Redis:mysql-master = ghe-replacement-data-node-1 redis-master = ghe-replacement-data-node-1
-
A partir do shell administrativo do nó modificado
cluster.conf
, executeghe-cluster-config-init
. Isto irá inicializar o nó recém-adicionado no cluster. -
No mesmo nó, execute
ghe-cluster-config-apply
. Isto irá validar o arquivo de configuração, copiá-lo para cada nó do cluster, e configurar cada nó de acordo com o arquivocluster.conf
. -
Se você estiver usando um nó offline que tenha
git-server = true
definido em cluster.conf, remova o nó. Para obter mais informações, consulte "Evacuating a cluster node."