Uma das palavras-chave populares nos círculos de desenvolvimento nos últimos anos tem sido’implantação em escala’. Agora, embora seja bom ter um termo universalmente reconhecido, as opiniões sobre o que a implantação em escala realmente significa tendem a variar.

Então, o que exatamente significa”em escala”na comunidade de desenvolvimento e como as empresas podem definir seus própria abordagem? Conversamos com Adam Frank, vice-presidente de produtos e marketing da Armory.io, para descobrir.

BN: Vamos começar voltando ao básico, o que constitui uma’implantação’?

AF: Uma implantação no contexto de implantação contínua e tecnologia é quando as alterações de código ou configuração são automaticamente confirmadas ou’implantadas’em produção. A implantação contínua garante a implantação sem impactar negativamente a experiência do usuário ao orquestrar o ciclo de vida de teste e promoção do ambiente enquanto usa estratégias progressivas como canário e azul/verde com análise de impacto automatizada e reversões contínuas.

BN: Como é a implantação afetado pelo ambiente corporativo?

AF: O ambiente corporativo cria complexidade com seu tamanho, inconsistências e inúmeras partes móveis. A implantação de software em escala no ambiente corporativo pode ser extremamente desafiadora, complicada, lenta e cara. Os outros aspectos de escala que não podemos esquecer são os aspectos de pessoas e processos também. As equipes em toda a empresa terão diferentes processos, metas, prioridades e mandatos. Pessoas, processos e tecnologia em escala corporativa geralmente levam à complexidade.

BN: Onde você traça a linha entre implantação e manutenção? Como isso se encaixa no conceito de implantação contínua?

AF: Não há linha definida entre implantação e manutenção nem deveria haver. Alguns códigos podem fornecer novos recursos, enquanto outros podem fornecer uma correção de bug ou limpar o código existente e a dívida técnica. De qualquer forma, todos eles devem passar pelo processo de implantação para garantir a funcionalidade e reduzir a falha na mudança.

BN: Então, como as implantações podem ser ampliadas?

AF: Duas palavras: Orquestração. Automação. Engenheiros de plataforma e profissionais de DevOps gastam muito tempo criando e mantendo pipelines e processos de implantação, cuja complexidade aumenta o tempo entre os lançamentos e diminui a probabilidade de uma implantação bem-sucedida. ferramentas caseiras carecem de escalabilidade em todos os três aspectos: pessoas, processo, tecnologia. Você quer que seu pessoal se concentre em sua vantagem competitiva; focado no seu valor diferenciador. Não construir e manter infraestruturas. Você quer que seu processo seja automatizado de ponta a ponta. Para dimensionar implantações com eficiência, as equipes precisam tornar todo o processo simples, confiável e repetível. A implantação contínua orquestra testes, verificações de segurança e o ciclo de vida da promoção em cada cluster e ambiente, independentemente de quantos clusters e ambientes você possa ter e, o mais importante, reduz o risco de afetar negativamente a experiência do cliente. Esteja você indo de 10 para 1.000 desenvolvedores ou 1.000 ou 10.000 e além, um bom fluxo de trabalho de implantação contínua continua sendo fácil de manter, eficiente e eficaz.

BN: Qual é o papel de tecnologias como a conteinerização? jogar?

AF: Os contêineres virtualizam as camadas de software acima do nível do sistema operacional, tornando-os pacotes de software leves que contêm todas as dependências necessárias para executar o software contido. Por serem leves, eles são muito rápidos para modificar e iterar. Isso os torna perfeitos para implantação contínua. Assim que o processo de Integração Contínua for concluído com sucesso e houver um novo artefato; uma nova imagem de contêiner, o fluxo de trabalho de implantação contínua assume e orquestra a implantação nos ambientes. Isso garante que o artefato chegue à produção com segurança.

Crédito da imagem: Elnur_/depositphotos.com

By Henry Taylor

Eu trabalho como desenvolvedor back-end. Alguns de vocês devem ter me visto na conferência de desenvolvedores. Ultimamente tenho trabalhado em um projeto de código aberto.