SlideShare uma empresa Scribd logo
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Angelo Carvalho - Arquiteto de Soluções
Outubro 2016
Escalando suas aplicações Web
com Elastic Beanstalk
AWS Experience Belo Horizonte 2016
Agenda
• O que é o Elastic Beanstalk?
• Primeiros Passos com o Elastic Beanstalk
• Demo
• Melhores Práticas
Porque nós contruímos o
Elastic Beanstalk?
* As of 30 April 2016
2009
48
280
722
82
2011 2013 2015
Passo de inovação na AWS
Ouvimos nossos clientes e criamos
o que eles precisam
Alguns Desafios dos Clientes
Implantar código e não se preocupar
com o provisionamento e
gerenciamento da infraestrutura
Não ter expertise ou tempo disponível
Escalabilidade automática de
aplicações
O que é o Elastic Beanstalk?
Elastic Beanstalk
Maneira mais simples para
implantar e escalar aplicações
Java, .NET, PHP, Node.js, Python,
Ruby, Go e Docker
Faça o upload de sua aplicação e
deixe o Beanstalk gerenciar a
infraestrutura necessária
Elastic Beanstalk vs. Faça você mesmo
Seu código
Servidor HTTP
Servidor de Aplicação
Interpretador
Sistema Operacional
Host
Foco na construção
de sua aplicação
Fornecido por você
Fornecido e gerenciado pelo Elastic Beanstalk
On-instance configuration
Elastic Beanstalk vs. Faça você mesmo
• Instância única ou com balanceador
• Camada Web e Camada de Workers
• Provisiona a infra necessária:
balanceador de carga, auto scaling,
security groups, RDS (opcional), etc.
• Provê um único domínio para
aplicação: app.elasticbeanstalk.com
Stack de Infraestrutura
Versionamento da aplicação e configuração
Configurações salvas
Guarde as conf. dos
seus ambientes para
replicação futura
Versão das apps
Versões armazenadas
no S3. Código pode
vir do Git.
Benefícios
Rápido e
simples de
começar
Produtividade
para
desenvolvedor
Escalabilidade
automática
Total Controle
dos Recursos
Rápido e Simples de Começar
Maneira mais rápida e simples de se
implantar uma aplicação na AWS
Faça o upload de sua aplicação e deixe
o Beanstalk gerenciar a infraestrutura
necessária
Produtividade para o Desenvolvedor
Provisiona a infraestrutura e gerencia a
stack das aplicações por você
Foco na criação de códigos ao invés de
gastar tempo gerenciando infraestrutura
Escalabilidade automática
Elastic Beanstalk automaticamente
escala sua aplicação
Utilize métricas do CloudWatch para
disparar ações de escalabilidade
Ex: utilização de CPU
Total Controle dos Recursos
Mantenha o controle total sobre os
recursos na AWS
Assuma o controle de alguns (ou todos)
os elementos de sua infraestrutura
Casos de Uso Comuns
• Websites
• API backends
• Mobile backends
• Processamento assíncrono
Preço e Disponibilidade
• Atualmente disponível em todas as regiões da AWS
• Não há cobrança adicional pelo AWS Elastic Beanstalk
• Pague somente pelos recursos (ex: instâncias EC2, ELBs ou
RDS, etc) criados para rodar suas aplicações
Primeiros passos com o
Elastic Beanstalk
Informações para implantar uma aplicação
01
02
03
04
Região
Tipo de Stack
Instância única
Balanceador e
AutoScaling
ou
Banco de Dados (RDS) Opcional
Seu código Plataformas
Como implantar aplicações
1. Com o AWS Management Console
2. Com o AWS Toolkit para Eclipse ou
Visual Studio IDE
3. Com o EB CLI (command line)
Implantando uma aplicação via CLI
$ git clone
https://github.com/awsla
bs/eb-node-express-
sample.git
Baixe uma aplicação exemplo:2
$ eb init
Crie seu app3
Siga os prompts e configure
o ambiente
4
5 Crie os recursos e lance a
aplicação:
$ eb create
$ pip install --upgrade
awsebcli
Instale o EB CLI:1
Atualizando via CLI
Atualize seu código1
$ git add .
$ git commit –m “v2.0”
$ eb deploy
Adicione e faça o commit no repositório2
Abra a aplicação quando o deploy terminar:3
$ eb open
Demo: Implantando uma
aplicação no ElasticBeanstalk
via Console
Demo: Implantando uma
aplicação no ElasticBeanstalk
via CLI
Melhores Práticas
Teste e faça o tunning de sua aplicação
• Escolha as métricas de performance que você
deseja otimizar (ex: latência, usuários concorrentes,
requisições web, etc.)
• Faça o teste de carga de sua aplicação
• Configure Autoscaling para otimizar as métricas de performance
• Faça o tunning do backend (DynamoDB, RDS, etc.) para
performance ótima;
Implantação – Rolling updates
1. Defina a % de instâncias implantadas por vez
2. Implante x% e continue somente se as instâncias
estiverem saudáveis
3. Rollback automático em caso de falhas
Prós:
• Implantações são rápidas (20-60 s)
Contras:
• Rollback mais demorado pois a versão
anterior da aplicação precisa ser
reimplantada
Implantação – Rolling updates
Implantação – Zero Downtime
1. Crie um novo ambiente para uma aplicação
2. Implante a nova versão da app no novo ambiente
3. Use o “Swap Environment URLs” para direcionar os
usuários para o novo ambiente de produção
Prós:
• Implantação com Zero downtime
• Rollback rápido: ambiente com a versão anterior não foi
modificado
Contras:
• Implantações levam mais tempo do que o modelo rolling
(2-5 min) pois um novo ambiente precisa ser criado
• Cache de DNS, não respeitam o TTL
Implantação – Zero Downtime
Logs, métricas e alarmes
• Habilite a rotação de logs para que sejam automaticamente
gravadas no S3
• Entender métricas disponíveis para o seu ambiente e o que
eles significam
• Configure alarmes para monitorar automaticamente métricas
críticas e enviar notificações quando estiverem fora do intervalo
de operação normal
Coloque Tags em seus ambientes
• Torna mais fácil a busca de recursos de um determinado
ambiente
• Pode ser utilizada para monitorar custos associado a um
ambiente ou aplicação
• Elastic Beanstalk automaticamente coloca tags nos
ambientes:
• Environment name
• Environment ID
Conclusão
• Elastic Beanstalk é a maneira mais simples e conveniente de
subir aplicações na AWS
• Possui recursos poderosos
• Pague somente pelos recursos utilizados
Muito Obrigado!

