Crear una réplica de alta disponibilidad
En una configuración activa/pasiva, el aparato réplica es una copia redundante del aparato principal. Si el aparato principal falla, el modo de alta disponibilidad permite que la réplica actúe como aparato principal, lo que posibilita que la interrupción del servicio sea mínima.
En esta guía
- Crear una réplica de alta disponibilidad
- Crear réplicas de replicación geográfica
- Configurar el DNS para replicación geográfica
Crear una réplica de alta disponibilidad
-
Configurar un aparato Servidor de GitHub Enterprise nuevo en la plataforma que desees. El aparato réplica debe espejar la CPU, la RAM y los ajustes de almacenamiento del aparato principal. Recomendamos que instales el aparato réplica en un entorno separado. El hardward subyacente, el software y los componentes de red deben estar aislados de los del aparato principal. Si estás usando un proveedor de nube, utiliza una región o zona separada. Para obtener más información, consulta "Configurar una instancia Servidor de GitHub Enterprise".
-
Desde un navegador, dirígete a la nueva dirección IP del aparato réplica y carga tu licencia GitHub Enterprise.
-
Establece una contraseña de administrador que coincida con la contraseña del aparato principal y continúa.
-
Haz clic en Configure as Replica (Configurar como réplica).
-
En "Agregar nueva clave SSH", escribe tu clave SSH.
-
Haz clic en Add key (Agregar clave), luego haz clic en Continue (Continuar).
-
Conectarse a la dirección IP del aparato réplica usando SSH.
$ ssh -p 122 admin@REPLICA IP
-
To generate a key pair for replication, use the
ghe-repl-setup
command with the primary appliance's IP address and copy the public key that it returns.$ ghe-repl-setup PRIMARY IP
-
To add the public key to the list of authorized keys on the primary appliance, browse to
https://PRIMARY-HOSTNAME/setup/settings
and add the key you copied from the replica to the list. -
To verify the connection to the primary and enable replica mode for the new replica, run
ghe-repl-setup
again.$ ghe-repl-setup PRIMARY IP
-
Para comenzar la replicación de las bases de datos, utiliza el comando
ghe-repl-start
.$ ghe-repl-start
**Advertencia:** `ghe-repl-start` produce una breve interrupción en el servidor principal, durante la cual los usuarios pueden experimentar errores internos del servidor. Para transmitir un mensaje más cordial, ejecuta `ghe-maintenance -s` en el nodo principal antes de ejecutar `ghe-repl-start` en el nodo réplica para poner el aparato en modo de mantenimiento. Una vez que la replica comienza, inhabilita el modo de mantenimiento con `ghe-maintenance -u`. -
To verify the status of each datastore's replication channel, use the
ghe-repl-status
command.$ ghe-repl-status
Crear réplicas de replicación geográfica
This example configuration uses a primary and two replicas, which are located in three different geographic regions. Aunque los tres nodos pueden estar en redes diferentes, se necesitan todos los nodos para que sean accesibles desde todos los demás nodos. Como mínimo, los puertos administrativos requeridos deben estar abiertos para todos los demás nodos. For more information about the port requirements, see "Network Ports."
-
Create the first replica the same way you would for a standard two node configuration by running
ghe-repl-setup
on the first replica.(replica1)$ ghe-repl-setup PRIMARY IP(replica1)$ ghe-repl-start
-
Create a second replica and use the
ghe-repl-setup --add
command. The--add
flag prevents it from overwriting the existing replication configuration and adds the new replica to the configuration.(replica2)$ ghe-repl-setup --add PRIMARY IP(replica2)$ ghe-repl-start
-
Por defecto, las réplicas se configuran en el mismo centro de datos. Configura las réplicas para diferentes centros de datos estableciendo un valor diferente para la opción de centro de datos. Los valores específicos pueden ser los que tú quieras, siempre que sean diferentes entre sí. Run the
ghe-repl-node
command on each node and specify the datacenter.On the primary:
(primary)$ ghe-repl-node --datacenter [PRIMARY DC NAME]
On the first replica:
(replica1)$ ghe-repl-node --datacenter [FIRST REPLICA DC NAME]
On the second replica:
(replica2)$ ghe-repl-node --datacenter [SECOND REPLICA DC NAME]
Tip: You can set the
--datacenter
and--active
options at the same time. -
Un nodo de réplica activo almacenará copias de los datos del aparato y responderá las solicitudes de usuario final. Un nodo inactivo almacenará copias de los datos del aparato, pero no podrá atender las solicitudes de usuario final. Enable active mode using the
--active
flag or inactive mode using the--inactive
flag.On the first replica:
(replica1)$ ghe-repl-node --active
On the second replica:
(replica2)$ ghe-repl-node --active
-
To apply the configuration, use the
ghe-config-apply
command on the primary.(primary)$ ghe-config-apply
Configurar el DNS para replicación geográfica
Configure Geo DNS using the IP addresses of the primary and replica nodes. You can also create a DNS CNAME for the primary node (e.g. primary.github.example.com
) to access the primary node via SSH or to back it up via backup-utils
.
For testing, you can add entries to the local workstation's hosts
file (for example, /etc/hosts
). These example entries will resolve requests for HOSTNAME
to replica2
. Puedes apuntar a hosts específicos comentando en diferentes líneas.
# <primary IP> <em>HOSTNAME</em>
# <replica1 IP> <em>HOSTNAME</em>
<replica2 IP> <em>HOSTNAME</em>