O AWS CodeDeploy é um serviço que automatiza as implantações de aplicativos em diversos serviços de computação, incluindo Amazon EC2, AWS Lambda e instâncias executadas no local. O CodeDeploy automatiza totalmente suas implementações de aplicativos, eliminando a necessidade de operações manuais. O CodeDeploy protege seu aplicativo contra tempo de inatividades durante implementações através de atualizações constantes e monitoramento da saúde da implementação. O CodeDeploy oferece controle centralizado das suas implementações através do AWS Management Console, CLK, SDKs ou APIs, permitindo que você lance, controle e monitore suas implementações. Você pode ver o progresso da implantação até o nível de eventos de configuração individuais. O CodeDeploy monitora e armazena o histórico recente de suas implementações, para que você possa investigar o cronograma e o histórico de alterações das implementações passadas.

Comece a usar a AWS gratuitamente

Crie uma conta gratuita

Receba doze meses de acesso ao nível de uso de nível gratuito da AWS e aproveite os recursos do AWS Basic Support incluindo atendimento ao cliente 24x7x365 e fóruns de suporte, entre outros recursos.
Consulte os detalhes do nível gratuito da AWS »

O AWS CodeDeploy é independente quanto à plataforma e à linguagem e funciona com qualquer aplicativo, portanto, você pode reutilizar seu código de configuração. Você também pode integrar facilmente as implantações de aplicativos com o processo de entrega de software ou com uma cadeia de ferramentas de entrega contínua usando as APIs do CodeDeploy.

CodeDeploy_Header

Você pode repetir facilmente a implantação de um aplicativo em diferentes grupos de instâncias ou funções do AWS Lambda com o AWS CodeDeploy. O CodeDeploy usa um modelo de instalação baseado em arquivo e comando que permite implantar qualquer aplicativo e reutilizar o código de configuração existente. O mesmo código de configuração pode ser usado para implantar e testar atualizações de forma consistente nas fases de implantação, teste e produção de instâncias do Amazon EC2 ou funções do Lambda. A eliminação das etapas manuais das implantações aumenta a velocidade e a confiabilidade do processo de entrega de software.

O AWS CodeDeploy permite integrar atividades de implantação e escalabilidade de software para manter o aplicativo atualizado em um ambiente dinâmico de produção. Para instâncias do Amazon EC2, o CodeDeploy é integrado ao Auto Scaling. O Auto Scaling permite que você escale a capacidade do EC2 de acordo com condições definidas, como picos de tráfego. O CodeDeploy é notificado sempre que uma nova instância é executada em um grupo de Auto Scaling e executa automaticamente uma implantação de aplicativos na nova instância antes dessa instância ser adicionada a um load balancer do Elastic Load Balancing. Para o AWS Lambda, as funções escalam automaticamente em resposta a aumento ou redução do tráfego e se integram ao CodeDeploy para garantir a implantação do código mais recente.

Você pode usar o AWS CodeDeploy para automatizar as implantações de software nos ambientes de desenvolvimento, teste e produção executados em qualquer instância, incluindo as dos seus próprios datacenters (será necessário que suas instâncias possam se conectar a endpoints públicos da AWS). Com isso, é possível usar um único serviço para implantar consistentemente aplicações em arquiteturas híbridas.

Os aplicativos não precisam de tempo de inatividade quando são atualizados para uma nova revisão usando o AWS CodeDeploy. O CodeDeploy pode realizar uma atualização contínua em um grupo de instâncias do Amazon EC2 em que apenas uma fração das instâncias é colocada offline por vez. O CodeDeploy funciona progressivamente entre as instâncias, permitindo que os aplicativos permaneçam disponíveis e continuem a atender ao tráfego. Para funções do AWS Lambda, o tráfego de entrada é roteado gradualmente da versão anterior para a nova.

O AWS CodeDeploy também pode executar implantações azul-verde, em que um novo conjunto de instâncias do Amazon EC2 pode ser provisionado e instalado com a revisão mais recente. Após a instalação da nova revisão nas novas instâncias, o CodeDeploy redireciona o tráfego das instâncias de produção para as novas instâncias. Todas as atualizações do AWS Lambda são inerentemente azul/verde, pois não há novas instâncias a serem provisionadas.

O Monitoramento da saúde da implementação funciona em conjunto com as atualizações contínuas para manter os aplicativos altamente disponíveis durante as implementações. Tempo de inatividade inesperado pode ocorrer se atualizações com falha forem implementadas. O AWS CodeDeploy monitora a implantação e a interrompe se houver um grande número de falhas de atualização.

Você pode interromper a implementação de um aplicativo em andamento a qualquer momento usando o AWS Management Console, o AWS CLI ou qualquer um dos AWS SDKs. Você pode simplesmente reimplementar a revisão se quiser continuar a implementação interrompida posteriormente. Você também pode reverter imediatamente reimplementando a revisão anterior.

Você pode iniciar, controlar e monitorar implantações de software diretamente do Console de Gerenciamento da AWS ou usando o a ILC, os SDKs ou as APIs da AWS. Em caso de falha, você pode identificar o script onde ela ocorre. Além disso, você pode definir notificações por push que permitem monitorar o status das implantações via SMS ou mensagens de e-mail por meio do Amazon Simple Notification Service.

Um aplicativo pode ser implantado em vários grupos de implantação. Os grupos de implantação são usados para associar configurações a ambientes específicos, como um ambiente de preparação ou produção. Você pode testar uma revisão na preparação e implantar esse mesmo código com as mesmas instruções de implantação em produção quando estiver satisfeito.

O AWS CodeDeploy monitora e armazena o histórico recente de suas implementações. Você pode ver quais versões da aplicação estão implantadas no momento em cada um dos grupos de implantação de destino. Você pode inspecionar o histórico de alterações e as taxas de sucesso das implantações passadas em grupos de implantação específicos. Você também pode investigar um cronograma das implantações passadas para ter uma visão detalhada dos êxitos e falhas de implantação.

O AWS CodeDeploy usa um modelo de instalação baseado em arquivo e comando, que permite implementar qualquer aplicativo e reutilizar o código de configuração existente. O CodeDeploy usa um único arquivo de configuração AppSpec para mapear arquivos de aplicativos ou especificar as funções do AWS Lambda que serão atualizadas. Você pode usar o arquivo AppSpec para executar ações, testes ou verificações em cada evento do ciclo de vida (fase de implantação). Os comandos podem ser qualquer código, como um script de shell, um programa personalizado ou mesmo uma ferramenta de gerenciamento de configuração.

É fácil integrar implantações de aplicativos com sua cadeia de ferramentas de entrega de software existente usando as APIs do AWS CodeDeploy. O AWS CodePipeline, o AWS CodeStar e alguns parceiros da AWS oferecem integrações pré-definidas com o CodeDeploy para serviços de integração e entrega contínuas, simplificando a implantação automática de um aplicativo atualizado.