SlideShare uma empresa Scribd logo
1 de 59
Baixar para ler offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Rubens Devito Filho
Arquiteto de Soluções
ARC201
Arquiteturas e Estratégias para
Construir Aplicações Modernas na AWS
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Princípios chave
de uma Aplicação
Moderna
“…aplicação é baseada em container”
“…gerenciada dinamicamente…”
…orientada a microsserviços…”
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Princípios chave
de uma Aplicação
Moderna na Nuvem
“…aplicação é baseada em container”
“…dinamicamente gerenciada…”
…orientada a microsserviços…”
Nativa
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Velocidade Escala Resiliência
Por Que Construir Nativo na Nuvem Importa
Principais Componentes para o Sucesso
Containers
+ Funções
Nuvem Cultura
Principais Componentes para o Sucesso
Nuvem CulturaContainers
+ Funções
As empresas ágeis
são 440x
mais rápidas
que as lentas
Nós descobrimos que, comparado com os de baixa
performance, os que mais performam possuem:
46x mais deploys frequentes de código
440x mais rápidos desde o tempo de commit até o deploy
96x mais rápidos do tempo de recuperação de um downtime
5.0x menos frequencia de falhas de alterações (alterações são 1/5
de propabilidade falhas)
Tempo para Testar
Lance funcionalidades,não só código
Baixa performanceAlta performance
Frequência de Deploy (# de deploys por ano)
0
400
800
1,200
1,600
2014 2015 2016 2017
Containers Permitem Deploys Mais Ágeis
0
20
40
60
80
100
2014 2015 2016 2017
0
20
30
40
50
60
10
Tempo de recuperação (horas) Frequência de falhas das alterações (percentagem)
Baixa performanceAlta performance
2014 2015 2016 2017
Containers Permitem Alterações/Rollbacks
Imutáveis
Nativo na Nuvem: Princípio #1
Aplicações Nativas na Nuvem
permitem organizações construir e
lançar funcionalidades mais
rapidamente!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Principais Componentes para o Sucesso
CulturaNuvemContainers
+ Funções
Arquiteturas Nativas na Nuvem
Pague pelo
que use
Self-
Service
Elástico
Arquitetura
DATA CENTER
Nativa de Data
Center
Infraestrutura
Nativa de Data
Center
Arquitetura
Dura anos
DATA CENTER
Migração para
Nuvem
Pague pelo uso
DATACENTER
Pague de uma
vez e deprecie
em três anos
Pague no mês
seguinte pela
quantidade de
segundos utilizado
Nativo na Nuvem: Princípio #2
Pague pelo que usou no ultimo mês, não
pelo que você supôs que irá precisar no
próximo ano.
Permita times a experimentarem e
falharem rapidamente, sem
investimentos significantes.
Crie tickets e
espere por cada
passo
Self service,
sob-demanda, sem
atrasos
!
VS
!
Crie tickets e
espere por cada
passo
Self service,
sob-demanda, sem
atrasos
!
VS
!!
Deploy através de
um ticket e espera
de dias ou semanas
Deploy através de
uma chamada de API
self service em
minutos
Nativo na Nuvem: Princípio #3
Self service, direcionado a APIs,
automatizado.
Mova da criação de tickets para cada
passo para APIs self-service e
ferramentas que empoderam times.
Elasticidade
DATA CENTER
Difícil passar de 10% de utilização—
necessita capacidade extra em caso
de picos.
Nuvem
Manter-se a 40% de utilização—
e escalar sob demanda para
qualquer tamanho de workload.
Nativo na Nuvem: Princípio #4
Desligue quando ocioso.
Escale para workloads de qualquer
tamanho.
Muito mais utilização de recursos.
Ganhos gigantescos em custo.
Blast
Radius
Desacoplado Distribuído
Geograficamente
Resiliência
Microsserviços limitam o “blast
radius” de incidentes de software
Construa e implemente serviços
desacoplados.
Permita que times movam rapidamente de
maneira independente.
Reduza o blast radius através do isolamento
de serviços e deploys.
Nativo na Nuvem: Princípio #5
Microsserviços reduzem o blast
radius, podem melhorar o MTTR, e
suportam modelos de deployment
globalmente distribuídos.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Principais Componentes para o Sucesso
CulturaNuvemContainers
+ Funções
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Não seja um bloqueador da
inovação na sua empresa depois
de incorporá-la a sua cultura.”
—Adrian Cockcroft, VP Cloud Architecture Strategy, AWS
“Não o que acontece SE falhar,
mas o que acontece QUANDO falhar.”
—Nora Jones, Autora, e Sr. Chaos Engineer da Netflix
Princípios das Aplicações Modernas, Nativas na
Nuvem
Containers
+ Funções
Nuvem Cultura
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Então O Que Uma Aplicação Moderna Parece?
Como você roda e
interage com ela
Como ela
integra
Como você
a monitora
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“A AWS nos proporcionou alta
performance e foco do desenvolvimento
e aprimoramento”
“A AWS nos permite
focar na experiência dos
clientes e desenvolver
soluções
resilientes, de alta
performance e
baixo custo”
- Rodrigo Fernandes,
Digital Manager
Nextel é uma telecom, que
disponibiliza serviços de internet,
ligações e mensagens.
A URA é um dos principais serviços
de atendimento para o cliente
Nextel.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
O Desafio
Conscientizar os gestores que a
migração do On-Premises para a
AWS seria uma ótima melhoria.
Segregar o fluxo em pequenos
novos fluxos (microsserviços).
Garantir escalabilidade e resiliência
da aplicação.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Ambiente Legado
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Solução
Inserir diagrama 2 de arquitetura
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Lambda
Traga seu próprio código
• Node.js, Java, Python,
C#, Go
• Traga suas próprias
libraries (até as nativas)
Modelo simples de recurso
• Selecione a capacidade desde
128 MB até 3 GB
• CPU e rede alocados
proporcionalmente
Uso flexível
• Síncrono e assíncrono
• Integrado com outros
serviços da AWS
Autorização flexível
• Permita acesso de
maneira segura a
recursos e VPCs
• Controle granular para
invocar funções
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Lambda
Escrevendo funções
• Editor WYSIWYG ou
upload de pacotes .zip
• Plugins (Eclipse, Visual
Studio)
Monitoramento e logging
• Métricas para requisições,
erros, e throttles
• Logs built-in para o Amazon
CloudWatch Logs
Modelo de programação
• Use processos, threads,
/tmp, sockets normalmente
• AWS SDK built in
(Python e Node.js)
Stateless
• Persista dados usando
armazenamento externo
• Sem afinidade ou acesso
a estrutura por baixo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Elastic Container Service (Amazon ECS)
Rede no nível de
container
Colocação
avançada de tasks
Integração
produnda com a
plataforma da AWS
Amazon ECS CLI
…{ }
Footprint global
Motores de agendamento
poderosos
Automatic scaling
Métricas CloudWatch
Balanceadores de cargas
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
McDelivery
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Princípios Chave Arquiteturais
Microsserviços
Containers e orquestração
PaaS
Síncrono e baseado em evento
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon
RDS
Amazon ElastiCache
(Redis)
Amazon
S3
Amazon
SQS
Auto Scaling Group
Multi-AZ
Auto Scaling Group
Multi-AZ
Microservice 1 Microservice 2
Amazon ECS
McD API Middleware
Third-party
Delivery
Platforms
Menu and
Restaurant
Master
Restaurant
Application Load Balancer
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Construiu sistemas inteiros em meses, tudo na AWS
Integração out of the box e modelos de deployment
com o pipeline de DevOps simplificado do Amazon
ECS
Plataforma aberta que integra com qualquer
restaurant e parceiros de delivery globais
Mais de 20K transações por segundo, latência
abaixo de 100 milisegundos
Efetivo em custos, mesmo com valores
extremamente baixos de transação
Habilite o Foco na Aplicação
Apresentando o
AWS Fargate!
Simples,
fácil de usar,
modelo de
consumo
poderoso
Preço baseado em
recurso
Fargate
Sem instâncias
para gerenciar
API nativa de
container
Executando um Container
Executando Containers
EC2 Instance
TaskTask
TaskTask
EC2 Instance
TaskTask
TaskTask
EC2 Instance
TaskTask
TaskTask
EC2 Instance
TaskTask
TaskTask
EC2 Instance
TaskTask
TaskTask
EC2 Instance
ECS TaskECS Task
ECS TaskECS Task
ECS
AMI
Docker
agent
ECS
agent
Availability Zone #1 Availability Zone #2 Availability Zone #3
Scheduling and Orchestration
Cluster Manager Placement Engine
Executando Containers em Escala com ECS
E C S
Amazon
EC2 Instance
ECS
AMI
Docker
agent
ECS
agent
EC2 Instance
ECS
AMI
Docker
agent
ECS
agent
EC2 Instance
ECS
AMI
Docker
agent
ECS
agent
Scheduling and Orchestration
Cluster Manager Placement Engine
E C S
Amazon
Comece em Minutos
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon Elastic Container Service
for Kubernetes (Amazon EKS)
Control Plane de
Kubernetes
gerenciado
Upstream e certificado
Integrações nativas
com AWS
Construa com a
comunidade
Footprint global
Altamente disponível
Upgrades sob demanda
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
meucluster.eks.amazonaws.com
EKS Worker Nodes
Kubectl
AZ 1 AZ 2 AZ 3
Your AWS account
Amazon EKS
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Integração da Aplicação: Orquestração
Coordene os
componentes de
aplicações
distribuídas usando
workflows visuais
AWS Step Functions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Monitoramento: Amazon CloudWatch
• Pegue métricas de
recursos
importantes
• Observe a saúde
operacional e da
aplicação
• Monitore métricas
personalizadas e
arquivos de log
Monitorar
• Notificações
Amazon SNS
• Ações
automatizadas de
alarmes
• Ações corretivas
baseadas em
eventos
Agir
• Visualize através de
dashboards
• Granularidade de 1s
• Visualização
operacional
unificada
• Retenção de dados
de 15 meses
Analisar
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Rastreamento
Distribuído
• Analise e faça debug de
performance de aplicações
distribuídas
• Visualize a distribuição de latência
e identifque gargalos de
performance
• Pronto para usar em
produção com baixa
latência em tempo real
AWS X-Ray
• Identifique impacto de usuário
específico entre uma application
• Funciona entre serviços AWS e
não-AWS
Principais Componentes para o Sucesso
Containers
+ Funções
Nuvem Cultura
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Obrigado!
Avalie essa apresentação
1. Tap the Schedule icon. 2. Select the session
you attended.
3. Tap Session Evaluation
to submit your feedback.

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Migre seus Desktops e Apps para a AWS com Amazon WorkSpaces e AppStream 2 - ...
Migre seus Desktops e Apps para a AWS com Amazon WorkSpaces e AppStream 2 -  ...Migre seus Desktops e Apps para a AWS com Amazon WorkSpaces e AppStream 2 -  ...
Migre seus Desktops e Apps para a AWS com Amazon WorkSpaces e AppStream 2 - ...
 
Visão Geral dos Serviços de Identidade, Diretório e Acesso da AWS - SID201 -...
Visão Geral dos Serviços de Identidade, Diretório e Acesso da AWS -  SID201 -...Visão Geral dos Serviços de Identidade, Diretório e Acesso da AWS -  SID201 -...
Visão Geral dos Serviços de Identidade, Diretório e Acesso da AWS - SID201 -...
 
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo SummitDo monolítico a sem servidor com a Dynatrace -  DEM06 - Sao Paulo Summit
Do monolítico a sem servidor com a Dynatrace - DEM06 - Sao Paulo Summit
 
Componentes de IoT: Dos Dispositivos de Borda a Análise de Dados na Nuvem - ...
Componentes de IoT: Dos Dispositivos de Borda a Análise de Dados na Nuvem -  ...Componentes de IoT: Dos Dispositivos de Borda a Análise de Dados na Nuvem -  ...
Componentes de IoT: Dos Dispositivos de Borda a Análise de Dados na Nuvem - ...
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...DevOps na AWS: Construindo Sistemas para Entregas Rápidas -  DEV301 - Sao Pau...
DevOps na AWS: Construindo Sistemas para Entregas Rápidas - DEV301 - Sao Pau...
 
Detecção e Mitigação de Ameaças - SID301 - Sao Paulo Summit
Detecção e Mitigação de Ameaças -  SID301 - Sao Paulo SummitDetecção e Mitigação de Ameaças -  SID301 - Sao Paulo Summit
Detecção e Mitigação de Ameaças - SID301 - Sao Paulo Summit
 
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWSAprenda como migrar e transferir dados ao utilizar a nuvem da AWS
Aprenda como migrar e transferir dados ao utilizar a nuvem da AWS
 
Criando Aplicações Serverless - ARC302 - Sao Paulo Summit
Criando Aplicações Serverless -  ARC302 - Sao Paulo SummitCriando Aplicações Serverless -  ARC302 - Sao Paulo Summit
Criando Aplicações Serverless - ARC302 - Sao Paulo Summit
 
Levando Serverless para o Edge - ARC301 - Sao Paulo Summit
Levando Serverless para o Edge -  ARC301 - Sao Paulo SummitLevando Serverless para o Edge -  ARC301 - Sao Paulo Summit
Levando Serverless para o Edge - ARC301 - Sao Paulo Summit
 
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...Sem medo de sair do monolito para o sem servidor com Dynatrace -  DEM10 - Sao...
Sem medo de sair do monolito para o sem servidor com Dynatrace - DEM10 - Sao...
 
Desenvolvimento de Aplicações em Container com AWS Fargate
Desenvolvimento de Aplicações em Container com AWS FargateDesenvolvimento de Aplicações em Container com AWS Fargate
Desenvolvimento de Aplicações em Container com AWS Fargate
 
SAP HANA na AWS: Por que migrar para a nuvem? - ENT301 - Sao Paulo Summit
SAP HANA na AWS: Por que migrar para a nuvem? -  ENT301 - Sao Paulo SummitSAP HANA na AWS: Por que migrar para a nuvem? -  ENT301 - Sao Paulo Summit
SAP HANA na AWS: Por que migrar para a nuvem? - ENT301 - Sao Paulo Summit
 
Melhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernasMelhores práticas de CI/CD na construção de aplicações modernas
Melhores práticas de CI/CD na construção de aplicações modernas
 
Desenvolvimento de CI/CD na AWS
Desenvolvimento de CI/CD na AWSDesenvolvimento de CI/CD na AWS
Desenvolvimento de CI/CD na AWS
 
É Tudo sobre Dados - ARC202 - Sao Paulo Summit
É Tudo sobre Dados -  ARC202 - Sao Paulo SummitÉ Tudo sobre Dados -  ARC202 - Sao Paulo Summit
É Tudo sobre Dados - ARC202 - Sao Paulo Summit
 
Gerenciando um ambiente de nuvem complexo - DEM05 - Sao Paulo Summit
Gerenciando um ambiente de nuvem complexo - DEM05 - Sao Paulo SummitGerenciando um ambiente de nuvem complexo - DEM05 - Sao Paulo Summit
Gerenciando um ambiente de nuvem complexo - DEM05 - Sao Paulo Summit
 
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWSAWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
AWS Webinar Series Brasil: Modernize seus Workloads Windows na AWS
 
Simplifique o seu BI com a AWS
Simplifique o seu BI com a AWSSimplifique o seu BI com a AWS
Simplifique o seu BI com a AWS
 
Criando Aplicações Serverless
Criando Aplicações ServerlessCriando Aplicações Serverless
Criando Aplicações Serverless
 
Bancos de dados NoSQL na AWS
Bancos de dados NoSQL na AWSBancos de dados NoSQL na AWS
Bancos de dados NoSQL na AWS
 

Semelhante a Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - Sao Paulo Summit

Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Marcus Garcia
 

Semelhante a Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - Sao Paulo Summit (20)

Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
Usando Containers e Serverless para acelerar o desenvolvimento de aplicações ...
 
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
Webinar Introdução à Arquitetura de Aplicações VMware, Microsoft, e SAP na Nu...
 
FSI Roundtable - Cultura de Inovação com DevOps, microserviços e serverless
FSI Roundtable - Cultura de Inovação com DevOps, microserviços e serverlessFSI Roundtable - Cultura de Inovação com DevOps, microserviços e serverless
FSI Roundtable - Cultura de Inovação com DevOps, microserviços e serverless
 
Microsoft Workloads em Amazon Web Services
Microsoft Workloads em Amazon Web ServicesMicrosoft Workloads em Amazon Web Services
Microsoft Workloads em Amazon Web Services
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvem
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
 
A culture of rapid innovation with DevOps, microservices, and serverless - MA...
A culture of rapid innovation with DevOps, microservices, and serverless - MA...A culture of rapid innovation with DevOps, microservices, and serverless - MA...
A culture of rapid innovation with DevOps, microservices, and serverless - MA...
 
A culture of rapid innovation with DevOps, microservices, and serverless - MA...
A culture of rapid innovation with DevOps, microservices, and serverless - MA...A culture of rapid innovation with DevOps, microservices, and serverless - MA...
A culture of rapid innovation with DevOps, microservices, and serverless - MA...
 
Webinar: Containers
Webinar: ContainersWebinar: Containers
Webinar: Containers
 
Melhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingMelhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud Computing
 
Rodando Kubernetes com Amazon EKS
Rodando Kubernetes com Amazon EKSRodando Kubernetes com Amazon EKS
Rodando Kubernetes com Amazon EKS
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Arquiteturas de Software para o Século XXI
Arquiteturas de Software para o Século XXIArquiteturas de Software para o Século XXI
Arquiteturas de Software para o Século XXI
 
Melhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSMelhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWS
 
Visão Geral da Nuvem da AWS
Visão Geral da Nuvem da AWSVisão Geral da Nuvem da AWS
Visão Geral da Nuvem da AWS
 
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovarLiberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovar
 
Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1Treinamento Tropa de Elite Aws - Business - D1
Treinamento Tropa de Elite Aws - Business - D1
 
Lean Startup e Computação em Nuvem
Lean Startup e Computação em NuvemLean Startup e Computação em Nuvem
Lean Startup e Computação em Nuvem
 
CI CD best practices for building modern applications - MAD301 - São Paulo AW...
CI CD best practices for building modern applications - MAD301 - São Paulo AW...CI CD best practices for building modern applications - MAD301 - São Paulo AW...
CI CD best practices for building modern applications - MAD301 - São Paulo AW...
 
Cloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaCloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à prática
 

Mais de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Mais de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Arquiteturas e Estratégias para Criar Aplicações Modernas na AWS - ARC201 - Sao Paulo Summit

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Rubens Devito Filho Arquiteto de Soluções ARC201 Arquiteturas e Estratégias para Construir Aplicações Modernas na AWS
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Princípios chave de uma Aplicação Moderna “…aplicação é baseada em container” “…gerenciada dinamicamente…” …orientada a microsserviços…”
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Princípios chave de uma Aplicação Moderna na Nuvem “…aplicação é baseada em container” “…dinamicamente gerenciada…” …orientada a microsserviços…” Nativa
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Velocidade Escala Resiliência Por Que Construir Nativo na Nuvem Importa
  • 5. Principais Componentes para o Sucesso Containers + Funções Nuvem Cultura
  • 6. Principais Componentes para o Sucesso Nuvem CulturaContainers + Funções
  • 7. As empresas ágeis são 440x mais rápidas que as lentas Nós descobrimos que, comparado com os de baixa performance, os que mais performam possuem: 46x mais deploys frequentes de código 440x mais rápidos desde o tempo de commit até o deploy 96x mais rápidos do tempo de recuperação de um downtime 5.0x menos frequencia de falhas de alterações (alterações são 1/5 de propabilidade falhas) Tempo para Testar
  • 9. Baixa performanceAlta performance Frequência de Deploy (# de deploys por ano) 0 400 800 1,200 1,600 2014 2015 2016 2017 Containers Permitem Deploys Mais Ágeis
  • 10. 0 20 40 60 80 100 2014 2015 2016 2017 0 20 30 40 50 60 10 Tempo de recuperação (horas) Frequência de falhas das alterações (percentagem) Baixa performanceAlta performance 2014 2015 2016 2017 Containers Permitem Alterações/Rollbacks Imutáveis
  • 11. Nativo na Nuvem: Princípio #1 Aplicações Nativas na Nuvem permitem organizações construir e lançar funcionalidades mais rapidamente!
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Principais Componentes para o Sucesso CulturaNuvemContainers + Funções
  • 13. Arquiteturas Nativas na Nuvem Pague pelo que use Self- Service Elástico
  • 16. Migração para Nuvem Pague pelo uso DATACENTER Pague de uma vez e deprecie em três anos Pague no mês seguinte pela quantidade de segundos utilizado
  • 17. Nativo na Nuvem: Princípio #2 Pague pelo que usou no ultimo mês, não pelo que você supôs que irá precisar no próximo ano. Permita times a experimentarem e falharem rapidamente, sem investimentos significantes.
  • 18. Crie tickets e espere por cada passo Self service, sob-demanda, sem atrasos ! VS !
  • 19. Crie tickets e espere por cada passo Self service, sob-demanda, sem atrasos ! VS !! Deploy através de um ticket e espera de dias ou semanas Deploy através de uma chamada de API self service em minutos
  • 20. Nativo na Nuvem: Princípio #3 Self service, direcionado a APIs, automatizado. Mova da criação de tickets para cada passo para APIs self-service e ferramentas que empoderam times.
  • 21. Elasticidade DATA CENTER Difícil passar de 10% de utilização— necessita capacidade extra em caso de picos. Nuvem Manter-se a 40% de utilização— e escalar sob demanda para qualquer tamanho de workload.
  • 22. Nativo na Nuvem: Princípio #4 Desligue quando ocioso. Escale para workloads de qualquer tamanho. Muito mais utilização de recursos. Ganhos gigantescos em custo.
  • 24. Microsserviços limitam o “blast radius” de incidentes de software Construa e implemente serviços desacoplados. Permita que times movam rapidamente de maneira independente. Reduza o blast radius através do isolamento de serviços e deploys.
  • 25.
  • 26. Nativo na Nuvem: Princípio #5 Microsserviços reduzem o blast radius, podem melhorar o MTTR, e suportam modelos de deployment globalmente distribuídos.
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Principais Componentes para o Sucesso CulturaNuvemContainers + Funções
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Não seja um bloqueador da inovação na sua empresa depois de incorporá-la a sua cultura.” —Adrian Cockcroft, VP Cloud Architecture Strategy, AWS
  • 29. “Não o que acontece SE falhar, mas o que acontece QUANDO falhar.” —Nora Jones, Autora, e Sr. Chaos Engineer da Netflix
  • 30. Princípios das Aplicações Modernas, Nativas na Nuvem Containers + Funções Nuvem Cultura
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Então O Que Uma Aplicação Moderna Parece? Como você roda e interage com ela Como ela integra Como você a monitora
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “A AWS nos proporcionou alta performance e foco do desenvolvimento e aprimoramento” “A AWS nos permite focar na experiência dos clientes e desenvolver soluções resilientes, de alta performance e baixo custo” - Rodrigo Fernandes, Digital Manager Nextel é uma telecom, que disponibiliza serviços de internet, ligações e mensagens. A URA é um dos principais serviços de atendimento para o cliente Nextel.
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. O Desafio Conscientizar os gestores que a migração do On-Premises para a AWS seria uma ótima melhoria. Segregar o fluxo em pequenos novos fluxos (microsserviços). Garantir escalabilidade e resiliência da aplicação.
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Ambiente Legado
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Solução Inserir diagrama 2 de arquitetura
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Lambda Traga seu próprio código • Node.js, Java, Python, C#, Go • Traga suas próprias libraries (até as nativas) Modelo simples de recurso • Selecione a capacidade desde 128 MB até 3 GB • CPU e rede alocados proporcionalmente Uso flexível • Síncrono e assíncrono • Integrado com outros serviços da AWS Autorização flexível • Permita acesso de maneira segura a recursos e VPCs • Controle granular para invocar funções
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Lambda Escrevendo funções • Editor WYSIWYG ou upload de pacotes .zip • Plugins (Eclipse, Visual Studio) Monitoramento e logging • Métricas para requisições, erros, e throttles • Logs built-in para o Amazon CloudWatch Logs Modelo de programação • Use processos, threads, /tmp, sockets normalmente • AWS SDK built in (Python e Node.js) Stateless • Persista dados usando armazenamento externo • Sem afinidade ou acesso a estrutura por baixo
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Elastic Container Service (Amazon ECS) Rede no nível de container Colocação avançada de tasks Integração produnda com a plataforma da AWS Amazon ECS CLI …{ } Footprint global Motores de agendamento poderosos Automatic scaling Métricas CloudWatch Balanceadores de cargas
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. McDelivery
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Princípios Chave Arquiteturais Microsserviços Containers e orquestração PaaS Síncrono e baseado em evento
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon RDS Amazon ElastiCache (Redis) Amazon S3 Amazon SQS Auto Scaling Group Multi-AZ Auto Scaling Group Multi-AZ Microservice 1 Microservice 2 Amazon ECS McD API Middleware Third-party Delivery Platforms Menu and Restaurant Master Restaurant Application Load Balancer
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Construiu sistemas inteiros em meses, tudo na AWS Integração out of the box e modelos de deployment com o pipeline de DevOps simplificado do Amazon ECS Plataforma aberta que integra com qualquer restaurant e parceiros de delivery globais Mais de 20K transações por segundo, latência abaixo de 100 milisegundos Efetivo em custos, mesmo com valores extremamente baixos de transação
  • 43. Habilite o Foco na Aplicação
  • 45. Simples, fácil de usar, modelo de consumo poderoso Preço baseado em recurso Fargate Sem instâncias para gerenciar API nativa de container
  • 47. Executando Containers EC2 Instance TaskTask TaskTask EC2 Instance TaskTask TaskTask EC2 Instance TaskTask TaskTask EC2 Instance TaskTask TaskTask EC2 Instance TaskTask TaskTask
  • 48. EC2 Instance ECS TaskECS Task ECS TaskECS Task ECS AMI Docker agent ECS agent
  • 49. Availability Zone #1 Availability Zone #2 Availability Zone #3 Scheduling and Orchestration Cluster Manager Placement Engine Executando Containers em Escala com ECS E C S Amazon
  • 50. EC2 Instance ECS AMI Docker agent ECS agent EC2 Instance ECS AMI Docker agent ECS agent EC2 Instance ECS AMI Docker agent ECS agent Scheduling and Orchestration Cluster Manager Placement Engine E C S Amazon
  • 52. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Elastic Container Service for Kubernetes (Amazon EKS) Control Plane de Kubernetes gerenciado Upstream e certificado Integrações nativas com AWS Construa com a comunidade Footprint global Altamente disponível Upgrades sob demanda
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. meucluster.eks.amazonaws.com EKS Worker Nodes Kubectl AZ 1 AZ 2 AZ 3 Your AWS account Amazon EKS
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Integração da Aplicação: Orquestração Coordene os componentes de aplicações distribuídas usando workflows visuais AWS Step Functions
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Monitoramento: Amazon CloudWatch • Pegue métricas de recursos importantes • Observe a saúde operacional e da aplicação • Monitore métricas personalizadas e arquivos de log Monitorar • Notificações Amazon SNS • Ações automatizadas de alarmes • Ações corretivas baseadas em eventos Agir • Visualize através de dashboards • Granularidade de 1s • Visualização operacional unificada • Retenção de dados de 15 meses Analisar
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Rastreamento Distribuído • Analise e faça debug de performance de aplicações distribuídas • Visualize a distribuição de latência e identifque gargalos de performance • Pronto para usar em produção com baixa latência em tempo real AWS X-Ray • Identifique impacto de usuário específico entre uma application • Funciona entre serviços AWS e não-AWS
  • 57. Principais Componentes para o Sucesso Containers + Funções Nuvem Cultura
  • 58. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Obrigado!
  • 59. Avalie essa apresentação 1. Tap the Schedule icon. 2. Select the session you attended. 3. Tap Session Evaluation to submit your feedback.