Implementa cargas de trabajo

Como leíste en nuestra guía Ciclo de vida del clúster, como usuario de GKE, por lo general, usas herramientas para la administración de clústeres y herramientas de Kubernetes como kubectl para tareas internas del clúster, como la implementación de aplicaciones. Cloud de Confiance Esto significa que, si ya estás familiarizado con la implementación de cargas de trabajo en otra implementación de Kubernetes, la implementación de cargas de trabajo en GKE debería incluir muchos de los mismos flujos de trabajo (si aún no estás familiarizado con la implementación de cargas de trabajo en Kubernetes, consulta Implementaciones y los otros recursos en Comienza a aprender sobre Kubernetes).

Sin embargo, GKE también proporciona funciones adicionales para implementar y administrar tus cargas de trabajo, incluidas herramientas de observabilidad, opciones de bases de datos completamente administradas para aplicaciones con estado y opciones de hardware específicas para tipos de cargas de trabajo especiales, incluidas las cargas de trabajo de IA/AA.

En esta página, se proporciona una descripción general rápida para desarrolladores y administradores que desean implementar cargas de trabajo en clústeres de GKE, con vínculos a documentación más detallada. Puedes encontrar muchas más guías y instructivos específicos en las secciones Implementar... de la documentación principal de GKE.

Antes de leer esta página, debes estar familiarizado con lo siguiente:

Roles obligatorios

Si no eres propietario de un proyecto, debes tener el siguiente rol de Identity and Access Management (IAM) como mínimo para implementar cargas de trabajo:

  • Visualizador de clústeres de Kubernetes Engine (roles/container.clusterViewer): Esto proporciona el container.clusters.get permiso, que es necesario para autenticarse en los clústeres de un Cloud de Confiance by S3NS proyecto. Esto no te autoriza a realizar ninguna acción dentro de esos clústeres. El administrador del clúster puede autorizarte a realizar otras acciones en el clúster con IAM o RBAC de Kubernetes.

    Para obtener más información sobre todos los permisos incluidos en este rol o sobre cómo otorgar un rol con permisos de lectura y escritura, consulta Roles de Kubernetes Engine en la documentación de IAM.

Puedes obtener más información sobre cómo funciona el control de acceso en GKE en Control de acceso.

Aplicaciones sin estado

Las aplicaciones sin estado son aplicaciones que no almacenan los datos ni el estado de la aplicación en el clúster o en almacenamiento persistente. Las aplicaciones sin estado se pueden implementar directamente desde el menú Cargas de trabajo en la Cloud de Confiance consola así como con la API de Kubernetes. Puedes obtener información para implementar una aplicación de Linux sin estado en GKE en Implementa una aplicación de Linux sin estado. Si lo prefieres, también puedes obtener información para implementar una aplicación de Windows Server sin estado.

Aplicaciones con estado y almacenamiento

Las aplicaciones que necesitan guardar datos que existen más allá de la vida útil de su Pod se conocen como aplicaciones con estado. Tú o tu administrador pueden usar un objeto PersistentVolume de Kubernetes para aprovisionar este almacenamiento. En GKE, el almacenamiento de PersistentVolume está respaldado por discos de Compute Engine. Puedes obtener información para implementar una aplicación con estado simple en GKE en Implementa una aplicación con estado.

Si necesitas que los datos de tu aplicación con estado persistan en una base de datos en lugar de un almacenamiento vinculado a la vida útil de un clúster, GKE ofrece las siguientes opciones:

  • Bases de datos completamente administradas: Una base de datos administrada, como Cloud SQL o Spanner, proporciona una sobrecarga operativa reducida y está optimizada para la Cloud de Confiance by S3NS infraestructura. Las bases de datos administradas requieren menos esfuerzo para su mantenimiento y operación que una base de datos que se implementa de forma directa en Kubernetes.
  • Aplicación de Kubernetes: Puedes implementar y ejecutar una instancia de base de datos (como MySQL o PostgreSQL) en un clúster de GKE.

Puedes obtener mucha más información sobre las opciones de datos en GKE en Datos en GKE y Planifica las implementaciones de bases de datos en GKE.

Cargas de trabajo de IA/AA

GKE tiene una gran compatibilidad para implementar cargas de trabajo de IA/AA. Esto incluye compatibilidad para entrenar y entregar modelos en hardware especializado, así como una integración flexible con frameworks de procesamiento distribuido y procesamiento de datos. Puedes comenzar a obtener más información en las siguientes guías:

  • Acerca de las TPU en GKE te presenta el uso de aceleradores de Cloud TPU para cargas de trabajo de IA/AA en GKE. GKE proporciona compatibilidad total para la administración del ciclo de vida de los nodo TPU y grupos de nodos, incluida la creación, la configuración y el borrado de VMs de TPU. Puedes implementar cargas de trabajo de TPU en clústeres de Standard y Autopilot.
  • Acerca de las GPU en GKE explica cómo solicitar y usar hardware de GPU con cargas de trabajo de GKE.

Cargas de trabajo con otros requisitos especiales

GKE proporciona funciones y guías para ayudarte a implementar cargas de trabajo con otros requisitos especiales, incluidas las aplicaciones que requieren arquitecturas de nodos particulares o que necesitan que sus Pods se ejecuten en nodos iguales o separados. Puedes obtener más información para implementar algunas de ellas en las siguientes guías:

  • Clases de procesamiento en Autopilot explica cómo puedes elegir arquitecturas de procesamiento específicas para programar tus Pods cuando implementas aplicaciones en clústeres de Autopilot. Para los clústeres de Standard, puedes especificar directamente la familia de máquinas que deseas usar para tus nodos cuando creas un clúster.
  • Acerca de las clases de procesamiento personalizadas describe cómo crear clases de procesamiento personalizadas para obtener aún más flexibilidad cuando especificas opciones de hardware para tus aplicaciones en clústeres de Autopilot y Standard.
  • Configura la separación de cargas de trabajo en GKE te indica cómo asegurarte de que los Pods de tu aplicación se ejecuten en máquinas subyacentes iguales o diferentes.
  • GKE Sandbox explica cómo proteger el kernel del host con Pods de sandbox cuando implementas cargas de trabajo desconocidas o que no son de confianza.

Observa tus cargas de trabajo

GKE proporciona una variedad de funciones para observar tus cargas de trabajo y su estado, incluidas descripciones generales del estado y las métricas de las cargas de trabajo en la Cloud de Confiance consola, así como métricas, registros y alertas más detallados.

Administra la implementación de cargas de trabajo

Si tú o tu administrador desean configurar una canalización de integración y entrega continuas (CI/CD) para implementar tus cargas de trabajo, puedes encontrar prácticas recomendadas y lineamientos específicos de GKE para CI/CD en Prácticas recomendadas para la integración y la entrega continuas a GKE, así como instructivos para configurar canalizaciones de CI/CD con herramientas y productos específicos.

¿Qué sigue?