Introdução

Concluído

Este módulo apresenta os padrões de implantação e explica a arquitetura de microsserviços para ajudar a aprimorar o ciclo de implantação e examinar padrões de implantação clássicos e modernos.

A entrega contínua é uma extensão da integração contínua. Trata-se de levar as alterações aos clientes rapidamente e usar métodos sustentáveis.

A entrega contínua vai além e as alterações que passam pelos pipelines de produção são liberadas aos clientes.

A entrega contínua é mais do que o gerenciamento de versão.

A entrega contínua se trata do processo, das pessoas e das ferramentas necessárias para garantir que você possa entregar seu software sob demanda.

A implantação é apenas uma etapa dentro do processo de entrega contínua. Para implantar sob demanda ou várias vezes por dia, todos os pré-requisitos precisam estar em vigor.

Por exemplo:

Estratégia de teste

Sua estratégia de teste deve estar em vigor. Se você precisa executar muitos testes manuais para validar seu software, este é um gargalo para a entrega sob demanda.

Práticas de codificação

Se o software não for escrito de maneira segura e fácil de manter, há chances de que você não consiga manter uma alta cadência de lançamentos.

Quando seu software é complexo devido a uma grande quantidade de dívida técnica, fica difícil alterar o código de maneira rápida e confiável.

Escrever software de alta qualidade e testes de alta qualidade é uma parte essencial da entrega contínua.

Arquitetura

A arquitetura do seu aplicativo é sempre algo significativo. Mas, ao implementar a entrega contínua, talvez ela se torne ainda mais importante.

Se o software for monolítico com muitos acoplamentos rígidos entre os vários componentes, será um desafio fornecer seu software continuamente.

Cada parte que é alterada pode afetar outras partes que não foram alteradas. Os testes automatizados podem rastrear muitas dessas dependências inesperadas, mas ainda fica difícil.

Também há o aspecto de tempo ao trabalhar com equipes diferentes. Quando a Equipe A depende do serviço da Equipe B, a Equipe A não pode entregar até que a Equipe B conclua. Isso introduz outra restrição na entrega.

A entrega contínua de produtos de software grandes é complexa.

Para partes menores, é mais fácil. Portanto, a divisão do seu software em partes menores e independentes é uma boa solução em muitos casos.

Uma abordagem para resolver esses problemas é implementar microsserviços.

A integração contínua é um dos pilares fundamentais de DevOps.

Depois que seu código estiver em um sistema de controle de versão, você precisará de uma forma automatizada de integrar o código de maneira contínua.

O Azure Pipelines pode ser usado para criar um serviço completo de CI e CD multiplataforma.

Ele funciona com seu provedor de Git preferido e pode ser implantado na maioria dos principais serviços de nuvem, incluindo o Azure.

Este módulo detalha a prática de integração contínua e os pilares para implementá-la no ciclo de vida de desenvolvimento, bem como seus benefícios e suas propriedades.

Objetivos de aprendizagem

Depois de concluir este módulo, os alunos e profissionais poderão:

  • Descrever padrões de implantação.
  • Explicar a arquitetura de microsserviços.
  • Entender padrões de implantação clássicos e modernos.
  • Planejar e projetar sua arquitetura.

Pré-requisitos

  • Noções básicas sobre o que é DevOps e seus conceitos.
  • É útil estar familiarizado com os princípios de controle de versão, mas não é obrigatório.
  • É benéfico ter experiência em uma organização que fornece software.