O documento apresenta os benefícios da adoção de DevOps e quais serviços da AWS podem acelerar essa jornada, como CodeCommit, CodeBuild, CodeDeploy e CodePipeline que automatizam fluxos de trabalho de desenvolvimento e implantação. Também discute práticas como infraestrutura como código e microsserviços para garantir escalabilidade e disponibilidade das aplicações.
Melhores práticas de CI/CD na construção de aplicações modernas
AWS SUMMIT São Paulo - DEV02 AWS e DevOps - Explore e aproveite o melhor dos dois mundos - Dan Rezende
1. AWS e DevOps: Explore e aproveite
o melhor dos dois mundos
Dan Rezende
Cloud Solutions Architect
DEV02
2. Dan Rezende
Agenda
• Porque utilizar DevOps
• Benefícios das empresas que utilizam DevOps
• Serviços da AWS que podem acelerar a adoção de DevOps
• Dicas para ter sucesso em sua jornada DevOps
Vamos falar sobre DevOps e quais os
recursos a AWS tem para nos oferecer.
02
3. Dan Rezende
Porquê ?
A adoção ao DevOps, (cultura, práticas e ferramentas), visa aumentar a
intencidade e a velocidade com que softwares são produzidos e
entregues em produção.
Isso faz com que sua organização consiga inovar mais rápido, ser mais
ágil e consequentemente se destacar diante de outras empresas.
A medida que você cria pipelines de entrega, ciclos automatizados de
testes, deploy automático, infraestrutura como código e afins, você passa a
ter mais tempo para criar diferenciais em suas soluções.
Porque eu deveria considerar utilizar
DevOps em minha empresa?
03
4. Dan Rezende
01 02 03 04
46x
44%
440x Mais rápido entre commit e o deploy
46x Deploys mais frequentes
44% Mais tempo gasto com novas funcionalidades e
código
5x Menos chances de falhas
Fonte: Puppet state of devops, 2017.
4
Benefícios das empresas que adotam DevOps
04
440x
5x
5. Dan Rezende
Alguns Serviços AWS
05
AWS CodeStar AWS CodeCommit AWS CodeBuild AWS CodeDeploy AWS CodePipeline AWS X-Ray
AWS OpsWorks AWS OpsWorks for Chef
Automate
AWS CloudFormation AWS CloudWatch AWS CloudTrail AWS Config
6. Dan Rezende
Alguns Serviços AWS
06
AWS CodeCommit
• Serviço da AWS de repositório baseado em Git;
• Serviço gerenciado, redundante e altamente escalável;
• Compatível com as ferramentas de Git existentes;
• Permite armazenar tanto o código quanto binários;
• Seguro, seus arquivos em trânsito e repouso são criptografados;
• Integra com IAM e permite granular os acessos aos repositórios;
7. Dan Rezende
Alguns Serviços AWS
07
• É um serviço de integração contínua totalmente gerenciado que compila o código-
fonte, realiza testes e produz pacotes de software prontos para implantação;
• Aumenta e diminui automaticamente a escala para atender a sua demanda de
compilações, além de permitir compilações sendo executadas paralelamente;
• Seguro, seus artefatos de compilação são criptografados;
• Cobrança baseada nos minutos necessários para compilação;
• Possibilita integrar com sua ferramenta de CI já existente como o Jenkins por
exemplo;
AWS CodeBuild
8. Dan Rezende
Alguns Serviços AWS
08
• Serviço responsável por automatizar o processo de implantações de software em
diversos serviços, EC2, AWS Fargate, Lambda ou até mesmo em uma máquina local;
• Controle centralizado, permite monitorar as implantações de software;
• Ajuda evitar downtime e melhorar a disponibilidade das aplicações durante o deploy;
• É possível integrar o CodeDeploy com ferramentas de entrega contínua atual caso
você já utilize alguma como o GitHub e Jenkins;
AWS CodeDeploy
9. Dan Rezende
Alguns Serviços AWS
09
• Serviço gerenciado de entrega contínua da AWS;
• Ajuda a automatizar pipelines de liberação para oferecer atualizações rápidas e
confiáveis de aplicativos e infraestrutura;
• Pode ser integrado com outros serviços como GitHub;
• Podemos usar o CodePipeline para modelar a execução em paralelo das ações de
criação, teste e implantação, o que acelera o fluxo de trabalho;
AWS CodePipeline
10. Dan Rezende
Alguns Serviços AWS
10
• CodeStar permite que você desenvolva, compile e implante rapidamente aplicativos
na AWS;
• Com o painel de projetos do AWS CodeStar, você pode rastrear facilmente a evolução
de todo o seu processo de desenvolvimento de software, desde o backlog de itens de
trabalho até as recentes implantações de código da equipe;
• Com os modelos de projeto do CodeStar, você pode desenvolver facilmente várias
aplicações, como websites, aplicativos web, web services, além de habilidades do
Alexa;
• Permite que você e sua equipe colaborem em projetos de maneira segura;
AWS CodeStar
11. Dan Rezende
Alguns Serviços AWS
11
• X-Ray ajuda desenvolvedores a analisar e depurar aplicações distribuídas de
produção, como as criadas usando uma arquitetura de microsserviços;
• Disponibiliza uma visualização completa sobre as solicitações, conforme elas
percorrem o aplicativo, além de mostrar um mapa dos componentes que fazem parte
da aplicação;
• Também pode ser útil para identificar gargalos de desempenho;
AWS X-Ray
12. Dan Rezende
Alguns Serviços AWS
12
• Serviço de monitoramento e gerenciamento da AWS;
• Permite criar métricas personalizadas, alarmes e notificações baseado a eventos do
seu ambiente;
• Fornece dados e insights práticos para monitorar aplicativos, compreender alterações
de performance em todo o sistema e reagir a essas alterações, otimizar a utilização de
recursos e obter uma visualização unificada da integridade operacional;
Amazon CloudWatch
13. Dan Rezende
Alguns Serviços AWS
13
• É um serviço de gerenciamento de configurações que oferece instâncias
gerenciadas do Chef e do Puppet para que você automatize configuração de
servidores;
• O OpsWorks permite usar o Chef e o Puppet para automatizar a forma como os
servidores são configurados, implantados e gerenciados em instâncias do Amazon
EC2 ou ambientes de computação no local;
AWS OpsWorks
14. Dan Rezende
Alguns Serviços AWS
15
• Ferramenta para prover Infraestrutura como Código na AWS;
• Você pode padronizar componentes de infraestrutura usados em toda a organização;
• Com a codificação da infraestrutura, você pode tratá-la simplesmente como código,
criar, alterar, versionar;
• Excelente para agilizar a criação de novos ambientes, rodar testes sem comprometer
a infraestrutura de produção e até mesmo cenários de DR;
AWS CloudFormation
15. Dan Rezende
Alguns Serviços AWS
16
• Serviço de Auditoria de Logs de chamadas de API na AWS que possibilidade
governança, conformidade, auditoria operacional e de riscos;
• Disponibiliza o histórico de eventos e atividades da sua conta da AWS, tudo o que foi
executado pelos usuários na console, no AWS CLI, ou por chamadas de SDKs;
• Excelente serviço para rastrear quem, fez e o que fez, na sua conta da AWS;
AWS CloudTrail
16. Dan Rezende
Alguns Serviços AWS
17
• É um serviço que permite acessar, auditar e avaliar as configurações dos seus
recursos da AWS;
• Monitora e grava continuamente registros das configurações de recursos da AWS e
ainda lhe permite automatizar as verificações com base nas configurações desejadas;
É um ótimo recurso para auxiliar na auditoria de conformidade, de segurança e no
gerenciamento de alterações;
AWS Config
17. Crie e automatize seus
pipelines de entrega de
software com as
ferramentas da AWS
Tudo falha, o tempo todo!
Esteja preparado para lhe dar com as mudanças
Algumas dicas para o sucesso
Dan Rezende 18
Pense em escalabilidade.
Prefira utilizar microserviços.
Desacople suas aplicações.
Planeje sua aplicação para
que ela escale baseada a
eventos sem necessidade de
intervenção manual