Introdução
Este módulo apresenta padrões de implantação e explica a arquitetura de microsserviços para ajudar a melhorar 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 fazer com que as mudanças cheguem rapidamente aos clientes e usem 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 para os clientes.
A Entrega Contínua é mais do que a gestão de releases.
A Entrega Contínua tem tudo a ver com o processo, as pessoas e as ferramentas de que você precisa 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 ao 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, é um gargalo para fornecer sob demanda.
Práticas de codificação
Se o seu software não for escrito de forma segura e sustentável, é provável que você não consiga manter uma alta cadência de lançamento.
Quando o seu software é complexo devido a uma grande quantidade de dívidas técnicas, é difícil alterar o código de forma rápida e confiável.
Escrever software de alta qualidade e testes de alta qualidade são uma parte essencial da Entrega Contínua.
Arquitetura
A arquitetura do seu aplicativo é sempre significativa. Mas ao implementar a Entrega Contínua, talvez seja ainda mais.
Se o seu software é um monólito com muitos acoplamentos estreitos entre os vários componentes, é um desafio entregar o seu software continuamente.
Cada parte que é alterada pode afetar outras partes que não mudaram. Os testes automatizados podem rastrear muitas dessas dependências inesperadas, mas ainda é difícil.
Há também o aspeto do tempo ao trabalhar com diferentes equipes. Quando a Equipa A depende do serviço da Equipa B, a Equipa A não consegue entregar até que a Equipa B esteja concluída. Introduz outra restrição à entrega.
A entrega contínua para grandes produtos de software é complexa.
Para peças menores, é mais fácil. Assim, dividir 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 principais pilares do DevOps.
Depois de ter seu código em um sistema de controle de versão, você precisa de uma maneira automatizada de integrar o código continuamente.
Os Pipelines do Azure podem ser usados para criar um serviço de CI e CD de plataforma cruzada com todos os recursos.
Ele funciona com seu provedor 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 do desenvolvimento, seus benefícios e propriedades.
Objetivos de aprendizagem
Após a conclusão deste módulo, os estudantes e profissionais podem:
- Descrever padrões de implantação.
- Explicar a arquitetura de microsserviços.
- Compreenda os padrões de implantação clássicos e modernos.
- Planeje e projete sua arquitetura.
Pré-requisitos
- Compreensão do que é DevOps e seus conceitos.
- A familiaridade com os princípios de controle de versão é útil, mas não é necessária.
- Benéfico ter experiência em uma organização que entrega software.