En esta página se explica cómo desplegar tus propias cargas de trabajo en clústeres de Config Controller.
Esta página está dirigida a administradores y operadores de TI que gestionan el ciclo de vida de la infraestructura tecnológica subyacente, planifican la capacidad y despliegan aplicaciones y servicios en producción. Para obtener más información sobre los roles habituales y las tareas de ejemplo a las que hacemos referencia en el contenido, consulta Roles y tareas habituales de los usuarios de GKE. Google Cloud
Antes de empezar
Antes de empezar, asegúrate de haber realizado las siguientes tareas:
- Configura Config Controller.
- Si tu clúster de Config Controller tiene una versión de GKE anterior a la 1.27, actualiza el clúster a la versión 1.27 o a una posterior.
Habilitar el aprovisionamiento automático de nodos en clústeres estándar
Debes habilitar el aprovisionamiento automático de nodos para desplegar tus propias cargas de trabajo en clústeres de Config Controller. Esto permite separar las cargas de trabajo de las cargas de trabajo gestionadas por Google que se instalan de forma predeterminada en los clústeres de Config Controller.
Si usas clústeres de Autopilot, no tienes que habilitar el aprovisionamiento automático de nodos, ya que GKE gestiona automáticamente el escalado y el aprovisionamiento de nodos.
gcloud
Para habilitar el aprovisionamiento automático de nodos, ejecuta el siguiente comando:
gcloud container clusters update CLUSTER_NAME \ --enable-autoprovisioning \ --min-cpu MINIMUM_CPU \ --min-memory MIMIMUM_MEMORY \ --max-cpu MAXIMUM_CPU \ --max-memory MAXIMUM_MEMORY \ --autoprovisioning-scopes=https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring,https://www.googleapis.com/auth/devstorage.read_only
Haz los cambios siguientes:
CLUSTER_NAME
: el nombre de tu clúster de Config Controller.MINIMUM_CPU
: número mínimo de núcleos del clúster.MINIMUM_MEMORY
: número mínimo de gigabytes de memoria del clúster.MAXIMUM_CPU
: número máximo de núcleos del clúster.MAXIMUM_MEMORY
: número máximo de gigabytes de memoria del clúster.
Consola
Para habilitar el aprovisionamiento automático de nodos, sigue estos pasos:
Ve a la página Google Kubernetes Engine en la consola de Google Cloud .
Haz clic en el nombre del clúster.
En la sección Automatización, en Aprovisionamiento automático de nodos, haz clic en
Editar.Seleccione la casilla Habilitar aprovisionamiento automático de nodos.
Define el uso mínimo y máximo de CPU y memoria del clúster.
Haz clic en Guardar cambios.
Para obtener más información sobre cómo configurar el aprovisionamiento automático de nodos, como establecer valores predeterminados, consulta el artículo Configurar el aprovisionamiento automático de nodos.
Desplegar la carga de trabajo
Cuando despliegas tus cargas de trabajo, Config Controller habilita automáticamente GKE Sandbox para proporcionar una capa adicional de seguridad que impida que el código no fiable afecte al kernel del host en los nodos de tu clúster. Para obtener más información, consulta el artículo Acerca de GKE Sandbox.
Para desplegar una carga de trabajo, escribe un archivo de manifiesto de carga de trabajo y, a continuación, ejecuta el siguiente comando:
kubectl apply -f WORKLOAD_FILE
Sustituye WORKLOAD_FILE
por el archivo de manifiesto, como my-app.yaml
.
Confirma que tu carga de trabajo se está ejecutando en los nodos aprovisionados automáticamente:
Obtén la lista de nodos creados para tu carga de trabajo:
kubectl get nodes
Para inspeccionar un nodo concreto, sigue estos pasos:
kubectl get nodes
NODE_NAME
-o yamlSustituye
NODE_NAME
por el nombre del nodo que quieras inspeccionar.
Limitaciones
- GKE Sandbox: GKE Sandbox funciona bien con muchas aplicaciones, pero no con todas. Para obtener más información, consulta Limitaciones de GKE Sandbox.
- Seguridad del plano de control: cuando concedas permisos a tus cargas de trabajo, aplica el principio de privilegio mínimo para conceder solo los permisos que necesites. Si tu carga de trabajo se ve comprometida, puede usar permisos demasiado permisivos para cambiar o eliminar recursos de Kubernetes.
- Disponibilidad del plano de control: si tus cargas de trabajo provocan un aumento del tráfico en un breve periodo de tiempo, es posible que el plano de control del clúster no esté disponible hasta que el tráfico disminuya.
- Cambio de tamaño del plano de control: GKE cambia automáticamente el tamaño del plano de control según sea necesario. Si tu carga de trabajo provoca un gran aumento de la carga (por ejemplo, al instalar miles de objetos CRD), es posible que el cambio de tamaño automático de GKE no pueda seguir el ritmo del aumento de la carga.
- Cuotas: al implementar cargas de trabajo, debes tener en cuenta las cuotas y los límites de GKE y no superarlos.
- Acceso de red al plano de control y a los nodos: Config Controller usa nodos privados con las opciones Redes maestras autorizadas habilitada, Endpoint privado habilitado y Acceso público inhabilitado. Para obtener más información, consulta Seguridad de red de GKE.
Siguientes pasos
- Consulta más información sobre las prácticas recomendadas de Config Controller: Escalabilidad de Config Controller, Fragmentación de Config Controller y Configuración de Config Controller para alta disponibilidad.
- Solucionar problemas de Config Controller
- Monitor Config Controller