Mais conteúdo relacionado

PPTX
Escalando sua aplicação Web com Beanstalk
Amazon Web Services LATAM
 
PPTX
Primeiros Passos na AWS
Amazon Web Services LATAM
 
PPTX
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
PPTX
Criando e conectando seu datacenter virtual
Amazon Web Services LATAM
 
PPTX
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
PPTX
Primeiros Passos na AWS
Amazon Web Services LATAM
 
PPTX
Tendências de Big Data
Amazon Web Services LATAM
 
PDF
Building blocks #5 - Recuperação de desastres de maneira prática na AWS
Amazon Web Services LATAM
 
Escalando sua aplicação Web com Beanstalk
Amazon Web Services LATAM
 
Primeiros Passos na AWS
Amazon Web Services LATAM
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
Criando e conectando seu datacenter virtual
Amazon Web Services LATAM
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
Primeiros Passos na AWS
Amazon Web Services LATAM
 
Tendências de Big Data
Amazon Web Services LATAM
 
Building blocks #5 - Recuperação de desastres de maneira prática na AWS
Amazon Web Services LATAM
 

Mais procurados (20)

PPTX
Criando e conectando seu datacenter virtual
Amazon Web Services LATAM
 
PPTX
AWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
Amazon Web Services LATAM
 
PDF
Building blocks #3 - Expandindo seu data center com uma infraestrutura híbrida
Amazon Web Services LATAM
 
PDF
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
PDF
Building blocks #1 - Primeiros passos na Amazon Web Services
Amazon Web Services LATAM
 
PDF
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Amazon Web Services LATAM
 
PPTX
Rodando a BlackFriday do seu eCommerce na nuvem
Amazon Web Services LATAM
 
PDF
Seu primeiro aplicativo de Big Data
Amazon Web Services LATAM
 
PDF
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Amazon Web Services LATAM
 
PPTX
Rodando SAP na AWS
Amazon Web Services LATAM
 
PDF
Fazendo seu DR na AWS de maneira prática
Amazon Web Services LATAM
 
PDF
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Amazon Web Services LATAM
 
PPTX
Fazendo seu DR na AWS
Amazon Web Services LATAM
 
