Crea un clúster y una carga de trabajo de Google Kubernetes Engine (GKE) rentables y optimizados para la administración de recursos en una sola ubicación. En esta guía, se describen las siguientes plantillas, que puedes usar para implementar una aplicación web básica:
Plantilla de clúster de GKE de una sola región: crea la infraestructura fundamental necesaria para una aplicación de una sola región. Esta plantilla configura un clúster de GKE privado y seguro optimizado para la administración de recursos.
Carga de trabajo de GKE de una sola región (vista previa): Implementa un gráfico de Helm que incluye la configuración de una aplicación web básica. La carga de trabajo está configurada para ajustarse según la carga de la CPU y garantizar la disponibilidad de la aplicación durante las interrupciones voluntarias.
Por ejemplo, puedes implementar las plantillas de clúster y carga de trabajo para abordar las siguientes necesidades empresariales:
| Ejemplo | Necesidad empresarial | Implementación |
|---|---|---|
| Aplicación interna de línea de negocio | Una aplicación interna requiere una residencia de datos estricta en una región específica, rentabilidad para el uso interno predecible y alta confiabilidad. | Usa la implementación de una sola región para garantizar la localidad de los datos. Usa el ajuste de escala automático para administrar de manera eficiente los recursos para la demanda de los usuarios internos. |
| Backend de comercio electrónico regional | Una plataforma de comercio electrónico necesita alta disponibilidad en una región específica para garantizar un servicio continuo, escalabilidad para controlar los picos de tráfico durante los eventos de ventas y seguridad sólida para las transacciones y los datos de los clientes. | Crear una configuración de clúster multizonal proporciona alta disponibilidad regional. Usa la configuración de inicio seguro para reforzar la postura de seguridad de los datos sensibles de los clientes. |
| Plataforma regional de procesamiento y análisis de datos | Una plataforma para procesar y analizar grandes conjuntos de datos requiere localidad de datos para el cumplimiento y el rendimiento, procesamiento optimizado para el costo para trabajos por lotes intermitentes y acceso seguro a los datos. | La implementación de una sola región garantiza que los datos permanezcan dentro de los límites geográficos. Ajusta la escala de los recursos para tareas de procesamiento grandes y períodos de inactividad. |
Arquitectura
En la siguiente imagen, se muestran los componentes y las conexiones de la plantilla:
A continuación, se describen las configuraciones de los componentes de esta plantilla:
Clúster de GKE Standard: Un clúster rentable de una sola región en el que se ejecuta tu carga de trabajo.
En la siguiente tabla, se describe la configuración del clúster en esta plantilla:
Configuración Objetivo locationse configura comous-central1.Restringe los recursos del clúster a un área geográfica única, lo que garantiza la localidad de los datos y minimiza los costos y la latencia de la transferencia de datos entre regiones. initial_node_countse configura como1.Define un nodo inicial para crear en el grupo de nodos predeterminado del clúster cuando se aprovisiona por primera vez. En clústeres regionales, esta es la cantidad de nodos por zona. release_channelse configura como{"channel":"REGULAR"}.Garantiza que tu clúster de GKE reciba actualizaciones estables y predecibles, lo que proporciona un equilibrio entre las funciones nuevas y la confiabilidad. enable_intranode_visibilityse configura comotrue.Habilita la visibilidad del tráfico intranodo en los registros de flujo de VPC, que es necesaria para la supervisión de la red, la solución de problemas y el análisis de seguridad. control_plane_endpoints_configse configura como{"dns_endpoint_config":{"allow_external_traffic":true}}.El plano de control de GKE está configurado para ser accesible de forma pública y permitirte administrar el clúster fuera de tu red de nube privada virtual (VPC). Grupo de nodos de GKE: Un grupo de nodos trabajadores que ejecutan los contenedores de la aplicación.
En la siguiente tabla, se describen las configuraciones del grupo de nodos en esta plantilla:
Configuración Objetivo locationse configura comous-central1.Especifica la región en la que se crea este grupo de nodos. Al igual que la ubicación del clúster, esto garantiza que los recursos del grupo de nodos estén en una sola área geográfica. autoscalingse configura como{"max_node_count":3, "min_node_count":1}.Configura el escalador automático del clúster para este grupo de nodos. Garantiza que el grupo de nodos siempre mantenga al menos un nodo y establece el límite superior en tres nodos para controlar los costos y el consumo de recursos. node_configse configura como{"machine_type":"e2-medium", "oauth_scopes":["https://www.googleapis.com/auth/cloud-platform"], "shielded_instance_config":{"enable_secure_boot":true}}.Agrupa las configuraciones de los nodos dentro de este grupo. El tipo de máquina es un equilibrio entre la CPU y la memoria adecuado para las cargas de trabajo de uso general. Define el acceso otorgado a la cuenta de servicio. Habilita el inicio seguro para las instancias de VM protegida, lo que ayuda a proteger contra el software malicioso a nivel de inicio.
Configuración del gráfico de Helm
En la siguiente tabla, se enumeran las configuraciones del gráfico de Helm, que se personalizaron para implementar y ajustar la escala de una aplicación web básica en GKE.
| Configuración | Objetivo |
|---|---|
replicaCount: 2 |
Crea dos réplicas iniciales para establecer un nivel inicial de redundancia. |
image.repository: gcr.io/google-samples/hello-app |
Usa una imagen de Docker de servidor web básica. |
resources.requests: {"cpu": "100m", "memory": "128Mi"} |
Especifica la cantidad mínima de CPU y memoria que se reservan para cada pod, lo que garantiza los recursos disponibles y la programación eficiente. |
hpa: {"enabled": true, "minReplicas": 2, "maxReplicas": 10, "targetCPUUtilizationPercentage": 60} |
Activa el Horizontal Pod Autoscaler para ajustar automáticamente la cantidad de pods entre 2 y 10 según el uso de la CPU, lo que garantiza el rendimiento y la rentabilidad. |
service: {"type": "ClusterIP", "port": 80} |
Configura el servicio para el acceso interno dentro del clúster en el puerto HTTP estándar. |
pdb: {"enabled": true, "minAvailable": 1} |
Habilita un presupuesto de interrupción de Pods para garantizar que al menos una réplica permanezca disponible durante las interrupciones voluntarias, lo que mantiene la alta disponibilidad. |
Crea tu aplicación web
Usa las plantillas Clúster y clúster de GKE de una sola región para implementar tu aplicación web.
Implementa tu infraestructura web
Configura e implementa la plantilla Clúster de GKE de una sola región para crear la infraestructura fundamental en la que se ejecuta tu carga de trabajo web.
Duplica e implementa la plantilla Clúster de GKE de una sola región como una aplicación.
Se crea un clúster de GKE en el proyecto de implementación que elijas.
Configura los componentes. Para obtener más información, consulta lo siguiente:
Haz clic en Implementar. La aplicación se implementa después de varios minutos.
En el panel Detalles de la aplicación, haz clic en la pestaña Salidas.
Identifica el cluster_id de tu aplicación. Usarás esta información cuando implementes tu gráfico de Helm.
Implementa tu carga de trabajo web
Usa la plantilla Carga de trabajo de GKE de una sola región para implementar tu carga de trabajo web en el clúster que creaste. Implementarás un gráfico de Helm que incluye la configuración de tu carga de trabajo web.
En la página Catálogo de Google, en la plantilla Carga de trabajo de GKE de una sola región, haz clic en Crear aplicación nueva.
En el campo Nombre, ingresa un nombre único para tu aplicación.
En el área Destino de implementación de GKE, haz lo siguiente:
En la lista de proyectos, selecciona el proyecto en el que implementaste el clúster de GKE desde tu aplicación Clúster de GKE de una sola región.
En la lista Región, selecciona la región en la que implementaste el clúster de GKE.
En la lista Clústeres, selecciona el clúster de GKE implementado.
En la lista Espacio de nombres, ingresa el espacio de nombres en el que implementaste tu clúster de GKE. Si no cambiaste el nombre, ingresa
default.Haz clic en Crear aplicación.
Se crea la aplicación y se muestran los archivos de configuración.
En el panel Gráfico de Helm, haz lo siguiente:
Revisa los detalles de la configuración.
Opcional: Personaliza la configuración para satisfacer tus necesidades únicas.
Para implementar el gráfico de Helm en tu clúster, haz clic en Implementar.
Para ver los pasos detallados, consulta Implementa aplicaciones.
Después de varios minutos, la configuración del gráfico de Helm se implementa en tu clúster de GKE.
¿Qué sigue?
- Para obtener información sobre cómo duplicar y personalizar plantillas, consulta Inicio rápido: Personaliza e implementa una plantilla de Google.
- Define tus propias configuraciones diseñando plantillas de aplicaciones.
- Identifica las prácticas recomendadas generales de arquitectura con el Google Cloud Framework de arquitectura.