SlideShare une entreprise Scribd logo
1  sur  143
Télécharger pour lire hors ligne
Fazendo mais com menos
 Como o R7 entrega conteúdo a partir do AWS
                                      Roberto Gaiser
                                   rgaiser@sp.r7.com
                                            @rgaiser
         QCon SP - Setembro/2011
Sobre o R7
Sobre o R7

• 2 anos de vida
Sobre o R7

• 2 anos de vida
• Culturas diferentes
Sobre o R7

• 2 anos de vida
• Culturas diferentes
• Eficiência
Sobre o R7

• 2 anos de vida
• Culturas diferentes
• Eficiência
• Soluções não convencionais
Sobre o R7
Sobre o R7
Page Views    Unique Visitors
                                Ibope
539 Milhões    14,4 Milhões     Net//Ratings
                                Julho/2011
Sobre o R7
Page Views    Unique Visitors
                                Ibope
539 Milhões    14,4 Milhões     Net//Ratings
                                Julho/2011




 Notícias     Entretenimento
                                Ibope
    8ª              9ª          Net//Ratings
                                Julho/2011
Sobre o R7
   Page Views         Unique Visitors
                                           Ibope
   539 Milhões            14,4 Milhões     Net//Ratings
                                           Julho/2011




      Notícias       Entretenimento
                                           Ibope
         8ª                    9ª          Net//Ratings
                                           Julho/2011




 R7           Segundo lugar Internet Brasil
                                                     Ibope
51,12%            5,13%             4,9%             Net//Ratings
                                                     Julho/2011
Estrutura tradicional
Estrutura tradicional
Estrutura tradicional

• Servidores
Estrutura tradicional

• Servidores
• Storage
Estrutura tradicional

• Servidores
• Storage
•   Rede
Estrutura tradicional

• Servidores
• Storage
•   Rede
•   Link
Problema
Problema
“Efeito TV”
Problema
“Efeito TV”
Como sobrevivemos?
Como sobrevivemos?

• Utilizando o AWS como CDN
Como sobrevivemos?

• Utilizando o AWS como CDN
• Varnish
Como sobrevivemos?

• Utilizando o AWS como CDN
• Varnish
• Cópia do conteúdo para casos de desastre
Como sobrevivemos?

• Utilizando o AWS como CDN
• Varnish
• Cópia do conteúdo para casos de desastre
• Aplicações otimizadas
Como sobrevivemos?

• Utilizando o AWS como CDN
• Varnish
• Cópia do conteúdo para casos de desastre
• Aplicações otimizadas
• NoSQL, assíncrono, filas etc.
Motivação
Motivação

• Otimizar custo fixo
Motivação

• Otimizar custo fixo
Motivação

• Otimizar custo fixo
• “Efeito TV”
Motivação

• Otimizar custo fixo
• “Efeito TV”
• Resiliência a ataques
Motivação

• Otimizar custo fixo
• “Efeito TV”
• Resiliência a ataques
• Site backup
Primeira vez
Primeira vez

• ELB
Primeira vez

• ELB
• Large instance
Primeira vez

• ELB
• Large instance
• Varnish
Primeira vez

• ELB
• Large instance
• Varnish
• Medição do tempo de carregamento
Primeira vez

• ELB
• Large instance
• Varnish
• Medição do tempo de carregamento
• Sem aviso prévio
Primeira vez

• ELB
• Large instance
• Varnish
• Medição do tempo de carregamento
• Sem aviso prévio
Funcionou, e agora?
Funcionou, e agora?

• ELB + Auto Scaling (Cloudwatch alarm)
Funcionou, e agora?

• ELB + Auto Scaling (Cloudwatch alarm)
• Problemas do ELB
Funcionou, e agora?

• ELB + Auto Scaling (Cloudwatch alarm)
• Problemas do ELB
• Global load balancing (DNS)
Funcionou, e agora?

