GitHub Enterprise Server mejora constantemente y agrega correcciones de errores y funcionalidades nuevas mediante el lanzamiento de características y revisiones. Eres el responsable de las actualizaciones de la instancia. Consulte "Acerca de las mejoras a los nuevos lanzamientos".
Para actualizar una instancia, debe:
- Planear la estrategia de actualización eligiendo la versión de actualización y el paquete de actualización adecuado y programando una ventana de mantenimiento.
- Comunicar la actualización antes y durante el proceso de actualización.
- Preparar la estrategia de copia de seguridad mediante la creación de una copia de seguridad y la toma de una instantánea de máquina virtual.
- Instalar el paquete de actualización mediante el paquete y el método adecuados.
- Completar las tareas posteriores a la actualización.
El proceso que debe seguir para aplicar un paquete de actualización depende del número de nodos de la topología de implementación. En este artículo se proporciona información general sobre la actualización de instancias en una configuración independiente o solo de alta disponibilidad.
Planear la estrategia de actualización
Planear la actualización
- Revise las notas de la versión y los problemas conocidos documentados antes de realizar una actualización. Consulta "Notas de la versión" y "Problemas conocidos con las actualizaciones de la instancia".
- Revise "Requisitos de actualización" para asegurarse de que comprende los requisitos y recomendaciones de actualización.
- Compruebe que el disco de datos de tu instancia de GitHub Enterprise Server tiene al menos un 15 % de espacio libre. GitHub recomienda asegurarse de que haya más almacenamiento libre en el disco. En algunos casos poco frecuentes, para los clientes con grandes volúmenes de datos, este umbral puede diferir. Consulte "Aumentar la capacidad de almacenamiento".
- Compruebe que tiene suficientes recursos de hardware para GitHub Enterprise Server. Al actualizar, las comprobaciones previas al vuelo evalúan si los requisitos mínimos para los recursos de hardware del sistema, como la memoria, los núcleos de CPU y el almacenamiento en disco raíz y de usuario están disponibles para la instancia. Si las comprobaciones previas al vuelo determinan que no hay recursos suficientes o que fallan de otro modo, se le notificará y se anulará la actualización.
- Asegúrese de que tiene una copia de todas las reglas de firewall personalizadas de tu instancia de GitHub Enterprise Server, ya que las reglas personalizadas no se conservarán después de la actualización. Debe volver a aplicar las reglas personalizadas después de la actualización. Consulte "Configurar las reglas de firewall incorporado".
- En el caso de las instancias de una configuración de alta disponibilidad, compruebe que el estado de los informes de replicación
OK
antes de actualizar. Consulte "Supervisión de una configuración de alta disponibilidad". - Considere la posibilidad de configurar la lista de excepciones de IP para el modo de mantenimiento, para poder limitar temporalmente el acceso a tu instancia de GitHub Enterprise Server para validar el estado del servidor después de una actualización. Consulte "Habilitar y programar el modo de mantenimiento".
Elija la versión y el paquete de actualización
- Determina una estrategia de actualización y elige una versión a la que actualizar.
- Puede actualizar una instancia de GitHub Enterprise Server a una nueva versión de revisión o a una nueva versión de características.
- Consulte el Asistente para actualización para buscar la ruta de actualización de la versión actual a una nueva versión de revisión o de actualización de características.
- Elija un paquete de actualización (revisión en caliente o paquete de actualización).
- Para actualizar a una versión de revisión, puede usar una revisión frecuente o un paquete de actualización. Para actualizar a una versión de características, debe usar un paquete de actualización.
- Si usa un paquete de actualización, programe una ventana de mantenimiento para los usuarios finales de GitHub Enterprise Server. Si estás usando un hotpatch, no se necesita el modo mantenimiento.
- Si ha habilitado comprobaciones automáticas de actualizaciones, los administradores del sitio recibirán una notificación de que se ha descargado un paquete de actualización y está disponible. Consulte "Habilitar comprobaciones de actualización automáticas".
- Las compilaciones de versión candidata para lanzamiento están pensadas únicamente para su uso en un entorno de prueba. No instale una versión candidata para lanzamiento en un entorno de producción. No actualice desde la versión candidata para lanzamiento a versiones posteriores, incluidas las versiones disponibles con carácter general.
Considere si se requieren actualizaciones de otras aplicaciones
Compruebe si necesita actualizar las siguientes aplicaciones:
-
Los ejecutores de GitHub Actions deben actualizarse si tu instancia de GitHub Enterprise Server usa ejecutores efímeros autoalojados para GitHub Actions y las actualizaciones automáticas están inhabilitadas. Actualice los ejecutores a la versión mínima de la aplicación requerida por la instancia actualizada antes de realizar la actualización. Para encontrar la versión mínima necesaria en su caso, consulte "Lanzamientos de GitHub Enterprise Server".
-
GitHub Enterprise Server Backup Utilities. La versión de GitHub Enterprise Server Backup Utilities debe ser la misma que la detu instancia de GitHub Enterprise Server o, como máximo, dos versiones posteriores.
- Es posible que tenga que actualizar GitHub Enterprise Server Backup Utilities a una versión más reciente, antes de actualizar la instancia.
- Es posible que también tenga que planear una actualización de GitHub Enterprise Server Backup Utilities a una versión más reciente después de actualizar la instancia.
Consulte "Configuración de copias de seguridad en la instancia" y el README de la documentación del proyecto de GitHub Enterprise Server Backup Utilities.
Planeamiento de una ventana de mantenimiento
- En función de la estrategia de actualización, es posible que se requiera un tiempo de inactividad significativo.
- La mejor manera de determinar la duración esperada del tiempo de inactividad es probar primero la actualización en un entorno de ensayo. Consulte "Configurar una instancia de preparación".
- La ventana de mantenimiento para la actualización depende del tipo de actualización que realice.
-
Las actualizaciones que utilizan un hotpatch por lo general no necesitan una ventana de mantenimiento. A veces se necesita reiniciar; puedes hacerlo más tarde.
Note
Las revisiones en caliente requieren una ejecución de configuración, lo que puede provocar un breve período de errores o falta de respuesta en algunos servicios de tu instancia de GitHub Enterprise Server o en todos ellos. No es necesario habilitar el modo de mantenimiento durante la instalación de una revisión en caliente, pero si lo hace, se garantiza que los usuarios vean una página de mantenimiento en lugar de errores o tiempos de espera. Consulte "Habilitar y programar el modo de mantenimiento".
-
Las versiones de revisión que usan un paquete de actualización habitualmente requieren menos de cinco minutos de tiempo de inactividad.
-
La actualización a una nueva versión de actualización de características que incluya migraciones de datos puede provocar algunas horas de inactividad, en función del rendimiento del almacenamiento y la cantidad de datos que se migran. Durante ese periodo, ninguno de los usuarios podrá usar la empresa.
-
Comunicación de la actualización
- Antes de la actualización, puede publicar un banner de aviso global para resaltar información importante para los usuarios, como los cambios entrantes o el posible tiempo de inactividad. Consulte "Personalizar los mensajes de usuario para tu empresa".
- En el momento de la actualización, puede habilitar el modo de mantenimiento y establecer un mensaje personalizado para informar a los usuarios de que la instancia no está disponible temporalmente. Consulte "Habilitar y programar el modo de mantenimiento".
Preparación de la estrategia de copia de seguridad
Cree una instantánea de copia de seguridad
Asegúrese de que tiene una instantánea de copia de seguridad reciente y correcta del nodo principal de la instancia antes de iniciar el proceso de actualización. Consulte "Configuración de copias de seguridad en la instancia" y el README de la documentación del proyecto de GitHub Enterprise Server Backup Utilities.
Creación de una instantánea de máquina virtual
Si va a actualizar a una nueva versión de actualización de características, se requiere una instantánea de máquina virtual (VM). Si está actualizando a una nueva versión de revisión, puede adjuntar el disco de datos existente.
Cree una instantánea de máquina virtual (VM) del nodo principal de la instancia inmediatamente antes de actualizar y solo cuando se haya habilitado el modo de mantenimiento o la instancia se haya apagado. Consulte "Tomar una instantánea".
Instalación de un paquete de actualización
Revise las consideraciones para las actualizaciones y complete los pasos de preparación como se ha descrito anteriormente, antes de empezar a instalar un paquete de actualización.
Las instrucciones para actualizar la instancia de GitHub Enterprise Server difieren en función del tipo de actualización que esté realizando y del número de nodos que tenga la instancia.
Finalización de tareas posteriores a la actualización
- Compruebe el estado de los trabajos en segundo plano y revise el registro de actualización para ver si hay errores.
- Compruebe la funcionalidad básica de GitHub Enterprise Server. Por ejemplo, asegúrese de que puede iniciar sesión a través de la interfaz de usuario y compruebe que se pueden alcanzar varias de sus organizaciones, repositorios y problemas según lo previsto. También es buena idea ejecutar manualmente varias capturas, clones e inserciones de Git mediante SSH o HTTPS, y comprobar que las solicitudes de API y las entregas de webhook se completan correctamente.
- Vuelva a aplicar las reglas de firewall personalizadas. Consulte "Configurar las reglas de firewall incorporado".
- Elimine las instantáneas de máquina virtual tomadas antes de la actualización. Consulte "Tomar una instantánea".
- Inhabilite el modo de mantenimiento y actualice las comunicaciones previas a la actualización, como los banners de aviso. Consulta "Personalizar los mensajes de usuario para tu empresa" y "Habilitar y programar el modo de mantenimiento".
- Supervise todos los trabajos en segundo plano en cola en la instancia para asegurarse de que se completan correctamente. Consulte "Utilidades de la ea de comandos".