Introducción
Siguiendo las instrucciones descritas en Automatización de implementaciones de contenedores de Docker con Azure Pipelines, ha podido mejorar una canalización de versión para compilar y publicar una aplicación ASP.NET Core como contenedor de Docker, que luego se implementó en Azure App Service. Esta migración a un proyecto basado en contenedores dio lugar a numerosas ventajas para el equipo de productos. Además, la adopción de tecnologías de contenedores tiene el potencial de desbloquear diversas oportunidades innovadoras para el futuro.
A medida que las organizaciones de desarrollo se expanden, la complejidad de las soluciones que proporcionan también crece. A medida que varios productos y servicios se vuelven más interdependientes, surgen diferentes requisitos de desarrollo y operaciones para varios componentes dentro de una aplicación determinada. Una manera de mejorar la eficiencia arquitectónica es refactorizar esos componentes en microservicios independientes.
Un microservicio es un servicio pequeño e independiente diseñado para ser independiente y satisfacer una funcionalidad empresarial específica. Los contenedores proporcionan una excelente base técnica para compilar e implementar estos servicios, pero surge una nueva pregunta: ¿cómo se administran todos estos contenedores que están en uso?
Aquí es donde las tecnologías de orquestación, como Kubernetes, pueden ser útiles. Kubernetes es una plataforma diseñada para administrar cargas de trabajo y servicios en contenedores. Es una opción excelente para las organizaciones que tienen un número creciente de contenedores que se deben implementar, integrar y supervisar en varios entornos.
En este módulo, se une al equipo web de Tailspin Toys a medida que exploran una manera de usar Kubernetes en Azure. Aprenderá a actualizar una canalización de versión para compilar, publicar e implementar varios contenedores de Docker en un clúster de Kubernetes.
Aunque este módulo se centra en las tareas principales necesarias para compilar e implementar la aplicación de contenedor, es importante comprender que todas las demás características de Azure Pipelines siguen estando disponibles para las implementaciones de contenedores en Kubernetes. Puede integrar pruebas, definir varias fases y realizar otras tareas como lo haría para las aplicaciones existentes. Se omiten estas tareas aquí para mantener las cosas centradas.
Objetivos de aprendizaje
Después de completar este módulo, podrá:
- Explicar las ventajas de Kubernetes y cuándo usarla.
- Crear recursos de Azure para la compatibilidad con un clúster de Kubernetes.
- Actualice una canalización de versión básica para compilar, publicar e implementar varios contenedores de Docker en el clúster de Kubernetes.
- Supervise la compilación e implementación del proyecto.
Prerrequisitos
Los módulos de esta ruta de aprendizaje forman una progresión. Para seguir la progresión de esta serie desde el principio, complete las rutas de aprendizaje Introducción a Azure DevOps y Compilación de aplicaciones con Azure DevOps .
Para comenzar esta ruta de aprendizaje desde el principio, siga el vínculo aquí: Implementación de aplicaciones con Azure DevOps. En este módulo continúa donde se finalizó Automatización de implementaciones de contenedores de Docker con Azure Pipelines.
En este módulo también se supone que tiene conocimientos básicos sobre Kubernetes, aunque no es necesario completarlo. Si no está familiarizado con el tema, le recomendamos completar primero la ruta de aprendizaje Administrar contenedores en Azure.
Nota:
Azure Pipelines admite una amplia variedad de lenguajes y tipos de aplicación. En este módulo, trabajará con una aplicación .NET, pero puede aplicar los patrones que descubrirá aquí a sus propios proyectos que usan sus marcos y lenguajes de programación favoritos.
Conozca al equipo
En los módulos anteriores, conoció al equipo web Space Game de Tailspin Toys. En este módulo volverá a trabajar con el equipo web Space Game:
Andy es el responsable de desarrollo.
Amita está en el departamento de Control de calidad.
Tim está en operaciones.
Mara se acaba de incorporar como desarrolladora y depende de Andy.
Mara tiene experiencia previa con DevOps. y ayuda al equipo a adoptar un proceso más automatizado en el que se usa Azure DevOps.