• ELB + Auto Scaling (Cloudwatch alarm)
• Problemas do ELB
• Global load balancing (DNS)
• Automação (CHEF)
Funcionou, e agora?

• ELB + Auto Scaling (Cloudwatch alarm)
• Problemas do ELB
• Global load balancing (DNS)
• Automação (CHEF)
• Ubuntu
Tudo vem de lá?
Tudo vem de lá?

• Conteúdo estático e dinâmico
Tudo vem de lá?

• Conteúdo estático e dinâmico
• Vídeos da Akamai
Tudo vem de lá?

• Conteúdo estático e dinâmico
• Vídeos da Akamai
• Performance do RDS X Custo
Tudo vem de lá?

• Conteúdo estático e dinâmico
• Vídeos da Akamai
• Performance do RDS X Custo
• Aplicações não preparadas
EC2
EC2

• Escolher o tipo adequado para a aplicação
EC2

• Escolher o tipo adequado para a aplicação
• CPU x Memória
EC2

• Escolher o tipo adequado para a aplicação
• CPU x Memória
• EBS x Instance Store
EC2

• Escolher o tipo adequado para a aplicação
• CPU x Memória
• EBS x Instance Store
• Tráfego x CPU
EC2

• Escolher o tipo adequado para a aplicação
• CPU x Memória
• EBS x Instance Store
• Tráfego x CPU
• Reserved Instance
EC2
EC2
      Compute Unit
      Memória (GB)
EC2
                              Compute Unit
                              Memória (GB)
8

6

4

2

0
    Small   High-CPU Medium         Large
EC2
                                Compute Unit
                                Memória (GB)
8

6

4

2

0
     Small    High-CPU Medium         Large

    32 bits     32 bits              64 bits
EBS
EBS

• EBS-backed instance
EBS

• EBS-backed instance
• Dados
EBS

• EBS-backed instance
• Dados
• Performance
EBS

• EBS-backed instance
• Dados
• Performance
• Vantagens
EBS

• EBS-backed instance
• Dados
• Performance
• Vantagens
• Problemas
AMI
AMI

• Pronta ou com automação?
AMI

• Pronta ou com automação?
• CHEF
AMI

