Pular para o conteúdo principal

Recursos do AWS CodeDeploy

Por que optar pelo CodeDeploy?

O AWS CodeDeploy é um serviço que automatiza implantações de aplicações em uma variedade de serviços de computação, incluindo o Amazon Elastic Compute Cloud (Amazon EC2), o AWS Fargate, o AWS Lambda e as instâncias on-premises. O CodeDeploy realiza a automação total das implantações de aplicações, removendo 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 fornece um controle centralizado das implantações por meio do Console de Gerenciamento da AWS, da AWS Command Line Interface (AWS CLI), de SDKs ou de APIs, permitindo que você inicie, controle e monitore as implantaçõ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.

O CodeDeploy não é restrito a plataformas ou linguagens específicas e funciona com qualquer aplicação. Isso permite a reutilização do código de configuração existente. 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.

Implantações automatizadas

Abrir tudo

Você pode repetir uma implantação de aplicação em diferentes grupos de instâncias com facilidade ao usar o CodeDeploy. O CodeDeploy usa um modelo de instalação baseado em arquivos e em comandos, possibilitando a implantação de qualquer aplicação e a reutilização do 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. A remoção das etapas manuais das implantações aumenta a velocidade e a confiabilidade do processo de entrega de software.

O CodeDeploy permite a integração de atividades de implantação e de escalabilidade de software, garantindo que a aplicação permaneça atualizada em um ambiente de produção dinâmico. Para instâncias do Amazon EC2, o CodeDeploy se integra ao Auto Scaling. O Auto Scaling permite escalar a capacidade do Amazon EC2 de acordo com as condições que você estabelece, como aumento no tráfego. O CodeDeploy é notificado sempre que uma nova instância é iniciada em um grupo de Auto Scaling e executará automaticamente uma implantação de aplicativo na nova instância antes de ser adicionada a um balanceador de carga do Elastic Load Balancing (ELB).

Diminua o tempo de inatividade

Abrir tudo

As aplicações não necessitam de tempo de inatividade ao serem atualizadas para uma nova revisão com o CodeDeploy. O AWS CodeDeploy pode realizar implantações azul/verde em instâncias do Amazon EC2, em um serviço do Amazon Elastic Container Service (Amazon ECS) (ambos os tipos de lançamento do Amazon EC2 e do Fargate) ou em uma função Lambda. Com uma implantação azul/verde, a nova versão do aplicativo é executada ao lado da versão anterior. Assim que a nova revisão é testada e considerada pronta, o CodeDeploy pode mudar o tráfego da versão anterior para a nova versão de acordo com as especificações.

O CodeDeploy também 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 trabalha progressivamente nas instâncias, garantindo que as aplicações permaneçam disponíveis e continuem a atender as solicitações de tráfego. No caso de funções do Lambda, o tráfego de entrada é progressivamente redirecionado da versão antiga para a versão nova.

O monitoramento da integridade da implantação funciona em conjunto com as atualizações cumulativas para manter as aplicações altamente disponíveis durante as implantações. Tempo de inatividade inesperado poderá ocorrer se atualizações com falha forem implementadas. O CodeDeploy monitora a implantação e a interromperá caso ocorram muitas falhas nas atualizações.

É possível interromper a implantação de uma aplicação que está em andamento a qualquer momento, usando o console, a AWS CLI ou qualquer um dos AWS SDKs. Você pode simplesmente implantar novamente essa revisão se desejar continuar a implantação interrompida em um momento posterior. Além disso, é possível realizar a reversão imediata ao implantar novamente a revisão anterior.

Controle centralizado

Abrir tudo

É possível iniciar, controlar e monitorar as implantações do software diretamente do console ou ao usar a AWS CLI, os SDKs ou as APIs. Em caso de falha, você pode identificar o script em que ela ocorre. Você também pode definir notificações push que permitem monitorar o status de suas implantações por SMS ou mensagens de e-mail por meio do Amazon Simple Notification Service (Amazon SNS).

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 CodeDeploy acompanha e armazena o histórico recente das implantações realizadas. Você pode ver quais versões do aplicativo 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.

Fácil de adotar

Abrir tudo

O CodeDeploy usa um modelo de instalação baseado em arquivos e em comandos, possibilitando a implantação de qualquer aplicação e a reutilização do código de configuração existente. O CodeDeploy usa um único arquivo de configuração do AppSpec que você pode usar 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.

Ao usar as APIs do CodeDeploy, é simples integrar as implantações de aplicações à cadeia de ferramentas de entrega de software existente.  O AWS CodePipeline e alguns parceiros da AWS fornecem integrações pré-criadas do CodeDeploy para serviços de integração e entrega contínuas (CI/CD), simplificando a implantação automática do seu aplicativo atualizado.

Receba notificações

Abrir tudo

É possível criar notificações para eventos que afetem suas implantações. As notificações serão enviadas na forma de notificações do Amazon SNS. Todas as notificações incluem uma mensagem de status e um link para os recursos que foram impactados pelo evento que gerou a notificação.