Esta versión de GitHub Enterprise se discontinuó el 2021-09-23. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener un mejor desempeño, más seguridad y nuevas características, actualiza a la última versión de GitHub Enterprise. Para obtener ayuda con la actualización, contacta al soporte de GitHub Enterprise.

Inicializar la agrupación

Una agrupación de GitHub Enterprise Server se debe configurar con una licencia y se debe inicializar mediante un shell administrativo (SSH).

Nota: La agrupación de GitHub Enterprise Server se debe configurar con HTTPS.

Instalar GitHub Enterprise Server

  1. En cada nodo de agrupación, suministra e instala GitHub Enterprise Server. Para obtener más información, consulta "Configurar una instancia GitHub Enterprise Server ."
  2. Mediante el shell administrativo o DHCP, configura solo la dirección IP de cada nodo. No configures los otros parámetros.

Configurar el primer nodo

  1. Conèctate al nodo que se designarà como el primario de MySQL en la cluster.conf. Para obtener màs informaciòn, consulta la secciòn "Acerca del archivo de configuraciòn de clùster".
  2. En tu navegador web, visita https://<ip address>:8443/setup/.
  3. En el prompt, carga tu archivo de licencia y configura una contraseña de consola de administración. Paa obtener más información, consulta la sección "Administrar tu licencia de GitHub Enterprise".
  4. En la Consola de administración, configura y guarda a configuración que desees.
  5. La instancia se reiniciará automáticamente.

Inicializar la agrupación

Para inicializar la agrupación, necesitas un archivo de configuración de agrupación (cluster.conf). Para obtener más información, consulta "Acerca del archivo de configuración de agrupación".

  1. Desde el primer nodo que se configuró, ejecuta ghe-cluster-config. init. De esta manera, se inicializará la agrupación si existen nodos en el archivo de configuración de la agrupación que no están configurados.
  2. Ejecuta ghe-cluster-config-apply. Esto validará el archivo cluster.conf, aplicará la configuración a cada archivo del nodo y traerá los servicios configurados en cada nodo.

Para comprobar el estado de una agrupación en funcionamiento, usa el comando ghe-cluster-status.

Acerca del archivo de configuración de la agrupación

El archivo de configuración de la agrupación (cluster.conf) define los nodos en la agrupación, y los servicios que ejecutan. Para obtener más información, consulta "Acerca de los nodos de agrupación".

Este ejemplo cluster.conf define una agrupación con cinco nodos.

  • Dos nodos (llamados ghe-app-node-\*) ejecutan los servicios web-server y job-server responsables de atender las solicitudes de los clientes.
  • Tres nodos (llamados ghe-data-node-\*) ejecutan los servicios responsables del almacenamiento y la recuperación de los datos de GitHub Enterprise Server.

Los nombres de los nodos pueden ser cualquier nombre de host válido que elijas. Los nombres son conjuntos de nombres de host de cada nodo y también se agregarán a /etc/hosts en cada nodo, de manera que los nodos puedan ser resolubles localmente entre sí.

Especifica el primer nodo de clùster que configuraste como el primario de MySQL a travès de mysql-server y de mysql-master.

[cluster]
  mysql-master = ghe-data-node-1
  redis-master = ghe-data-node-1
  primary-datacenter = default
[cluster "ghe-app-node-1"]
  hostname = ghe-app-node-1
  ipv4 = 192.168.0.2
  # ipv6 = fd12:3456:789a:1::2
  web-server = true
  job-server = true
[cluster "ghe-app-node-2"]
  hostname = ghe-app-node-2
  ipv4 = 192.168.0.3
  # ipv6 = fd12:3456:789a:1::3
  web-server = true
  job-server = true
[cluster "ghe-data-node-1"]
  hostname = ghe-data-node-1
  ipv4 = 192.168.0.4
  # ipv6 = fd12:3456:789a:1::4
  consul-server = true
  consul-datacenter = default
  git-server = true
  pages-server = true
  mysql-server = true
  elasticsearch-server = true
  redis-server = true
  memcache-server = true
  metrics-server = true
  storage-server = true
[cluster "ghe-data-node-2"]
  hostname = ghe-data-node-2
  ipv4 = 192.168.0.5
  # ipv6 = fd12:3456:789a:1::5
  consul-server = true
  consul-datacenter = default
  git-server = true
  pages-server = true
  mysql-server = true
  elasticsearch-server = true
  redis-server = true
  memcache-server = true
  metrics-server = true
  storage-server = true
[cluster "ghe-data-node-3"]
  hostname = ghe-data-node-3
  ipv4 = 192.168.0.6
  # ipv6 = fd12:3456:789a:1::6
  consul-server = true
  consul-datacenter = default
  git-server = true
  pages-server = true
  mysql-server = true
  elasticsearch-server = true
  redis-server = true
  memcache-server = true
  metrics-server = true
  storage-server = true

Crea el archivo /data/user/common/cluster.conf en el primer nodo configurado. Por ejemplo, usando vim:

ghe-data-node-1:~$ sudo vim /data/user/common/cluster.conf