• Pronta ou com automação?
• CHEF
• Ubuntu (http://uec-images.ubuntu.com/   )
AMI

• Pronta ou com automação?
• CHEF
• Ubuntu (http://uec-images.ubuntu.com/   )
• 32bits e 64bits
AMI

• Pronta ou com automação?
• CHEF
• Ubuntu ( http://uec-images.ubuntu.com/   )
• 32bits e 64bits
• Pacotes prontos, salvo exceções
S3
S3

• Custo
S3

• Custo
• Simples
S3

• Custo
• Simples
• Videos e Thumbnails
S3

• Custo
• Simples
• Videos e Thumbnails
• Permissões
ELB
ELB

• CNAME
ELB

• CNAME
• TTL e suas implicações
ELB

• CNAME
• TTL e suas implicações
• SSL
ELB

• CNAME
• TTL e suas implicações
• SSL
• Múltiplas zonas
Cloudfront
Cloudfront

• Controle do cache
Cloudfront

• Controle do cache
• Varnish e Nginx
Cloudfront

• Controle do cache
• Varnish e Nginx
• Imagens a partir do S3 (Thumbnails)
Cloudfront

• Controle do cache
• Varnish e Nginx
• Imagens a partir do S3 (Thumbnails)
• CDN Global
Cloudwatch
Cloudwatch

• Unidades nem sempre “amigáveis”
Cloudwatch

• Unidades nem sempre “amigáveis”
• Métricas customizadas
Cloudwatch

• Unidades nem sempre “amigáveis”
• Métricas customizadas
• Alarmes
Cloudwatch

• Unidades nem sempre “amigáveis”
• Métricas customizadas
• Alarmes
• Auto Scaling
Monitoração
Monitoração
• Zabbix
Monitoração
• Zabbix
• Cloudwatch
Monitoração
• Zabbix
• Cloudwatch
• Dinâmico
Monitoração
• Zabbix
• Cloudwatch
• Dinâmico
• Otimizar custo e desempenho
Monitoração
• Zabbix
• Cloudwatch
• Dinâmico
• Otimizar custo e desempenho
• Capacity planning
Automação
Automação

• Puppet x Cfengine x CHEF
Automação

• Puppet x Cfengine x CHEF
• CHEF já estava pronto para o EC2
Automação

• Puppet x Cfengine x CHEF
• CHEF já estava pronto para o EC2
• OHAI
Automação

• Puppet x Cfengine x CHEF
• CHEF já estava pronto para o EC2
• OHAI
• Cloudformation
Automação

• Puppet x Cfengine x CHEF
• CHEF já estava pronto para o EC2
• OHAI
• Cloudformation
• Disaster recovery
Cloudformation
Cloudformation

• JSON
Cloudformation

• JSON
• Versionamento
Cloudformation

• JSON
• Versionamento
• Consegue controlar todos os serviços
Cloudformation

• JSON
• Versionamento
• Consegue controlar todos os serviços
• Testes e recuperação de falhas
Segurança
Segurança

• ACL de entrada, saída sempre é liberado
Segurança

• ACL de entrada, saída sempre é liberado
• Grupos entre diferentes contas
Segurança

• ACL de entrada, saída sempre é liberado
• Grupos entre diferentes contas
• Impossibilidade de alterar o grupo
Segurança

• ACL de entrada, saída sempre é liberado
• Grupos entre diferentes contas
• Impossibilidade de alterar o grupo
Segurança

• ACL de entrada, saída sempre é liberado
• Grupos entre diferentes contas
• Impossibilidade de alterar o grupo
• Implicações legais
Controle de acesso
Controle de acesso


• IAM
Controle de acesso


• IAM
• API Key/Secret
Controle de acesso


• IAM
• API Key/Secret
• Por aplicação/usuário
Controle de acesso


• IAM
• API Key/Secret
• Por aplicação/usuário
• Granularidade varia entre os serviços
Problemas?
Problemas?
• Eles existem
Problemas?
• Eles existem
• RTT
Problemas?
• Eles existem
• RTT
• Conectividade das
  operadoras
Problemas?
• Eles existem
• RTT
• Conectividade das
  operadoras
• Controle de acesso (IAM)
Problemas?
• Eles existem
• RTT
• Conectividade das
  operadoras
• Controle de acesso (IAM)
Problemas?
• Eles existem
• RTT
• Conectividade das
  operadoras
• Controle de acesso (IAM)
• Problemas do AWS
Futuro
Futuro
Futuro
• O medo foi vencido
Futuro
• O medo foi vencido
• Global load balancer
  possibilita outros provedores
Futuro
• O medo foi vencido
• Global load balancer
  possibilita outros provedores
• Busca de soluções
  competitivas
Futuro
• O medo foi vencido
• Global load balancer
  possibilita outros provedores
• Busca de soluções
  competitivas
• Construir aplicações
  preparadas para este tipo de
  ambiente
Outros usos
Outros usos
Outros usos
• Possibilidade de criar a mesma
  estrutura de produção
Outros usos
• Possibilidade de criar a mesma
  estrutura de produção
• Homologação
Outros usos
• Possibilidade de criar a mesma
  estrutura de produção
• Homologação
• Testes
Outros usos
• Possibilidade de criar a mesma
  estrutura de produção
• Homologação
• Testes
• S3 e EBS como backup
Outros usos
• Possibilidade de criar a mesma
  estrutura de produção
• Homologação
• Testes
• S3 e EBS como backup
• Hadoop para relatórios
“Cloud Computing”
“Cloud Computing”
Perguntas?
Perguntas?

Contenu connexe

Similaire à R7 no AWS - Qcon SP 2011

ASP.NET Core APIs: Performance Tips
ASP.NET Core APIs: Performance TipsASP.NET Core APIs: Performance Tips
ASP.NET Core APIs: Performance TipsAndre Baltieri
 
Escalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosEscalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosAmazon Web Services LATAM
 
Armazenamento - EBC on the road Brazil Edition [Portuguese]
Armazenamento - EBC on the road Brazil Edition [Portuguese]Armazenamento - EBC on the road Brazil Edition [Portuguese]
Armazenamento - EBC on the road Brazil Edition [Portuguese]Amazon Web Services
 
Big Query - Escalabilidade Infinita para os seus Dados
Big Query  - Escalabilidade Infinita para os seus DadosBig Query  - Escalabilidade Infinita para os seus Dados
Big Query - Escalabilidade Infinita para os seus DadosAlvaro Viebrantz
 
Rodando a BlackFriday do seu eCommerce na nuvem
Rodando a BlackFriday do seu eCommerce na nuvemRodando a BlackFriday do seu eCommerce na nuvem
Rodando a BlackFriday do seu eCommerce na nuvemAmazon Web Services LATAM
 
App Engine: aplicações escaláveis em poucas horas
App Engine: aplicações escaláveis em poucas horasApp Engine: aplicações escaláveis em poucas horas
App Engine: aplicações escaláveis em poucas horasOsvaldo Santana Neto
 
Fisl10 MySql na Globo.com por Camila Dias
Fisl10 MySql na Globo.com por Camila DiasFisl10 MySql na Globo.com por Camila Dias
Fisl10 MySql na Globo.com por Camila DiasCamila Dias
 
Escalando primeiros 10 milhões de usuários
Escalando primeiros 10 milhões de usuáriosEscalando primeiros 10 milhões de usuários
Escalando primeiros 10 milhões de usuáriosAmazon Web Services LATAM
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalAmazon Web Services LATAM
 
TDC SP 2015 - Criando aplicações ASP.NET no Mac
TDC SP 2015 - Criando aplicações ASP.NET no MacTDC SP 2015 - Criando aplicações ASP.NET no Mac
TDC SP 2015 - Criando aplicações ASP.NET no MacAndre Baltieri
 
Conhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSConhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSAmazon Web Services LATAM
 
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicaçãoAgile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicaçãoStefan Teixeira
 
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...Renato Groff
 
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaiMasters
 

Similaire à R7 no AWS - Qcon SP 2011 (20)

ASP.NET Core APIs: Performance Tips
ASP.NET Core APIs: Performance TipsASP.NET Core APIs: Performance Tips
ASP.NET Core APIs: Performance Tips
 
Escalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuariosEscalando para os primeiros 10 milhoes de usuarios
Escalando para os primeiros 10 milhoes de usuarios
 
Armazenamento - EBC on the road Brazil Edition [Portuguese]
Armazenamento - EBC on the road Brazil Edition [Portuguese]Armazenamento - EBC on the road Brazil Edition [Portuguese]
Armazenamento - EBC on the road Brazil Edition [Portuguese]
 
Introducao+ao+amazon+ec2+ +ricardo+geh
Introducao+ao+amazon+ec2+ +ricardo+gehIntroducao+ao+amazon+ec2+ +ricardo+geh
Introducao+ao+amazon+ec2+ +ricardo+geh
 
Big Query - Escalabilidade Infinita para os seus Dados
Big Query  - Escalabilidade Infinita para os seus DadosBig Query  - Escalabilidade Infinita para os seus Dados
Big Query - Escalabilidade Infinita para os seus Dados
 
Rodando a BlackFriday do seu eCommerce na nuvem
Rodando a BlackFriday do seu eCommerce na nuvemRodando a BlackFriday do seu eCommerce na nuvem
Rodando a BlackFriday do seu eCommerce na nuvem
 
Arquiteturas Cloud na AWS: Uma Introducao
Arquiteturas Cloud na AWS: Uma IntroducaoArquiteturas Cloud na AWS: Uma Introducao
Arquiteturas Cloud na AWS: Uma Introducao
 
Introducao a aws storage backup e archiving
Introducao a aws storage backup e archivingIntroducao a aws storage backup e archiving
Introducao a aws storage backup e archiving
 
App Engine: aplicações escaláveis em poucas horas
App Engine: aplicações escaláveis em poucas horasApp Engine: aplicações escaláveis em poucas horas
App Engine: aplicações escaláveis em poucas horas
 
Fisl10 MySql na Globo.com por Camila Dias
Fisl10 MySql na Globo.com por Camila DiasFisl10 MySql na Globo.com por Camila Dias
Fisl10 MySql na Globo.com por Camila Dias
 
Rails nas Nuvens
Rails nas NuvensRails nas Nuvens
Rails nas Nuvens
 
CWI Workshop 2016 - Cloud
CWI Workshop 2016 - CloudCWI Workshop 2016 - Cloud
CWI Workshop 2016 - Cloud
 
Escalando primeiros 10 milhões de usuários
Escalando primeiros 10 milhões de usuáriosEscalando primeiros 10 milhões de usuários
Escalando primeiros 10 milhões de usuários
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
 
TDC SP 2015 - Criando aplicações ASP.NET no Mac
TDC SP 2015 - Criando aplicações ASP.NET no MacTDC SP 2015 - Criando aplicações ASP.NET no Mac
TDC SP 2015 - Criando aplicações ASP.NET no Mac
 
Conhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSConhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWS
 
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicaçãoAgile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
Agile Brazil 2015 - Testando na Nuvem a UI e o JavaScript de sua aplicação
 
Iniciando com Amazon DynamoDB
Iniciando com Amazon DynamoDBIniciando com Amazon DynamoDB
Iniciando com Amazon DynamoDB
 
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
Construindo APIs REST escaláveis na nuvem com Docker e Kubernetes - DEVPIRA F...
 
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
 

Plus de Roberto Gaiser

Inter Dev Ops Conf 2016 - IaaS behind the scenes
Inter Dev Ops Conf 2016 - IaaS behind the scenesInter Dev Ops Conf 2016 - IaaS behind the scenes
Inter Dev Ops Conf 2016 - IaaS behind the scenesRoberto Gaiser
 
WeOp - The Operations Summit
WeOp - The Operations SummitWeOp - The Operations Summit
WeOp - The Operations SummitRoberto Gaiser
 
AWS RDS Benchmark - Instance comparison
AWS RDS Benchmark - Instance comparisonAWS RDS Benchmark - Instance comparison
AWS RDS Benchmark - Instance comparisonRoberto Gaiser
 
Amazon Web Services - Ignite SP
Amazon Web Services - Ignite SPAmazon Web Services - Ignite SP
Amazon Web Services - Ignite SPRoberto Gaiser
 

Plus de Roberto Gaiser (7)

Inter Dev Ops Conf 2016 - IaaS behind the scenes
Inter Dev Ops Conf 2016 - IaaS behind the scenesInter Dev Ops Conf 2016 - IaaS behind the scenes
Inter Dev Ops Conf 2016 - IaaS behind the scenes
 
WeOp - The Operations Summit
WeOp - The Operations SummitWeOp - The Operations Summit
WeOp - The Operations Summit
 
AWS RDS Benchmark - Instance comparison
AWS RDS Benchmark - Instance comparisonAWS RDS Benchmark - Instance comparison
AWS RDS Benchmark - Instance comparison
 
Chef in a nutshell
Chef in a nutshellChef in a nutshell
Chef in a nutshell
 
Amazon Web Services - Ignite SP
Amazon Web Services - Ignite SPAmazon Web Services - Ignite SP
Amazon Web Services - Ignite SP
 
Dev vs. Ops
Dev vs. OpsDev vs. Ops
Dev vs. Ops
 
Itil for failers
Itil for failersItil for failers
Itil for failers
 

R7 no AWS - Qcon SP 2011