Prerrequisitos
- Debes tener un archivo de licencia de GitHub Enterprise. Para obtener más información, consulta las secciones "Configurar una prueba de GitHub Enterprise Server" y "Acerca de las licencias de GitHub Enterprise".
- Debes tener una cuenta de Google Cloud Platform capaz de iniciar instancias de la máquina virtual (VM) de Google Compute Engine (GCE). Para obtener más información, consulta el Sitio web de Google Cloud Platform y la Documentación de Google Cloud Platform.
- La mayoría de las acciones necesarias para iniciar tu instancia pueden también realizarse utilizando la Consola de Google Cloud Platform. Sin embargo, recomendamos instalar la herramienta de línea de comando de gcloud compute para la configuración inicial. Se incluyen abajo ejemplos que utilizan la herramienta de línea de comando de gcloud compute. Para obtener más información, consulta la guía de instalación y configuración en la documentación de Google de "gcloud compute".
Consideraciones relativas al hardware
- Requisitos mínimos
- Características beta en GitHub Enterprise Server 2.22
- Almacenamiento
- CPU y memoria
Requisitos mínimos
Te recomendamos utilizar configuraciones de hardware diferentes dependiendo de la cantidad de licencias de usuario que tengas para tu instancia de GitHub Enterprise Server. Si aprovisionaste más recursos que los de los requisitos mínimos, tu instancia funcionrá y escalará mejor.
Nota: Si te uniste al beta para las GitHub Actions o el Registro del paquete de GitHub y habilitaste las características, tu instancia requiere recursos adicionales de hardware. Los requisitos mínimos para una instancia con características beta habilitadas se muestran en negritas en la siguiente tabla. Para obtener más informaci´n, consulta la sección "Características beta en GitHub Enterprise Server 2.22".
Licencias de usuario | vCPU | Memoria | Almacenamiento conectado | Almacenamiento raíz |
---|---|---|---|---|
Prueba, Demo o 10 usuarios no frecuentes | 2 o 4 | 16 GB o 32 GB | 100 GB o 150 GB | 200 GB |
10-3000 | 4 o 8 | 32 GB o 48 GB | 250 GB o 300 GB | 200 GB |
3000-5000 | 8 o 12 | 64 GB | 500 GB | 200 GB |
5000-8000 | 12 o 16 | 96 GB | 750 GB | 200 GB |
8000-10000+ | 16 o 20 | 128 GB o 160 GB | 1000 GB | 200 GB |
Para obtener más información sobre el ajuste de recursos para una instancia existente, consulta las secciones "Incrementar la capacidad de almacenamiento" e "Incrementar los recursos de memoria o de CPU".
Características beta en GitHub Enterprise Server 2.22
GitHub Enterprise Server 2.22 ofreció cracterísticas beta, tales como las GitHub Actions, el Registro del paquete de GitHub, y el escaneo de código. Para obtener más información, consulta las notas de lanzamiento de GitHub Enterprise Server 2.22.
Si habilitas las características beta de GitHub Enterprise Server 2.22, tu instancia requiere recursos de hardware adicionales. Para obtener más información sobre los requisitos mínimos, consulta la sección "Requisitos mínimos".
Para obtener más información acerca de los requisitos de hardware para las GitHub Actions, consulta la sección "Comenzar con las GitHub Actions para GitHub Enterprise Server".
Almacenamiento
Recomendamos un SSD de alto rendimiento con operaciones de altas de entrada/salida por segundo (IOPS) y latencia baja para GitHub Enterprise Server. Las cargas de trabajo son intensivas para las I/O. Si utilizas un hipervisor de metal puro, te recomendamos adjuntar directamente el disco o utilizar un disco de una red de área de almacenamiento (SAN).
Tu instancia requiere un disco de datos persistentes independiente del disco raíz. Para obtener más información, consulta "Resumen del sistema".
Para configurar el beta de GitHub Actions, debes proporcionar un almacenamiento externo de blobs. Para obtener más información, consulta la sección "Iniciar con las GitHub Actions para GitHub Enterprise Server".
Puedes redimensionar el disco raíz de tu instancia si creas una instancia nueva o si utilizas una instancia existente. Para obtener más información, consulta la sección Incrementar la capacidad de almacenamiento"
CPU y memoria
Los recursos de memoria y CPU que GitHub Enterprise Server requiere dependen de los niveles de actividad para los usuarios, automatizaciones e integraciones.
Si habilitaste el beta de GitHub Actions para los usuarios de tu instancia de GitHub Enterprise Server, podrías necesitar aprovisionar recursos adicionales de memoria y CPU para tu instancia. Para obtener más información, consulta la sección "Iniciar con las GitHub Actions para GitHub Enterprise Server".
Cuando incrementas tus recursos de CPU, te recomendamos agregar por lo menos 6.5 GB de memoria para cada vCPU (hasta 16 vCPU) que aprovisiones para la instancia. Cuando utilizas más de 16 CPU, no necesitas agregar 6.5 GB de memoria para cada uno, pero debes monitorear tu instancia para garantizar que tenga memoria suficiente.
Advertencia: te recomendamos que los usuarios configuren eventos de webhooks para notificar a los sistemas externos sobre la actividad en GitHub Enterprise Server. Las verificaciones automatizadas para los cambios, o el sondeo, impactará negativamente el rendimiento y la escalabilidad de tu instancia. Para obtener más información, consulta la sección "Acerca de los webhooks".
Para obtener más información acerca de cómo monitorear la capacidad y rendimiento de GitHub Enterprise Server, consulta la sección "Monitorear tu aplicativo".
Puedes incrementar los recursos de memoria o de CPU para tu instancia. Para obtener más información, consulta "Aumentar los recursos de memoria o la CPU."
Determinar el tipo de máquina
Antes de iniciar tu instancia de GitHub Enterprise Server en Google Cloud Platform, deberás determinar el tipo de máquina que mejor se adapte a las necesidades de tu organización. Para revisar los requisitos mínimos para GitHub Enterprise Server, consulta la sección "Requisitos mínimos".
Nota: Siempre puedes mejorar tu CPU o memoria si cambias tu instancia de tamaño. Sin embargo, ya que cambiar de tamaño tu CPU o memoria requiere tiempo de inactividad para tus usuarios, recomendamos contar con recursos de sobra para compensar un escalamiento.
GitHub recomienda una máquina de propósitos generales con memoria alta para GitHub Enterprise Server. Para obtener más información, consulta la sección "Tipos de máquina" en la documentación de Google Compute Engine.
Seleccionar la imagen GitHub Enterprise Server
-
Utilizando la herramienta de línea de comando de gcloud compute, enumera las imágenes públicasGitHub Enterprise Server:
$ gcloud compute images list --project github-enterprise-public --no-standard-images
-
Toma nota del nombre de la imagen para la última imagen de GCE de GitHub Enterprise Server.
Configurar el firewall
Las máquinas virtuales de GCE se crean como un miembro de la red, que tiene un firewall. Para la red asociada con la VM GitHub Enterprise Server, deberás configurar el firewall para permitir los puertos requeridos en la tabla de abajo. Para obtener más información sobre las reglas de firewall en Google Cloud Platform, consulta la guía de Google "Descripción de las reglas de firewall."
-
Crea la red utilizando la herramienta de línea de comando de gcloud compute. Para obtener más información, consulta "crea redes de gcloud compute" en la documentación de Google.
$ gcloud compute networks create NETWORK-NAME --subnet-mode auto
-
Crea una regla de firewall para cada uno de los puertos en la tabla de abajo. Para obtener más información, consulta las "reglas de firewall de gcloud compute" en la documentación de Google.
$ gcloud compute firewall-rules create RULE-NAME \ --network NETWORK-NAME \ --allow tcp:22,tcp:25,tcp:80,tcp:122,udp:161,tcp:443,udp:1194,tcp:8080,tcp:8443,tcp:9418,icmp
Esta tabla identifica los puertos requeridos y para qué se usa cada puerto.
Port (Puerto) Servicio Descripción 22 SSH Git a través de acceso SSH. Se admite clonar, extraer y subir operaciones a repositorios privados/públicos. 25 SMTP SMTP con soporte de encriptación (STARTTLS). 80 HTTP Acceso a aplicación web. Todas las solicitudes se redireccionan al puerto HTTPS cuando se habilita SSL. 122 SSH Acceso a shell de instancia. El puerto predeterminado (22) se dedica a la aplicación de git+el tráfico de red ssh. 161/UDP SNMP Se requiere para operar el protocolo de revisión de red. 443 HTTPS Aplicación web y Git a través de acceso HTTPS. 1194/UDP VPN Túnel de red de replicación segura en la configuración de alta disponibilidad. 8080 HTTP Consola de administración basada en la web de texto simple. No se requiere excepto que el SSL esté inhabilitado de forma manual. 8443 HTTPS Consola de administración seguro basada en la web. Requerido para la instalación y la configuración básicas. 9418 Git Puerto simple de protocolo de Git. Únicamente clonar y extraer operaciones a repositorios públicos. Comunicación de red sin cifrar. Si habilitaste el modo privado en tu instancia, entonces solo se requerirá abrir este puerto si también habilitas el acceso de lectura anónimo para Git. Para obtener más información consulta la sección "Requerir políticas de administración de repositorios en tu empresa".
Asignar una IP estática y atribuirla a una VM
Si es un aparato de producción, recomendamos firmemente reservar una dirección de IP estática externa y asignarla a la VM GitHub Enterprise Server. En caso contrario, la dirección de IP pública de la VM no se mantendrá después de que se reinicie. Para obtener más información, consulta la guía de Google "Reservar una dirección estática de IP externa."
En las configuraciones de alta disponibilidad de producción, tantos en el aparato principal como en la réplica deberían asignarse direcciones estáticas de IP separadas.
Crear la instancia GitHub Enterprise Server
Para crear la instancia GitHub Enterprise Server, deberás crear una instancia de GCE con tu imagen GitHub Enterprise Server y adjuntarle volumen de almacenamiento adicional para los datos de tu instancia. Para obtener más información, consulta "Consideraciones relativas al hardware."
-
Crea un disco de datos para utilizar como un volumen de almacenamiento adjunto para tu instancia de datos utilizando la herramienta de línea de comandos para cálculo gcloud y configura el tamaño con base en la cantidad de licencias que tengas. Para obtener más información, consulta "crea discos de gcloud compute" en la documentación de Google.
$ gcloud compute disks create DATA-DISK-NAME --size DATA-DISK-SIZE --type DATA-DISK-TYPE --zone ZONE
-
Después crea una instancia utilizando el nombre de la imagen GitHub Enterprise Server que seleccionaste, y adjunta el disco de datos. Para obtener más información, consulta "crea instancias de gcloud compute" en la documentación de Google.
$ gcloud compute instances create INSTANCE-NAME \ --machine-type n1-standard-8 \ --image GITHUB-ENTERPRISE-IMAGE-NAME \ --disk name=DATA-DISK-NAME \ --metadata serial-port-enable=1 \ --zone ZONE \ --network NETWORK-NAME \ --image-project github-enterprise-public
Configurar la instancia
- Copia el nombre DNS público de la máquina virtual y pégalo en un navegador de red.
- 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".
- En la Consola de administración, configura y guarda a configuración que desees. Para obtener más información, consulta "Configurar el aparato de GitHub Enterprise Server."
- La instancia se reiniciará automáticamente.
- Da clic en Visitar tu instancia.