En esta página, se explica cómo implementar tus propias cargas de trabajo en clústeres de Config Controller.
Esta página está destinada a administradores y operadores de TI que administran el ciclo de vida de la infraestructura tecnológica subyacente, planifican la capacidad y, además, implementan apps y servicios en producción. Para obtener más información sobre los roles comunes y las tareas de ejemplo a las que hacemos referencia en el contenido de Google Cloud, consulta Tareas y roles comunes de los usuarios de GKE Enterprise.
Antes de comenzar
Antes de comenzar, asegúrate de haber realizado las siguientes tareas:
- Configura Config Controller.
- Si tu clúster de Config Controller está en una versión de GKE anterior a la 1.27, actualízalo a la versión 1.27 o una posterior.
Habilita el aprovisionamiento automático de nodos en clústeres estándar
Debes habilitar el aprovisionamiento automático de nodos para implementar tus propias cargas de trabajo en los clústeres de Config Controller. Esto permite la separación de cargas de trabajo entre las tuyas y las que administra Google, que se instalan de forma predeterminada en los clústeres de Config Controller.
Si usas clústeres de Autopilot, no necesitas habilitar el aprovisionamiento automático de nodos, ya que GKE administra de forma automática el escalamiento y el aprovisionamiento de nodos.
gcloud
Para habilitar el aprovisionamiento automático de nodos, ejecuta el comando siguiente:
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
Reemplaza lo siguiente:
CLUSTER_NAME
: El nombre de tu clúster de Config Controller:MINIMUM_CPU
es la cantidad mínima de núcleos en el clúster.MINIMUM_MEMORY
es la cantidad mínima de gigabytes de memoria en el clúster.MAXIMUM_CPU
es la cantidad máxima de núcleos en el clúster.MAXIMUM_MEMORY
es la cantidad máxima de gigabytes de memoria en el clúster.
Console
Para habilitar el aprovisionamiento automático de nodos, sigue estos pasos:
Ve a la página de 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.Selecciona la casilla de verificación Habilitar el aprovisionamiento automático de nodos.
Configura el uso mínimo y máximo de CPU y memoria para el 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 Configura el aprovisionamiento automático de nodos.
Implementa tu carga de trabajo
Cuando implementas tus cargas de trabajo, Config Controller habilita automáticamente GKE Sandbox para proporcionar una capa adicional de seguridad que evita que el código no confiable afecte el kernel del host en los nodos de tu clúster. Para obtener más información, consulta Acerca de GKE Sandbox.
Para implementar una carga de trabajo, escribe un archivo de manifiesto de carga de trabajo y, luego, ejecuta el siguiente comando:
kubectl apply -f WORKLOAD_FILE
Reemplaza 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
Inspecciona un nodo específico:
kubectl get nodes
NODE_NAME
-o yamlReemplaza
NODE_NAME
por el nombre del nodo que deseas 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 otorgues permisos para tus cargas de trabajo, usa el principio de privilegio mínimo para otorgar solo los permisos que necesites. Si tu carga de trabajo se ve comprometida, puede usar permisos demasiado permisivos para cambiar o borrar recursos de Kubernetes.
- Disponibilidad del plano de control: si tus cargas de trabajo aumentan el tráfico en poco tiempo, es posible que el plano de control del clúster deje de estar disponible hasta que disminuya el tráfico.
- 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 causa un gran aumento de carga (por ejemplo, instalar miles de objetos CRD), es posible que el cambio de tamaño automático de GKE no pueda seguir el aumento de carga.
- Cuotas: Cuando implementes cargas de trabajo, debes tener en cuenta las cuotas y los límites de GKE y no excederlos.
- Acceso de red al plano de control y a los nodos: Config Controller usa nodos privados con las redes autorizadas de instancia principal habilitadas, el extremo privado habilitado y el acceso público inhabilitado. Para obtener más información, consulta Seguridad de la red de GKE.
¿Qué sigue?
- Obtén 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.
- Soluciona problemas del controlador de configuración
- Supervisa Config Controller