NOTAS DE ESTUDO
AWS - Infraestrutura global
Por que criar uma aplicação global
- Uma aplicação global é implantada em várias regiões geográficas.
- Na AWS, isso pode envolver Regiões e/ou Edge Locations.
- Menor latência:
- Latência é o tempo necessário para um pacote de rede chegar a um servidor.
- Um pacote leva tempo para ir da Ásia aos Estados Unidos.
- Implantar as aplicações mais perto dos usuários reduz a latência e melhora a experiência.
- Recuperação de desastres (DR):
- Se uma Região AWS ficar indisponível por terremotos, tempestades, falta de energia ou questões políticas...
- É possível fazer failover para outra Região e manter a aplicação funcionando.
- Um plano de DR é importante para aumentar a disponibilidade das aplicações.
- Proteção contra ataques: uma infraestrutura global distribuída é mais difícil de atacar.
Infraestrutura global da AWS
- Regiões: usadas para implantar aplicações e infraestrutura.
- Zonas de Disponibilidade: formadas por vários data centers.
- Edge Locations (pontos de presença): entregam conteúdo o mais perto possível dos usuários.
- https://infrastructure.aws/
Aplicações globais na AWS
- DNS global: Route 53.
- Útil para direcionar usuários à implantação mais próxima e com menor latência.
- Útil para estratégias de recuperação de desastres.
- Rede de distribuição de conteúdo global (CDN): CloudFront.
- Replica parte da aplicação nas Edge Locations da AWS para reduzir a latência.
- Mantém em cache solicitações comuns, melhorando a experiência e reduzindo a latência.
- S3 Transfer Acceleration:
- Acelera uploads e downloads globais no Amazon S3.
- AWS Global Accelerator:
- Melhora a disponibilidade e o desempenho de aplicações globais usando a rede global da AWS.
Amazon Route 53
- O Route 53 é um DNS gerenciado (Domain Name System).
- DNS é um conjunto de regras e registros que ajuda os clientes a encontrar um servidor por meio de URLs.
- Os registros mais comuns na AWS são:
- www.google.com -> 12.34.56.78 == registro A (IPv4).
- www.google.com -> 2001:0db8:85a3:0000:0000:8a2e:0370:7334 == registro AAAA (IPv6).
- search.google.com -> www.google.com -> CNAME: nome de host para nome de host.
- example.com -> recurso AWS == Alias, por exemplo ELB, CloudFront, S3 ou RDS.
AWS CloudFront
- Rede de distribuição de conteúdo (CDN).
- Melhora o desempenho de leitura, mantendo o conteúdo em cache na borda.
- Melhora a experiência dos usuários.
- 216 pontos de presença globais (Edge Locations).
- Proteção contra DDoS por sua distribuição mundial, com integração ao Shield e ao AWS Web Application Firewall.
CloudFront - Origens
- Buckets S3:
- Distribuem arquivos e os mantêm em cache na borda.
- Segurança aprimorada com CloudFront Origin Access Control (OAC).
- O OAC substitui o Origin Access Identity (OAI).
- O CloudFront pode ser usado como ponto de entrada para enviar arquivos ao S3.
- Origem personalizada (HTTP):
- Application Load Balancer.
- Instância EC2.
- Site S3: primeiro é necessário habilitar o bucket como site estático do S3.
- Qualquer backend HTTP desejado.
CloudFront e replicação entre Regiões do S3
- CloudFront:
- Rede global de borda.
- Os arquivos ficam em cache por um TTL, que pode ser de um dia.
- Útil para conteúdo estático que precisa estar disponível em qualquer lugar.
- S3 Cross-Region Replication:
- Deve ser configurada para cada Região na qual se deseja replicação.
- Os arquivos são atualizados quase em tempo real.
- Somente leitura.
- Útil para conteúdo dinâmico que precisa estar disponível com baixa latência em algumas Regiões.
S3 Transfer Acceleration
- Aumenta a velocidade de transferência enviando o arquivo a uma Edge Location da AWS, que encaminha os dados ao bucket S3 na Região de destino.
AWS Global Accelerator
- Melhora a disponibilidade e o desempenho de aplicações globais usando a rede global da AWS.
- Usa a rede interna da AWS para otimizar a rota até a aplicação, com melhoria de 60%.
- Dois endereços IP Anycast são criados para a aplicação e seu tráfego.
AWS Global Accelerator e CloudFront
- Ambos usam a rede global da AWS e suas Edge Locations ao redor do mundo.
- Ambos se integram ao AWS Shield para proteção contra DDoS.
- CloudFront - rede de distribuição de conteúdo:
- Melhora o desempenho de conteúdo que pode ser armazenado em cache, como imagens e vídeos.
- O conteúdo é servido na borda.
- Global Accelerator:
- Não usa cache: atua como proxy de pacotes na borda para aplicações em uma ou mais Regiões AWS.
- Melhora o desempenho de uma grande variedade de aplicações TCP ou UDP.
- Útil em casos HTTP que exigem endereços IP estáticos.
- Útil em casos HTTP que exigem failover regional rápido e determinístico.
AWS Outposts
- Nuvem híbrida: empresas que mantêm infraestrutura local junto de uma infraestrutura de nuvem.
- Isso gera duas formas de lidar com sistemas de TI:
- Uma para a nuvem AWS, usando console, CLI e APIs da AWS.
- Outra para a infraestrutura local.
- AWS Outposts são racks de servidores que oferecem a mesma infraestrutura, serviços, APIs e ferramentas da AWS para criar aplicações locais como na nuvem.
- A AWS instala e gerencia os Outposts Racks na infraestrutura local, permitindo usar os serviços AWS nesse ambiente.
- Você é responsável pela segurança física do Outposts Rack.
- Benefícios:
- Acesso com baixa latência a sistemas locais.
- Processamento local de dados.
- Residência de dados.
- Migração mais simples do ambiente local para a nuvem.
- Serviço totalmente gerenciado.
- Alguns serviços compatíveis: EC2, EBS, S3, EKS, ECS, RDS e EMR.
AWS Wavelength
- Wavelength Zones são implantações de infraestrutura dentro dos data centers das operadoras de telecomunicações, na borda das redes 5G.
- Levam serviços AWS à borda das redes 5G.
- Exemplos: EC2, EBS e VPC.
- Aplicações de latência extremamente baixa por redes 5G.
- O tráfego não sai da rede da operadora de comunicação (CSP).
- Conexão segura e de alta largura de banda com a Região AWS principal.
- Sem cobranças adicionais ou contratos de serviço extras.
- Casos de uso: cidades inteligentes, diagnósticos assistidos por ML, veículos conectados, transmissões de vídeo interativas, AR/VR e jogos em tempo real.
AWS Local Zones
- Aproximam serviços de computação, armazenamento, banco de dados e outros serviços AWS selecionados dos usuários finais, para executar aplicações sensíveis à latência.
- Estendem a VPC para mais locais: uma extensão de uma Região AWS.
- Compatíveis com EC2, RDS, ECS, EBS, ElastiCache e Direct Connect.
- Exemplo:
- Região AWS: Norte da Virgínia (us-east-1).
- AWS Local Zones: Boston, Chicago, Dallas, Houston, Miami e outras.
Arquitetura de aplicações globais
- Uma Região, uma AZ:
- X Alta disponibilidade.
- X Latência global.
- V Dificuldade.
- Uma Região, várias AZs:
- V Alta disponibilidade.
- X Latência global.
- +- Dificuldade.
- Várias Regiões, ativo-passivo:
- V Latência global de leitura.
- X Latência global de escrita.
- +- Dificuldade.
- Várias Regiões, ativo-ativo:
- V Latência de leitura.
- V Latência de escrita.
- ++ Dificuldade.