Skip to main content
Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Evacuar un nodo de agrupación

Puedes evacuar los servicios de datos en un nodo de agrupación.

Acerca de la evacuación de los nodos de clúster

En una configuración de clúster para GitHub Enterprise Server, puedes evacuar un nodo antes de desconectarlo. La evacuación garantiza que los nodos restantes en un nivel de servicio contengan todos los datos de dicho servicio. Por ejemplo, cuando reemplazas la máquina virtual por un nodo en tu clúster, primero debes evacuarlo.

Para obtener más información sobre los nodos y niveles de servicio para GitHub Enterprise Server, consulta la sección "Acerca de los nodos de clúster".

Advertencias:

  • Para evitar la pérdida de datos, GitHub recomienda fuertemente que evacúes un nodo antes de desconectarlo.

  • Si solo tienes tres nodos en tu clúster de servicios de datos, no puedes evacuar los nodos porque ghe-spokes no tiene otro lugar para hacer una copia. Si tienes cuatro o más, ghe-spokes moverá todos los repositorios del nodo evacuado.

Evacuar un nodo de agrupación

Si planeas desconectar un nodo y este ejecuta un rol de servicio de datos como git-server, pages-server o storage-server, evacúa cada nodo antes de desconectarlo.

  1. Ingresa por SSH a cualquier nodo dentro de tu clúster. Para obtener más información, consulta "Acceder al shell administrativo (SSH)."

  2. Para encontrar la UUID del nodo a evacuar, ejecuta el siguiente comando. Reemplaza HOSTNAME con el nombre de host del nodo.

    $ ghe-config cluster.HOSTNAME.uuid
  3. Monitorea el estado del nodo mientras GitHub Enterprise Server copia los datos. No desconectes el nodo sino hasta que se complete la copia. Para monitorear el estado de tu nodo, ejecuta cualquiera de los siguientes comandos, reemplazando UUID con la UUID del paso 2.

    • Git:

      $ ghe-spokes evac-status git-server-UUID
    • Páginas de GitHub:

      $ echo "select count(*) from pages_replicas where host = 'pages-server-UUID'" | ghe-dbconsole -y
    • Almacenamiento:

      $ ghe-storage evacuation-status storage-server-UUID
  4. Después de que la copia se complete, puedes evacuar el nodo ejecutando cualquiera de los siguientes comandos, reemplazando UUID con la UUID del paso 2.

    • Git:

      $ ghe-spokes server evacuate git-server-UUID \'REASON FOR EVACUATION\'
    • Páginas de GitHub:

      $ ghe-dpages evacuate pages-server-UUID
    • Para almacenamiento, primero toma el nodo sin conexión ejecutando el siguiente comando.

      $ ghe-storage offline storage-server-UUID

      Después de que el nodo de almacenamiento se quede sin conexión, puedes evacuarlo si ejecutas el siguiente comando.

      $ ghe-storage evacuate storage-server-UUID