Além das ferramentas de código aberto, diferentes provedores de serviços em nuvem fornecem suas ferramentas nativas em nuvem para implementar práticas de DevOps na nuvem. Este artigo descreve diferentes ferramentas e tecnologias fornecidas pela AWS para implementar o DevOps na AWS.
AWS codecomit
AWS CodeCommit é um serviço usado para controle de versão e hospedado pela AWS. Assim como outros serviços de controle de versão como Github, Bitbucket e GitLab, o código -fonte pode ser empurrado para repositórios privados no CodeComit. Não há repositórios públicos no AWS CodeComit.
O AWS CodeCommit é um serviço altamente disponível, seguro e escalável usado para hospedar repositórios de código privado. Usando a AWS codecomit, você não precisa atualizar o serviço se seus repositórios aumentarem além de um limite. Ele é dimensionado automaticamente com o aumento do número de repositórios ou tamanho do repositório.
A seguir, a lista de alguns benefícios fornecidos pelo AWS CodeCommit Service.
O AWS CodeComit Console fornece uma interface gráfica de usuário amigável para visualizar solicitações de puxar, compromissos, ramificações e tags git. Os repositórios do CodeCommit podem ser clonados usando URLs SSH e HTTPS.
Nas configurações do repositório CodeComit, você pode permitir notificações e gatilhos para notificar quando um evento específico como (Crie uma filial, exclua uma filial, na solicitação de tração) ocorre.
AWS CodeBuild
O AWS CodeBuild é um serviço totalmente gerenciado usado para executar testes, criar o código e gerar os artefatos de construção a partir do código. Usando o AWS CodeBuild, você não precisa fornecer um servidor de construção extra para criar o código -fonte. Ele fornece ambientes pré-configurados para a maioria das linguagens de programação populares como Python, Java, NodeJs e construir ferramentas como MAVEN, NPM e GRADLE. Você também pode criar seus próprios ambientes personalizados para construir seu projeto usando o AWS CodeBuild.
O AWS CodeBuild é um serviço sem servidor e você só é cobrado quando uma compilação está em execução. Dessa forma, você pode economizar dinheiro para um servidor extra para criar os projetos. A seguir, alguns benefícios do uso do serviço CodeBuild da AWS.
O AWS CodeBuild pode ser integrado a diferentes serviços de provedor de código -fonte para buscar o código. Você pode buscar o código do Github, Bitbucket, Github Enterprise, CodeCommit e S3. Além disso, você pode configurar o serviço CodeBuild para enviar os logs de construção para os logs do CloudWatch que podem ajudar a diagnosticar as falhas de construção. Para se comunicar com o CloudWatch, o AWS CodeBuild precisa de uma função de IAM com permissões específicas.
AWS CodeDeploy
O AWS CodeDeploy é um serviço totalmente gerenciado fornecido pela AWS para implantar o aplicativo pré-criado para diferentes serviços de computação, como EC2, AWS Lambda, AWS ECS e servidores locais. O AWS CodeDeploy Service pode implantar automaticamente o seguinte tipo de conteúdo.
AWS CodeDeploy é um serviço sem servidor e você só é cobrado quando uma implantação está em execução e, o resto do tempo, você não é cobrado. Assim como o AWS CodeBuild, o AWS CodeDEMploy também elimina a necessidade de provisionar um servidor extra para fins de implantação. A seguir, alguns benefícios do uso do serviço AWS CodeDeploy.
AWS CODEPIPELINE
AWS CodePiPeline é um serviço usado para visualizar um pipeline CICD completo usando uma interface de usuário gráfica amigável. Ele cria uma boa GUI de um pipeline combinando diferentes serviços como a AWS CodeComit, AWS CodeBuild, AWS CodeDElaplay. Facilita o processo de liberação do software, visualizando cada etapa do pipeline.
Quando um desenvolvedor empurra o código para o codecomit, a linha da linha de código, se configurada adequadamente, data do novo código e passa o código mais recente para o serviço AWS CodeBuild para executar testes e criar artefatos de código. Depois de construir os artefatos, esses artefatos são passados para o serviço AWS CodeDeploy para implantar a versão mais recente do aplicativo no servidor.
Todas essas etapas podem ser visualizadas e integradas entre si no serviço de codepipela. Ao implantar o código do estadiamento para um ambiente de produção, uma etapa de aprovação manual pode ser adicionada usando a AWS CodePiplineline. Para implantar o código para o ambiente de produção, alguém com permissões específicas deve aprovar a implantação. Evita a implantação de um compromisso não autêntico com a produção, o que pode quebrar o ambiente de produção.
AWS CodeGuru
Amazon CodeGuru é um serviço fornecido pela AWS para revisar o código -fonte. O AWS CodeGuru usa o aprendizado de máquina e a análise de programas para revisar o código fonte e encontrar os possíveis defeitos no código. Depois de encontrar os defeitos no código -fonte, o AWS CodeGuru fornece sugestões para resolver esses defeitos para linguagens de programação Java e Python.
Atualmente, o AWS CodeGuru suporta apenas linguagens de programação Java e Python e pode ler o código -fonte dos seguintes provedores de origem.
Conclusão
Existem diferentes serviços nativos de nuvem da AWS que podem ser usados para construir um pipeline CICD completo. O principal benefício de usar os serviços proprietários da AWS é que esses serviços são serviços sem servidor totalmente gerenciados e interagem entre si. Existem diferentes serviços para armazenar o código -fonte (AWS CodeCommit), criar e executar testes no código (AWS CodeBuild), implantando o código para servidores (AWS CodeDearploy) no AWS. Todos esses serviços podem ser integrados entre si para criar um pipeline completo usando o serviço da AWS CodePiPeline. Este artigo fornece uma breve compreensão de todos esses serviços da AWS para implementar práticas de DevOps na AWS.