Eduardo Horai
Implementando o PostgreSQL de maneira escalável e com alta
disponibilidade na nuvem da AWS
AWS Solutions Arc...
Agenda
•  Introdução Amazon Web Services
•  Serviços base AWS
•  Arquitetura Postgres
•  Questões
O que é computação
nas nuvens?
On demand Pague pelo uso
Self Service Automatizado
On-demand
Rigid On-Premise Resources
Waste
Customer
Dissatisfaction
Actual demand
Predicted Demand
Capacity
Time
Elastic C...
Serviços
Compute	
   Storage	
  
AWS	
  Global	
  Infrastructure	
  
Database	
  
App	
  Services	
  
Deployment	
  &	
  A...
Infraestrutura Global
Compute	
   Storage	
  
AWS	
  Global	
  Infrastructure	
  
Database	
  
App	
  Services	
  
Deploym...
Infraestrutura Global
Compute	
   Storage	
  
AWS	
  Global	
  Infrastructure	
  
Database	
  
App	
  Services	
  
Deploym...
Computação
Várias Opções
A partir de $0,02/hora
Elastic Compute Cloud (EC2)
Servidores com recursos computacionais
15 tipo...
Diversos tipos de instâncias EC2
•  Um tipo de instância
para cada tarefa
•  Requisitos de
memória & CPU
–  Infra define s...
Storage: S3 & Glacier
•  S3 e Glacier:
–  Seguros
–  Flexíveis
–  Baixo custo
–  Escalável: +1.3 trilhão de objetos
–  Dur...
Amazon CloudWatch
•  Overview
–  Monitora seus recursos e aplicações
•  AWS Resources: EC2, RDS, EBS, ELB, SQS, SNS, Dynam...
Arquitetura de PostgreSQL
Vantagens de utilizar Postgres no EC2
•  Criar novos bancos a partir de imagem (AMI)
•  Mudar o tipo da instância e cresce...
Outros serviços:
•  EBS – storage de disco
–  pode provisionar o IOPS necessário
–  criar snapshots facilmente
•  S3
–  du...
Postgres mínimo
•  EC2: postgres instalado
•  EBS: dados do banco (data, WAL,
etc)
•  S3: backups frequentes
Postgres mínimo com alta disponibilidade
•  2x EC2: postgres instalado
•  Multi-AZ: Master host e secundário
em localidade...
Postgres médio
•  EC2: postgres instalado em
instâncias maiores
•  EBS com P-IOPS e RAID0: dados
do banco (data, WAL, etc)...
Postgres large
•  EC2: postgres instalado em
instâncias clusters
•  EBS com P-IOPS e RAID0: dados
do banco (data, WAL, etc...
Postgres large com alta disponibilidade
•  EC2: postgres instalado em instâncias
clusters
•  Multi-AZ: Master host e secun...
Amazon	
  EC2	
  com	
  
Postgres	
  
Melhora	
  
disponibilidade	
  
Melhora	
  
Throughput	
  
Menor	
  	
  
Latência	
 ...
Links
•  Eduardo Horai | ehorai@amazon.com
•  Whitepaper Postgres na AWS:
http://media.amazonwebservices.com/AWS_RDBMS_Pos...
?
Obrigado!
PGDay Campinas 2013 - Implementando o PostgreSQL de maneira escalável e com alta disponibilidade na nuvem da AWS
Próximos SlideShares
Carregando em…5
×

PGDay Campinas 2013 - Implementando o PostgreSQL de maneira escalável e com alta disponibilidade na nuvem da AWS

585 visualizações

Publicada em

“Implementando o PostgreSQL de maneira escalável e com alta disponibilidade na nuvem da AWS”
Amazon Web Services (AWS) é uma plataforma de cloud computing flexível, elástica e baixo custo. Utilizar PostgreSQL no Amazon Elastic Compute Cloud (EC2) é ideal para quem está acostumado a operar o banco e precisa da flexibilidade que a nuvem traz. Nesta palestra vamos dar dicas e boas práticas de arquitetura para implementar o PostgreSQL na nuvem de uma maneira escalável, pensando também em durabilidade, persistência, alta disponibilidade e tolerança a falhas.
Eduardo HoraiPalestrante: Eduardo Horai é um dos arquitetos de soluções da Amazon Web Services (AWS) com foco na América Latina. Entre suas funções está a de ajudar clientes e parceiros a desenvolver arquiteturas escaláveis, com alta disponibilidade e tolerante a falhas sobre a nuvem da AWS. Ele é graduado em Ciências da Computação na Unicamp e pós em Inovação e Empreendedorismo na Vlerick Management School, na Bélgica.

--
Palestra apresentada no PGDay Campinas 2013

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
585
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

PGDay Campinas 2013 - Implementando o PostgreSQL de maneira escalável e com alta disponibilidade na nuvem da AWS

  1. 1. Eduardo Horai Implementando o PostgreSQL de maneira escalável e com alta disponibilidade na nuvem da AWS AWS Solutions Architect ehorai@amazon.com
  2. 2. Agenda •  Introdução Amazon Web Services •  Serviços base AWS •  Arquitetura Postgres •  Questões
  3. 3. O que é computação nas nuvens?
  4. 4. On demand Pague pelo uso Self Service Automatizado
  5. 5. On-demand Rigid On-Premise Resources Waste Customer Dissatisfaction Actual demand Predicted Demand Capacity Time Elastic Cloud Resources Actual demand Resources scaled to demand Capacity Time VS.  
  6. 6. Serviços Compute   Storage   AWS  Global  Infrastructure   Database   App  Services   Deployment  &  Administra=on   Networking  
  7. 7. Infraestrutura Global Compute   Storage   AWS  Global  Infrastructure   Database   App  Services   Deployment  &  Administra=on   Networking   Regiões Um conjunto isolado de data centers em uma determinada geografia
  8. 8. Infraestrutura Global Compute   Storage   AWS  Global  Infrastructure   Database   App  Services   Deployment  &  Administra=on   Networking   Zonas de Disponibilidade Projetadas para serem independentes. Separadas fisicamente, porém com conectividade rápida dentro da mesma região
  9. 9. Computação Várias Opções A partir de $0,02/hora Elastic Compute Cloud (EC2) Servidores com recursos computacionais 15 tipos de instâncias(servidores) disponíveis, de micro a cluster compute Configurações de CPU, memória disco local Recurso   Detalhes   Flexível   Linux  e  Windows   Escalável   Várias  configurações  de  servidor   Imagens   Modificações  podem  ser  salvas   como  imagens  (AMIs)  e  novas   instancias  criadas  a  par=r  destas   Controle  total   Controle  de  root  e  administrador   Segura   Controle  total  do  Firewall  via   Security  Groups   Barata   On-­‐demand,  Reservada  e  Spot  
  10. 10. Diversos tipos de instâncias EC2 •  Um tipo de instância para cada tarefa •  Requisitos de memória & CPU –  Infra define sua app –  App define sua infra •  Utilize instâncias maiores apenas quando precisa
  11. 11. Storage: S3 & Glacier •  S3 e Glacier: –  Seguros –  Flexíveis –  Baixo custo –  Escalável: +1.3 trilhão de objetos –  Durabilidade: 99.999999999% (11 “9”s) Amazon   Glacier  
  12. 12. Amazon CloudWatch •  Overview –  Monitora seus recursos e aplicações •  AWS Resources: EC2, RDS, EBS, ELB, SQS, SNS, DynamoDB, EMR, Auto Scaling, … •  Pode publicar métricas próprias (Put API call) –  Visualização, alarmes, notificações –  Fácil de utilizar, permite “auto-scale” da sua aplicação •  Automatação sofisticada –  Utilize CloudWatch para fazer Auto Scaling dinâmico das suas instâncas EC2
  13. 13. Arquitetura de PostgreSQL
  14. 14. Vantagens de utilizar Postgres no EC2 •  Criar novos bancos a partir de imagem (AMI) •  Mudar o tipo da instância e crescer facilmente (sem perder os dados) •  Desligar temporariamente sua instância (e parar de pagar) •  Replicação em zonas de disponibilidade diferentes •  Aumentar storage facilmente
  15. 15. Outros serviços: •  EBS – storage de disco –  pode provisionar o IOPS necessário –  criar snapshots facilmente •  S3 –  durabilidade para backups •  CloudWatch –  monitoramento do banco
  16. 16. Postgres mínimo •  EC2: postgres instalado •  EBS: dados do banco (data, WAL, etc) •  S3: backups frequentes
  17. 17. Postgres mínimo com alta disponibilidade •  2x EC2: postgres instalado •  Multi-AZ: Master host e secundário em localidades separadas •  Replicação: WAL Streaming •  EBS: dados do banco (data, WAL, etc) •  S3: backups frequentes a partir do secundário •  Hot-standby ou warm-standby
  18. 18. Postgres médio •  EC2: postgres instalado em instâncias maiores •  EBS com P-IOPS e RAID0: dados do banco (data, WAL, etc) •  S3: backups frequentes
  19. 19. Postgres large •  EC2: postgres instalado em instâncias clusters •  EBS com P-IOPS e RAID0: dados do banco (data, WAL, etc) •  S3: backups frequentes
  20. 20. Postgres large com alta disponibilidade •  EC2: postgres instalado em instâncias clusters •  Multi-AZ: Master host e secundário(s) em localidades separadas •  Replicação: WAL Streaming •  EBS com P-IOPS e RAID0: dados do banco (data, WAL, etc) •  S3: backups frequentes a partir do secundário •  Hot-standby ou warm-standby
  21. 21. Amazon  EC2  com   Postgres   Melhora   disponibilidade   Melhora   Throughput   Menor     Latência   Push-­‐BuTon  Scaling   Mul=-­‐AZ   Read  Replicas   Provisioned  IOPS   Read ReplicasPush-Button Scaling Provisioned IOPS Region Multi-AZ Availability Zone Availability Zone Postgres no EC2: alta disponibilidade e performance
  22. 22. Links •  Eduardo Horai | ehorai@amazon.com •  Whitepaper Postgres na AWS: http://media.amazonwebservices.com/AWS_RDBMS_PostgreSQL.pdf •  Wal no S3: https://github.com/wal-e/wal-e •  aws.amazon.com/ec2 aws.amazon.com/s3
  23. 23. ?
  24. 24. Obrigado!

×