Operar una plataforma para desarrolladores y aplicaciones alojadas en contenedores requiere una serie de tareas administrativas diferentes que debes realizar de forma continua. Estas tareas incluyen, por ejemplo, crear aplicaciones nuevas a partir de una plantilla, autorizar a grupos de desarrolladores nuevos para que usen la plataforma para desarrolladores, planificar necesidades de capacidad y depurar problemas de entorno de ejecución.
Las operaciones se pueden automatizar o realizar de forma manual.
Operaciones automatizadas comunes
El plano proporciona automatización para algunas de las tareas más comunes en forma de activadores de webhook, que son un tipo simple de API. Los activadores se conectan de forma automática a los eventos de webhook que provienen de uno de los repositorios de control de origen. Los desarrolladores de la plataforma para desarrolladores pueden conectar los otros activadores. Por lo general, los desarrolladores de la plataforma para desarrolladores escriben un portal para desarrolladores, que puede ser un formulario web simple que llama a un activador de webhook cuando se envía un formulario.
En la siguiente tabla, se describen las tareas comunes que el plano automatiza con activadores de webhook. Las frecuencias de las tareas son ilustrativas porque la frecuencia de una tarea depende de muchos factores. No es necesario que las tareas se repitan en intervalos precisos.
Tarea | Usuario | Descripción | Frecuencia de la tarea |
---|---|---|---|
Agregar un usuario |
Administrador de la plataforma para desarrolladores |
El administrador envía un formulario en el portal para desarrolladores. Los nuevos campos del formulario de usuario incluyen el nombre del usuario y los miembros del equipo. Un activador automatizado crea los recursos para el nuevo usuario. |
Algunas veces al año |
Agregar una aplicación basada en una plantilla de aplicación existente |
Desarrollador de aplicaciones |
El desarrollador envía un formulario en el portal para desarrolladores. Los nuevos campos del formulario de aplicación incluyen el nombre del usuario, el nombre de la aplicación y la plantilla de aplicación base. Un activador automatizado crea recursos para una aplicación nueva. |
Algunas veces al año |
Compilar e implementar cambios en el código fuente de una aplicación en el entorno de desarrollo |
Desarrollador de aplicaciones |
El desarrollador edita el código fuente, ejecuta y prueba el código de forma local y lo confirma. El plano no está involucrado en flujos de trabajo locales de desarrolladores, pero la herramienta de Skaffold admite un paso de compilaciones locales. |
Un par de veces al día por cada aplicación |
Implementar los cambios en la configuración de YAML de una aplicación en el entorno de desarrollo. Un ejemplo de cambio en la configuración de YAML es aumentar la CPU de un recurso de implementación |
Desarrollador de aplicaciones |
El desarrollador edita la configuración de la aplicación y confirma el cambio. |
Algunas veces a la semana por cada aplicación |
Implementar cambios en la infraestructura de la aplicación en el entorno de desarrollo. La infraestructura de la aplicación son los recursos en la nube del proyecto de una aplicación. Un ejemplo de cambio es un aumento en el recuento de CPU para una instancia de AlloyDB para PostgreSQL. |
Desarrollador de aplicaciones |
El desarrollador edita el proyecto de Terraform de recursos de la aplicación y confirma el cambio. El desarrollador envía un formulario en el portal para desarrolladores. Un activador automatizado inicia el plan y aplica la canalización. |
Muchas veces al año |
Ascender los cambios en la aplicación desde el entorno de desarrollo al de no producción (o desde el entorno de no producción al de producción). Los cambios en la aplicación pueden incluir nuevas imágenes de aplicación o cambios en la configuración de YAML de la aplicación |
Operador de aplicaciones |
El operador combina los cambios de la rama de desarrollo a la rama de no producción (o de la rama de no producción a la rama de producción). El operador supervisa la implementación. |
Varias veces a la semana por cada aplicación |
Ascender los cambios en la infraestructura de la aplicación desde el entorno de desarrollo al de no producción (o desde el entorno de no producción al de producción) |
Operador de aplicaciones |
El operador combina los cambios seleccionados de la rama de desarrollo a la rama de no producción (o de la rama de no producción a la rama de producción). El operador supervisa la implementación. |
Varias veces por trimestre por cada aplicación |
Operaciones manuales comunes
Algunas operaciones de la plataforma para desarrolladores son menos estructuradas y no usan la automatización con una plataforma para desarrolladores. Puedes desarrollar tus propias guías según este plano y realizar estas tareas en la consola de Google Cloud.
En la siguiente tabla, se describen estas tareas no automatizadas. Las frecuencias de las tareas son ilustrativas porque la frecuencia de una tarea depende de muchos factores. No es necesario que las tareas se repitan en intervalos precisos.
Tarea | Usuario | Descripción | Frecuencia de la tarea |
---|---|---|---|
Definir una plantilla de aplicación nueva |
Desarrollador de la plataforma para desarrolladores |
El desarrollador modifica una plantilla de aplicación basada en una plantilla de plano o pasa una plantilla a un lenguaje nuevo. |
Algunas veces al año |
Investigar los errores del entorno de ejecución del servicio en el entorno de desarrollo |
Desarrollador de aplicaciones |
El desarrollador usa el Explorador de registros y el Explorador de métricas en la consola de Google Cloud para revisar los registros de errores, las métricas de supervisión y los datos de series temporales de los usuarios y las aplicaciones. |
Algunas veces al mes |
Investigar errores del entorno de ejecución del servicio en entornos de producción o de no producción |
Operador de aplicaciones |
El operador usa el Explorador de registros y el Explorador de métricas en la consola de Google Cloud para revisar los registros de errores, las métricas de supervisión y los datos de series temporales de los usuarios y las aplicaciones. |
Algunas veces al mes |
Investigar errores de compilación |
Desarrolladores de aplicaciones |
El desarrollador consulta el historial de Cloud Build, incluidos los registros y el estado de compilación, en la consola de Google Cloud. |
Algunas veces a la semana |
Investigar errores de implementación en el entorno de desarrollo |
Desarrolladores de aplicaciones |
El desarrollador consulta el historial de actualizaciones y de lanzamiento de Cloud Deploy en la consola de Google Cloud para ver los registros y el estado de éxito de un intento de implementación, incluidos los errores. |
Algunas veces al mes |
Investigar errores de implementación en los entornos de producción y de no producción |
Operadores de aplicaciones |
El operadorconsulta el historial de actualizaciones y de lanzamiento de Cloud Deploy en la consola de Google Cloud para ver los registros y el estado de éxito de un intento de implementación, incluidos los errores. |
Algunas veces al mes |
Conectarse a los clústeres para depurar problemas de GKE |
Administrador de la plataforma para desarrolladores |
El administrador usa la puerta de enlace de Connect para conectarse a clústeres privados. Para problemas comunes, como los Pods no programados, el administrador puede revisar la información sobre problemas comunes (como Pods no programados) en la consola de Google Cloud. |
Algunas veces al mes |
Planificar la capacidad y optimiza los costos |
Administrador de la plataforma para desarrolladores |
El administrador revisa el uso de recursos de GKE, agregado por permiso o espacio de nombres, en la consola de Google Cloud. |
Programada como una tarea recurrente mensual |
Agregar o quitar grupos de nodos, o cambiar su tamaño |
Administrador de la plataforma para desarrolladores |
El administrador edita la IaC según corresponda y vuelve a implementar las aplicaciones. |
Se hace en respuesta a la planificación de la capacidad |
Verificar la postura de seguridad |
Administrador de la plataforma para desarrolladores |
El administrador verifica el cumplimiento de los estándares y si existen vulnerabilidades mediante el panel de postura de seguridad de GKE. |
Programada como una tarea recurrente mensual |
Actualizar las versiones de software del sistema del clúster (por ejemplo, la versión de Kubernetes) |
Administrador de la plataforma para desarrolladores |
El administrador usa las exclusiones y los períodos de mantenimiento de GKE para permitir las actualizaciones solo durante los horarios planificados. El administrador usa primero el período de actualización abierto en el entorno de desarrollo. Después de evaluar el estado de la actualización, el administrador actualiza el entorno de no producción y, luego, el entorno de producción. |
Programada como una tarea recurrente trimestral |
Instalar actualizaciones fundamentales de seguridad del clúster. |
Ninguna |
Automática, la realiza por GKE. |
Algunas veces al año |
Probar la conmutación por error regional |
Administrador de la plataforma para desarrolladores y administrador de aplicaciones |
Los administradores programan y, luego, inician de forma manual una conmutación por error regional del entorno, según corresponda. |
Anualmente como parte de los ejercicios de recuperación ante desastres |
Agrega una región. |
Administrador de la plataforma para desarrolladores, desarrollador de la plataforma para desarrolladores y administrador de aplicaciones |
El administrador de la plataforma para desarrolladores implementa clústeres de GKE adicionales en la región nueva. El administrador actualiza la plantilla de aplicación para agregar el nuevo paso de implementación para los entornos relevantes. Luego, el operador de aplicaciones integrará el cambio para agregar la secuencia de implementación a fin de incluir la región nueva. |
Rara vez |
Migrar a una región nueva |
Administrador de la plataforma para desarrolladores, desarrollador de la plataforma para desarrolladores y administrador de aplicaciones |
Los usuarios agregan la región nueva como se describe en Agrega una región. Después de probar la configuración nueva, los usuarios quitan la región anterior. |
Rara vez |
Próximos pasos
- Lee sobre cómo administrar costos y atribuciones de la plataforma para desarrolladores (siguiente documento de esta serie).