PDF
Adicionando segurança web: AWS WAF
Amazon Web Services LATAM
 
PDF
Segurança de ponta a ponta na AWS
Amazon Web Services LATAM
 
PDF
Raising the bar #5 - Melhores práticas de workloads Microsoft
Amazon Web Services LATAM
 
PPTX
Tendências de Big Data
Amazon Web Services LATAM
 
PPTX
Mergulhando em desenvolvimento de aplicações serverless
Amazon Web Services LATAM
 
PDF
Path to the future #2 - Internet das coisas com AWS IoT
Amazon Web Services LATAM
 
PPTX
O que uma enterprise deveria fazer nos primeiros 90 dias
Amazon Web Services LATAM
 
Criando e conectando seu datacenter virtual
Amazon Web Services LATAM
 
AWS Experience Fortaleza: Escalando sua aplicação Web com Beanstalk
Amazon Web Services LATAM
 
Building blocks #3 - Expandindo seu data center com uma infraestrutura híbrida
Amazon Web Services LATAM
 
Construindo APIs com Amazon API Gateway e AWS Lambda
Amazon Web Services LATAM
 
Building blocks #1 - Primeiros passos na Amazon Web Services
Amazon Web Services LATAM
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Amazon Web Services LATAM
 
Rodando a BlackFriday do seu eCommerce na nuvem
Amazon Web Services LATAM
 
Seu primeiro aplicativo de Big Data
Amazon Web Services LATAM
 
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Amazon Web Services LATAM
 
Rodando SAP na AWS
Amazon Web Services LATAM
 
Fazendo seu DR na AWS de maneira prática
Amazon Web Services LATAM
 
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Amazon Web Services LATAM
 
Fazendo seu DR na AWS
Amazon Web Services LATAM
 
Adicionando segurança web: AWS WAF
Amazon Web Services LATAM
 
Segurança de ponta a ponta na AWS
Amazon Web Services LATAM
 
Raising the bar #5 - Melhores práticas de workloads Microsoft
Amazon Web Services LATAM
 
Tendências de Big Data
Amazon Web Services LATAM
 
Mergulhando em desenvolvimento de aplicações serverless
Amazon Web Services LATAM
 
Path to the future #2 - Internet das coisas com AWS IoT
Amazon Web Services LATAM
 
O que uma enterprise deveria fazer nos primeiros 90 dias
Amazon Web Services LATAM
 
Anúncio

Destaque (20)

PDF
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Stefan Teixeira
 
PDF
Bluesoft - Sistema de Gestão - Apresentação Comercial
Bluesoft
 
PPTX
Trabalhando com a infraestrutura como software na AWS com Elastic Beanstalk e...
Bruno Rodrigues
 
PDF
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
Stefan Teixeira
 
PDF
Light Talk Docker Compose
Wellington Silva
 
PDF
Orquestrando Docker Containers: Machine, Swarm e Compose
Roberto Hashioka
 
PPTX
Apresentação do Bluesoft ERP - Módulo Logístico
Bluesoft
 
PPTX
Apresentação do Bluesoft ERP - Módulo Contábil
Bluesoft
 
PPTX
Apresentação do Bluesoft ERP - Módulo de Patrimônio
Bluesoft
 
PPTX
Apresentação do Bluesoft ERP - Módulo de CRM e DP
Bluesoft
 
PDF
Ink saving - Imprimir melhor com menos tinta
Vitor Pedro
 
PPTX
Webinar: Como explorar os recursos de aprendizagem da AWS
Amazon Web Services LATAM
 
PPTX
Apresentação do Bluesoft ERP - Módulo Comercial
Bluesoft
 
PDF
Processamento Assíncrono com PHP
Fernando Fabricio
 
PPTX
Webinar: Apresentando AWS Device Farm
Amazon Web Services LATAM
 
PDF
Deploying Docker Containers
Hugo Henley
 
PDF
5. rodando containers docker na aws
Amazon Web Services LATAM
 
PDF
Docker, facilitando a vida do desenvolvimento
Sérgio Lima
 
PDF
Desenvolvendo e implantando aplicações PHP utilizando Docker
Bruno Ricardo Siqueira
 
PDF
Docker na vida real
Fernando Ike
 
Scrum Gathering Rio 2016 - Conteinerizando Testes com Docker Compose
Stefan Teixeira
 
