Introdução
Seguindo as instruções descritas em Automatizar implantações de contêiner do Docker com o Azure Pipelines, você pôde aprimorar um pipeline de liberação para criar e publicar um aplicativo ASP.NET Core como um contêiner do Docker, que foi implantado no Serviço de Aplicativo do Azure. Essa migração para um projeto baseado em contêiner resultou em inúmeros benefícios para a equipe de produto. Além disso, a adoção de tecnologias de contentores tem o potencial de desbloquear várias oportunidades inovadoras para o futuro.
À medida que as organizações de desenvolvimento se expandem, a complexidade das soluções que fornecem também aumenta. À medida que vários produtos e serviços se tornam mais interdependentes, surgem diferentes requisitos de desenvolvimento e operações para vários componentes dentro de uma determinada aplicação. Uma maneira de melhorar a eficiência arquitetônica é refatorando esses componentes em microsserviços separados.
Um microsserviço é um serviço pequeno e independente projetado para ser autônomo e atender a uma capacidade de negócios específica. Os contêineres fornecem uma excelente base técnica para a criação e implantação desses serviços, mas uma nova questão surge: como gerenciamos todos esses contêineres que estão em uso?
É aqui que as tecnologias de orquestração, como o Kubernetes, podem ser úteis. O Kubernetes é uma plataforma projetada para gerenciar cargas de trabalho e serviços em contêineres. É uma excelente opção para organizações que têm um número crescente de contêineres que devem ser implantados, integrados e monitorados em vários ambientes.
Neste módulo, você se junta à equipe da Web do Tailspin Toys enquanto eles exploram uma maneira de usar o Kubernetes no Azure. Você aprende como atualizar um pipeline de liberação para criar, publicar e implantar vários contêineres do Docker em um cluster do Kubernetes.
Embora este módulo se concentre nas tarefas principais necessárias para criar e implantar seu aplicativo de contêiner, é importante entender que todos os outros recursos do Azure Pipelines ainda estão disponíveis para implantações de contêiner no Kubernetes. Você pode integrar testes, definir vários estágios e executar outras tarefas como faria para seus aplicativos existentes. Omitimos essas tarefas aqui para manter as coisas focadas.
Objetivos de aprendizagem
Depois de concluir este módulo, você será capaz de:
- Explique os benefícios do Kubernetes e quando usá-lo.
- Crie recursos do Azure para dar suporte a um cluster do Kubernetes.
- Atualize um pipeline de versão básica para criar, publicar e implantar vários contêineres do Docker no cluster do Kubernetes.
- Monitore a compilação e a implantação do seu projeto.
Pré-requisitos
Os módulos deste percurso de aprendizagem formam uma progressão. Para acompanhar a progressão desta série desde o início, conclua os percursos de aprendizagem Introdução ao Azure DevOps e Criar aplicações com o Azure DevOps.
Para começar esse caminho de aprendizado desde o início, siga o link aqui: Implantar aplicativos com o Azure DevOps. Este módulo continua de onde Automatizar implementações de contentores Docker com o Azure Pipelines deixa.
Este módulo também pressupõe que você tenha familiaridade básica com o Kubernetes, embora esse conhecimento não seja necessário para concluí-lo. Se é novo no tópico, recomendamos que conclua primeiro o percurso de aprendizagem Administrar contêineres no Azure.
Observação
Os Pipelines do Azure dão suporte a uma vasta gama de idiomas e tipos de aplicativos. Neste módulo, você trabalhará com um aplicativo .NET, mas poderá aplicar os padrões aprendidos aqui aos seus próprios projetos que usam suas linguagens de programação e estruturas favoritas.
Conheça a equipa
Nos módulos anteriores, você conheceu a equipe web do Space Game na Tailspin Toys. A equipa web do Space Game está aqui novamente para trabalhar consigo neste módulo:
Andy é o líder do desenvolvimento.
Amita está no controlo de qualidade.
Tim está em operações.
Mara acabou de entrar como desenvolvedora e reporta a Andy.
Mara tem experiência prévia com DevOps. Ela está ajudando a equipe a adotar um processo mais automatizado que usa o Azure DevOps.