Prerrequisitos
- Debes tener un archivo de licencia de GitHub Enterprise. Para descargar un archivo de licencia existente o solicitar una licencia de prueba, visita enterprise.github.com. Para obtener más información, consulta la sección "Administrar tu licencia 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
Minimum requirements
We recommend different hardware configurations depending on the number of user licenses for tu instancia de servidor de GitHub Enterprise. If you provision more resources than the minimum requirements, your instance will perform and scale better.
Licencias de usuario | vCPU | Memoria | Almacenamiento conectado | Almacenamiento raíz |
---|---|---|---|---|
Prueba, Demo o 10 usuarios no frecuentes | 2 | 16 GB | 100 GB | 200 GB |
10-3000 | 4 | 32 GB | 250 GB | 200 GB |
3000-5000 | 8 | 64 GB | 500 GB | 200 GB |
5000-8000 | 12 | 96 GB | 750 GB | 200 GB |
8000-10000+ | 16 | 128 GB | 1000 GB | 200 GB |
For more information about adjusting resources for an existing instance, see "Increasing storage capacity" and "Increasing CPU or memory resources."
Almacenamiento
We recommend a high-performance SSD with high input/output operations per second (IOPS) and low latency for Servidor de GitHub Enterprise. Workloads are I/O intensive. If you use a bare metal hypervisor, we recommend directly attaching the disk or using a disk from a storage area network (SAN).
Your instance requires a persistent data disk separate from the root disk. Para obtener más información, consulta "Resumen del sistema".
You can resize your instance's root disk by building a new instance or using an existing instance. Para obtener más información, consulta la sección Incrementar la capacidad de almacenamiento"
CPU and memory
Servidor de GitHub Enterprise requires more CPU and memory resources depending on levels of activity for users, automations, and integrations.
When you increase CPU resources, we recommend adding at least 6.5 GB of memory for each vCPU (up to 16 vCPUs) that you provision for the instance. When you use more than 16 vCPUs, you don't need to add 6.5 GB of memory for each vCPU, but you should monitor your instance to ensure it has enough memory.
Warning: We recommend that users configure webhook events to notify external systems of activity on Servidor de GitHub Enterprise. Automated checks for changes, or polling, will negatively impact the performance and scalability of your instance. For more information, see "About webhooks."
You can increase your instance's CPU or memory resources. 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 servidor de GitHub Enterprise en Google Cloud Platform, deberás determinar el tipo de máquina que mejor se adapte a las necesidades de tu organización.
Tipos de máquinas admitidas
Servidor de GitHub Enterprise es compatible en los siguientes tipo de máquinas de Google Compute Engine (GCE). Para obtener más información, consulta el artículo sobre tipos de máquinas de Google Cloud Platform. |
| | Memoria alta | | | ------------- | | | n1-highmem-4 | | | n1-highmem-8 | | | n1-highmem-16 | | | n1-highmem-32 | | | n1-highmem-64 | | | n1-highmem-96 |
Tipos recomendados de máquina
Recomendamos estos tipos de máquina con base en la cantidad de licencias que tengas.
Asientos | Tipo recomendado |
---|---|
Prueba, Demo o 10 usuarios no frecuentes | n1-standard-4 |
10 - 3000 | n1-standard-8 |
3000 - 5000 | n1-highmem-8 |
5000 - 8000 | n1-highmem-16 |
8000 - 10000+ | n1-highmem-32 |
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.
Seleccionar la imagen Servidor de GitHub Enterprise
-
Utilizando la herramienta de línea de comando de gcloud compute, enumera las imágenes públicasServidor de GitHub Enterprise:
$ 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 Servidor de GitHub Enterprise.
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 Servidor de GitHub Enterprise, 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 no encriptada.
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 Servidor de GitHub Enterprise. 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 de Servidor de GitHub Enterprise
Para crear la instancia Servidor de GitHub Enterprise, deberás crear una instancia de GCE con tu imagen Servidor de GitHub Enterprise 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 Servidor de GitHub Enterprise 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. Para 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 del Servidor de GitHub Enterprise."
- La instancia se reiniciará automáticamente.
- Da clic en Visitar tu instancia.