Bluesoft - Sistema de Gestão - Apresentação Comercial
Bluesoft
 
Trabalhando com a infraestrutura como software na AWS com Elastic Beanstalk e...
Bruno Rodrigues
 
TDC 2015 Floripa - Criando ambientes de forma simples com Docker e Ansible
Stefan Teixeira
 
Light Talk Docker Compose
Wellington Silva
 
Orquestrando Docker Containers: Machine, Swarm e Compose
Roberto Hashioka
 
Apresentação do Bluesoft ERP - Módulo Logístico
Bluesoft
 
Apresentação do Bluesoft ERP - Módulo Contábil
Bluesoft
 
Apresentação do Bluesoft ERP - Módulo de Patrimônio
Bluesoft
 
Apresentação do Bluesoft ERP - Módulo de CRM e DP
Bluesoft
 
Ink saving - Imprimir melhor com menos tinta
Vitor Pedro
 
Webinar: Como explorar os recursos de aprendizagem da AWS
Amazon Web Services LATAM
 
Apresentação do Bluesoft ERP - Módulo Comercial
Bluesoft
 
Processamento Assíncrono com PHP
Fernando Fabricio
 
Webinar: Apresentando AWS Device Farm
Amazon Web Services LATAM
 
Deploying Docker Containers
Hugo Henley
 
5. rodando containers docker na aws
Amazon Web Services LATAM
 
Docker, facilitando a vida do desenvolvimento
Sérgio Lima
 
Desenvolvendo e implantando aplicações PHP utilizando Docker
Bruno Ricardo Siqueira
 
Docker na vida real
Fernando Ike
 
Anúncio

Semelhante a Escalando sua aplicação Web com Beanstalk (20)

PDF
Conhecendo o AWS Elastic Beanstalk
Amazon Web Services LATAM
 
PDF
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
Amazon Web Services LATAM
 
PPTX
O Futuro do ASP.NET
Eduardo Pires
 
PDF
DevOps - melhores práticas e integração contínua
Amazon Web Services LATAM
 
PPTX
Iniciando com AWS Lambda e serverless em cloud
Amazon Web Services LATAM
 
PDF
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Amazon Web Services LATAM
 
PDF
Passo a passo para criar seu desktop virtual na nuvem
Amazon Web Services LATAM
 
PDF
Melhores práticas para Arquitetura em Cloud Computing
Daniel Checchia
 
PDF
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Amazon Web Services LATAM
 
PDF
Arquiteturas de Software para o Século XXI
Amazon Web Services LATAM
 
PDF
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
Filipe Barretto
 
PPTX
AWS SUMMIT São Paulo - DEV02 AWS e DevOps - Explore e aproveite o melhor dos ...
Dan El Pierre Rezende
 
PDF
Visão Geral da Nuvem da AWS
Amazon Web Services LATAM
 
PPTX
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Alexandre Tarifa
 
PPTX
Melhores práticas de CI/CD na construção de aplicações modernas
Amazon Web Services LATAM
 
PPT
TechEd_OFC305
Rodolfo Roim
 
PPTX
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Renato Groff
 
PDF
Conhecendo as opcoes de Storage na Nuvem da AWS
Amazon Web Services LATAM
 
PDF
Auto scaling
Amazon Web Services LATAM
 
PDF
Introduction to Cloud Computing
Eduardo de Lucena Falcão
 
Conhecendo o AWS Elastic Beanstalk
Amazon Web Services LATAM
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
Amazon Web Services LATAM
 
O Futuro do ASP.NET
Eduardo Pires
 
DevOps - melhores práticas e integração contínua
Amazon Web Services LATAM
 
Iniciando com AWS Lambda e serverless em cloud
Amazon Web Services LATAM
 
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Amazon Web Services LATAM
 
Passo a passo para criar seu desktop virtual na nuvem
Amazon Web Services LATAM
 
Melhores práticas para Arquitetura em Cloud Computing
Daniel Checchia
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Amazon Web Services LATAM
 
Arquiteturas de Software para o Século XXI
Amazon Web Services LATAM
 
Rio Cloud Computing Meetup 25/01/2017 - Lançamentos do AWS re:Invent 2016
Filipe Barretto
 
AWS SUMMIT São Paulo - DEV02 AWS e DevOps - Explore e aproveite o melhor dos ...
Dan El Pierre Rezende
 
