Escale sus compilaciones automatizadas con la integración de TeamCity y Kubernetes

Implemente los agentes de compilación de TeamCity en su clúster Kubernetes para obtener una solución de CI/CD robusta y escalable, en la nube o en su propio hardware.

Procesos de integración continua y entrega continua para Kubernetes con TeamCity

Kubernetes permite a los equipos «abstraerse» del uso y la dependencia de los servidores en su propio hardware. Con la ayuda de Kubernetes, los usuarios obtienen un servicio coherente y continuo: los equipos informáticos pueden dejar de utilizar cualquier servidor en cualquier momento, retirarlo para su mantenimiento y volver a colocarlo.

Kubernetes también le permite optimizar los recursos lanzando varias tareas en el mismo servidor.

Con la integración de TeamCity y Kubernetes, los equipos de operaciones no tienen que elegir entre sobreaprovisionar o arriesgarse a una menor disponibilidad del servidor cuando aumenta la contención por los recursos.

Elija el formato de TeamCity:

Integre TeamCity con su clúster Kubernetes

Gracias al complemento Kubernetes Support, TeamCity puede ejecutar agentes de compilación en su clúster Kubernetes. El complemento se incluye con TeamCity, por lo que no tiene que descargarlo ni instalarlo por separado.

  • Implemente una arquitectura CI/CD escalable sobre Kubernetes. Los agentes de compilación se pueden iniciar automáticamente cuando los necesite, realizar su trabajo y eliminarse una vez finalizada la compilación. TeamCity iniciará contenedores con agentes TeamCity instalados bajo demanda mientras distribuye una cola de compilación.
  • Compatibilidad nativa con Docker. TeamCity le permite automatizar CI/CD para proyectos de cualquier tamaño y complejidad mientras utiliza Docker para cada paso de su proceso.
  • Ejecute cada compilación en un entorno aislado configurando cada proyecto con su propio perfil en la nube que apunte a su propio clúster Kubernetes.
  • Aproveche la elasticidad de su infraestructura alojada en la nube mientras disfruta de la asignación inteligente de recursos y el diseño robusto de Kubernetes.
  • Ejecute tareas en paralelo con la ayuda de los pods de Kubernetes. Los pods se asignan a las máquinas alojadas en la nube de la forma más eficiente posible, maximizando el potencial para que las tareas se ejecuten en paralelo. Una vez completada una tarea, los pods que se estaban utilizando para esa tarea se detienen para liberar recursos o se dejan en ejecución de acuerdo con su configuración.

Mejorar la gestión de la implementación con Kubernetes

La compatibilidad nativa de TeamCity con Docker permite un proceso de integración e implementación continuos totalmente en contenedores.

Imágenes de contenedores

Cree nuevas imágenes de contenedores y publíquelas en su registro de contenedores con el ejecutor de compilación de Docker, listas para implementarlas en sus entornos de preproducción gestionados por Kubernetes.

Configure entornos de prueba y ensayo

Configure entornos de pruebas y ensayo muy similares a los de producción y deje que Kubernetes despliegue sus últimas compilaciones listas para las pruebas automatizadas de integración y de extremo a extremo, así como para la verificación manual.

Informes detallados

TeamCity proporciona informes detallados para pruebas automatizadas, y le indica los resultados sobre la marcha, con enlaces a los registros pertinentes y las trazas de pila para que pueda investigar los fallos de inmediato.

Ejecutor de compilaciones Helm para replicar su entorno real

Utilice el ejecutor de compilación Helm (disponible como complemento) para configurar las cargas de trabajo de Kubernetes y asegurarse de que sus implementaciones de preproducción reflejan su entorno real.

Comience a usar CI/CD de Kubernetes

Para una integración continua y un proceso de implementación totalmente escalables y altamente resistentes, configure un clúster Kubernetes para gestionar sus trabajos de creación de CI e implemente su aplicación en contenedores en entornos de pruebas y ensayo alojados en Kubernetes que repliquen con precisión su sistema de producción.

Para configurar TeamCity para utilizar los recursos del clúster Kubernetes:

  • Configure un clúster Kubernetes para alojar sus agentes de compilación TeamCity. Elija entre utilizar un servicio de alojamiento de Kubernetes, como GKE de Google Cloud o Amazon EKS, o alojar Kubernetes usted mismo en la nube o en servidores en su propio hardware.
  • Para alojar tanto los trabajos de compilación como los entornos de prueba en el mismo clúster, configure espacios de nombres específicos en Kubernetes.
  • Conceda a TeamCity los permisos de escritura pertinentes en su clúster.
  • Desde TeamCity, configure un Kubernetes Cloud Profile y especifique la configuración del agente de la nube. Para establecer los límites de los recursos informáticos disponibles para cada instancia de un agente de compilación de TeamCity o para configurar la política de reinicio, utilice una plantilla de pod personalizada.
  • Configure TeamCity para utilizar el agente de la nube para los trabajos de compilación.

Preguntas frecuentes

¿Cómo funciona la integración de TeamCity y Kubernetes?

Cada vez que se añade un nuevo trabajo a la cola de compilación, TeamCity identifica una imagen de agente de compilación compatible y pasa la solicitud a Kubernetes. El orquestador de contenedores identifica un pod existente con el agente de compilación correcto o pone en marcha un nuevo pod para satisfacer la demanda. Pueden ejecutarse varios trabajos de compilación en contenedores en la misma máquina virtual sin ningún riesgo de interferencia.

¿Cómo puedo empezar a utilizar Kubernetes y TeamCity?

Gracias a la compatibilidad de TeamCity con Kubernetes, puede aprovechar todas las ventajas de una infraestructura altamente escalable y robusta tanto para sus trabajos de compilación como para sus pruebas automatizadas. Obtenga más información sobre los beneficios de CI/CD, el propósito de un proceso de CI/CD y las consideraciones para crear un proceso de CI/CD alojado en la nube en nuestra Guía de CI/CD.

¿Listo para empezar? Integre TeamCity con sus clústeres de Kubernetes y ejecute su primera compilación en un proceso de integración y despliegue continuos de Kubernetes.

Comience a utilizar TeamCity

Potente CI/CD para equipos que utilizan Kubernetes