Visão Geral da Nuvem da AWS
Amazon Web Services LATAM
 
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Alexandre Tarifa
 
Melhores práticas de CI/CD na construção de aplicações modernas
Amazon Web Services LATAM
 
TechEd_OFC305
Rodolfo Roim
 
Construindo aplicações Web escaláveis com Docker e o Microsoft Azure - Azure ...
Renato Groff
 
Conhecendo as opcoes de Storage na Nuvem da AWS
Amazon Web Services LATAM
 
Introduction to Cloud Computing
Eduardo de Lucena Falcão
 

Mais de Amazon Web Services LATAM (20)

PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
Amazon Web Services LATAM
 
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
Amazon Web Services LATAM
 
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Amazon Web Services LATAM
 
PPTX
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
Amazon Web Services LATAM
 
PPTX
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
Amazon Web Services LATAM
 
PPTX
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Amazon Web Services LATAM
 
PPTX
Automatice el proceso de entrega con CI/CD en AWS
Amazon Web Services LATAM
 
PPTX
Automatize seu processo de entrega de software com CI/CD na AWS
Amazon Web Services LATAM
 
PPTX
Cómo empezar con Amazon EKS
Amazon Web Services LATAM
 
PPTX
Como começar com Amazon EKS
Amazon Web Services LATAM
 
PPTX
Ransomware: como recuperar os seus dados na nuvem AWS
Amazon Web Services LATAM
 
PPTX
Ransomware: cómo recuperar sus datos en la nube de AWS
Amazon Web Services LATAM
 
PPTX
Ransomware: Estratégias de Mitigação
Amazon Web Services LATAM
 
PPTX
Ransomware: Estratégias de Mitigación
Amazon Web Services LATAM
 
PPTX
Aprenda a migrar y transferir datos al usar la nube de AWS
Amazon Web Services LATAM
 
PPTX
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Amazon Web Services LATAM
 
PPTX
Cómo mover a un almacenamiento de archivos administrados
Amazon Web Services LATAM
 
PPTX
Simplifique su BI con AWS
Amazon Web Services LATAM
 
PPTX
Simplifique o seu BI com a AWS
Amazon Web Services LATAM
 
PPTX
Os benefícios de migrar seus workloads de Big Data para a AWS
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 1 - Introdução à nuvem
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 2 - Armazenamento e Backup
Amazon Web Services LATAM
 
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
Amazon Web Services LATAM
 
Automatice el proceso de entrega con CI/CD en AWS
Amazon Web Services LATAM
 
Automatize seu processo de entrega de software com CI/CD na AWS
Amazon Web Services LATAM
 
Cómo empezar con Amazon EKS
Amazon Web Services LATAM
 
Como começar com Amazon EKS
Amazon Web Services LATAM
 
Ransomware: como recuperar os seus dados na nuvem AWS
Amazon Web Services LATAM
 
Ransomware: cómo recuperar sus datos en la nube de AWS
Amazon Web Services LATAM
 
Ransomware: Estratégias de Mitigação
Amazon Web Services LATAM
 
Ransomware: Estratégias de Mitigación
Amazon Web Services LATAM
 
Aprenda a migrar y transferir datos al usar la nube de AWS
Amazon Web Services LATAM
 
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Amazon Web Services LATAM
 
Cómo mover a un almacenamiento de archivos administrados
Amazon Web Services LATAM
 
Simplifique su BI con AWS
Amazon Web Services LATAM
 
Simplifique o seu BI com a AWS
Amazon Web Services LATAM
 
Os benefícios de migrar seus workloads de Big Data para a AWS
Amazon Web Services LATAM
 

Último (17)

PPTX
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
PPTX
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPTX
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
fabriciolabgeo91411
 
PDF
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
PPTX
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
PPT
Sistemas de Informação em Saúde Aplicada.ppt
fabriciolabgeo91411
 
PPTX
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
PPTX
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
PPTX
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPTX
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
PPTX
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
PPTX
Curso de Java 8 - (Tratamento de Exceções, (try-catch-finally)).pptx
Anderson Maciel
 
PPTX
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
PPTX
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
PPTX
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
PPTX
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
PDF
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
SISTEMA DE INFORMAÇÃO EM SAÚDE_UEPA.pptx
fabriciolabgeo91411
 
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
Sistemas de Informação em Saúde Aplicada.ppt
fabriciolabgeo91411
 
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
Curso de Java 8 - (Tratamento de Exceções, (try-catch-finally)).pptx
Anderson Maciel
 
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 

Escalando sua aplicação Web com Beanstalk

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Angelo Carvalho - Arquiteto de Soluções Outubro 2016 Escalando suas aplicações Web com Elastic Beanstalk AWS Experience Belo Horizonte 2016
  • 2. Agenda • O que é o Elastic Beanstalk? • Primeiros Passos com o Elastic Beanstalk • Demo • Melhores Práticas
  • 3. Porque nós contruímos o Elastic Beanstalk?
  • 4. * As of 30 April 2016 2009 48 280 722 82 2011 2013 2015 Passo de inovação na AWS Ouvimos nossos clientes e criamos o que eles precisam
  • 5. Alguns Desafios dos Clientes Implantar código e não se preocupar com o provisionamento e gerenciamento da infraestrutura Não ter expertise ou tempo disponível Escalabilidade automática de aplicações
  • 6. O que é o Elastic Beanstalk?
  • 7. Elastic Beanstalk Maneira mais simples para implantar e escalar aplicações Java, .NET, PHP, Node.js, Python, Ruby, Go e Docker Faça o upload de sua aplicação e deixe o Beanstalk gerenciar a infraestrutura necessária
  • 8. Elastic Beanstalk vs. Faça você mesmo Seu código Servidor HTTP Servidor de Aplicação Interpretador Sistema Operacional Host Foco na construção de sua aplicação Fornecido por você Fornecido e gerenciado pelo Elastic Beanstalk On-instance configuration
  • 9. Elastic Beanstalk vs. Faça você mesmo • Instância única ou com balanceador • Camada Web e Camada de Workers • Provisiona a infra necessária: balanceador de carga, auto scaling, security groups, RDS (opcional), etc. • Provê um único domínio para aplicação: app.elasticbeanstalk.com Stack de Infraestrutura
  • 10. Versionamento da aplicação e configuração Configurações salvas Guarde as conf. dos seus ambientes para replicação futura Versão das apps Versões armazenadas no S3. Código pode vir do Git.
  • 12. Rápido e Simples de Começar Maneira mais rápida e simples de se implantar uma aplicação na AWS Faça o upload de sua aplicação e deixe o Beanstalk gerenciar a infraestrutura necessária
  • 13. Produtividade para o Desenvolvedor Provisiona a infraestrutura e gerencia a stack das aplicações por você Foco na criação de códigos ao invés de gastar tempo gerenciando infraestrutura
  • 14. Escalabilidade automática Elastic Beanstalk automaticamente escala sua aplicação Utilize métricas do CloudWatch para disparar ações de escalabilidade Ex: utilização de CPU
  • 15. Total Controle dos Recursos Mantenha o controle total sobre os recursos na AWS Assuma o controle de alguns (ou todos) os elementos de sua infraestrutura
  • 16. Casos de Uso Comuns • Websites • API backends • Mobile backends • Processamento assíncrono
  • 17. Preço e Disponibilidade • Atualmente disponível em todas as regiões da AWS • Não há cobrança adicional pelo AWS Elastic Beanstalk • Pague somente pelos recursos (ex: instâncias EC2, ELBs ou RDS, etc) criados para rodar suas aplicações
  • 18. Primeiros passos com o Elastic Beanstalk
  • 19. Informações para implantar uma aplicação 01 02 03 04 Região Tipo de Stack Instância única Balanceador e AutoScaling ou Banco de Dados (RDS) Opcional Seu código Plataformas
  • 20. Como implantar aplicações 1. Com o AWS Management Console 2. Com o AWS Toolkit para Eclipse ou Visual Studio IDE 3. Com o EB CLI (command line)
  • 21. Implantando uma aplicação via CLI $ git clone https://github.com/awsla bs/eb-node-express- sample.git Baixe uma aplicação exemplo:2 $ eb init Crie seu app3 Siga os prompts e configure o ambiente 4 5 Crie os recursos e lance a aplicação: $ eb create $ pip install --upgrade awsebcli Instale o EB CLI:1
  • 22. Atualizando via CLI Atualize seu código1 $ git add . $ git commit –m “v2.0” $ eb deploy Adicione e faça o commit no repositório2 Abra a aplicação quando o deploy terminar:3 $ eb open
  • 23. Demo: Implantando uma aplicação no ElasticBeanstalk via Console
  • 24. Demo: Implantando uma aplicação no ElasticBeanstalk via CLI
  • 26. Teste e faça o tunning de sua aplicação • Escolha as métricas de performance que você deseja otimizar (ex: latência, usuários concorrentes, requisições web, etc.) • Faça o teste de carga de sua aplicação • Configure Autoscaling para otimizar as métricas de performance • Faça o tunning do backend (DynamoDB, RDS, etc.) para performance ótima;
  • 27. Implantação – Rolling updates 1. Defina a % de instâncias implantadas por vez 2. Implante x% e continue somente se as instâncias estiverem saudáveis 3. Rollback automático em caso de falhas
  • 28. Prós: • Implantações são rápidas (20-60 s) Contras: • Rollback mais demorado pois a versão anterior da aplicação precisa ser reimplantada Implantação – Rolling updates
  • 29. Implantação – Zero Downtime 1. Crie um novo ambiente para uma aplicação 2. Implante a nova versão da app no novo ambiente 3. Use o “Swap Environment URLs” para direcionar os usuários para o novo ambiente de produção
  • 30. Prós: • Implantação com Zero downtime • Rollback rápido: ambiente com a versão anterior não foi modificado Contras: • Implantações levam mais tempo do que o modelo rolling (2-5 min) pois um novo ambiente precisa ser criado • Cache de DNS, não respeitam o TTL Implantação – Zero Downtime
  • 31. Logs, métricas e alarmes • Habilite a rotação de logs para que sejam automaticamente gravadas no S3 • Entender métricas disponíveis para o seu ambiente e o que eles significam • Configure alarmes para monitorar automaticamente métricas críticas e enviar notificações quando estiverem fora do intervalo de operação normal
  • 32. Coloque Tags em seus ambientes • Torna mais fácil a busca de recursos de um determinado ambiente • Pode ser utilizada para monitorar custos associado a um ambiente ou aplicação • Elastic Beanstalk automaticamente coloca tags nos ambientes: • Environment name • Environment ID
  • 33. Conclusão • Elastic Beanstalk é a maneira mais simples e conveniente de subir aplicações na AWS • Possui recursos poderosos • Pague somente pelos recursos utilizados

Notas do Editor

  • #5: Note to AWS Employees: Please note that we are no longer providing a bar chart comparing 2015 year-to-date to previous years in this deck. We will provide a final launch number at the close of each year going forward. It is ok however to verbally disclose the current year-to-date launch count in your own presentations/customer materials however.
  • #6: <>
  • #7: AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, and Docker on familiar servers such as Apache, Nginx, Passenger, and IIS. You can simply upload your code and Elastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, auto-scaling to application health monitoring. At the same time, you retain full control over the AWS resources powering your application and can access the underlying resources at any time.
  • #8: AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, and Docker on familiar servers such as Apache, Nginx, Passenger, and IIS. You can simply upload your code and Elastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, auto-scaling to application health monitoring. At the same time, you retain full control over the AWS resources powering your application and can access the underlying resources at any time.
  • #13: Elastic Beanstalk is the fastest and simplest way to deploy your application on AWS. You simply use the AWS Management Console, a Git repository, or an integrated development environment (IDE) such as Eclipse or Visual Studio to upload your application, and Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring. Within minutes, your application will be ready to use without any infrastructure or resource configuration work on your part.
  • #14: Elastic Beanstalk provisions and operates the infrastructure and manages the application stack for you, so you don't have to spend the time or develop the expertise. Instead, you can focus on writing code rather than spending time managing and configuring servers, databases, load balancers, firewalls, and networks.
  • #15: Elastic Beanstalk automatically scales your application up and down based on your applications specific need using easily adjustable Auto Scaling settings. For example, you can use CPU utilization metrics to trigger Auto Scaling actions. With Elastic Beanstalk, your application can handle peaks in workload or traffic while minimizing your costs.
  • #16: You have the freedom to select the AWS resources, such as Amazon EC2 instance type, that are optimal for your application. Additionally, Elastic Beanstalk lets you "open the hood" and retain full control over the AWS resources powering your application. If you decide you want to take over some (or all) of the elements of your infrastructure, you can do so seamlessly by using Elastic Beanstalk's management capabilities.
  • #29: Canary deployments Detect failures early and roll back
  • #31: Swaps the CNAMEs of environments (appname.elasticbeanstalk.com) with another CNAME with a different environment. This allows blue green deployments (red/black).