Apresentação da Amazon Web Services (AWS)
O que é a AWS?
Amazon Web Services (AWS) é a plataforma de cloud computing mais completa e mais utilizada do mundo. Lançada em 2006 pela Amazon, oferece mais de 200 serviços abrangendo computação, armazenamento, bancos de dados, análise, machine learning e muito mais.
┌─────────────────────────────────────────────────────────────┐
│ AWS │
│ │
│ "Cloud computing, simplificado e em grande escala" │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Compute │ │ Storage │ │Database │ │ Network │ │
│ │ EC2 │ │ S3 │ │ RDS │ │ VPC │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │Serverless│ │Security │ │ AI/ML │ │ DevOps │ │
│ │ Lambda │ │ IAM │ │SageMaker│ │CodePipe │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │
│ + 200 outros serviços... │
└─────────────────────────────────────────────────────────────┘
História da AWS
Timeline AWS
────────────────────────────────────────────────────────────────
2002 │ Amazon começa a vender sua capacidade excedente
│
2004 │ Lançamento do SQS (Simple Queue Service)
│
2006 │ 🚀 Lançamento oficial da AWS com S3 e EC2
│
2007 │ SimpleDB, SQS aprimorado
│
2009 │ VPC, RDS, CloudFront
│
2012 │ DynamoDB, Redshift
│
2014 │ Lambda (serverless revolucionário)
│
2016 │ Serviços de AI/ML
│
2020+ │ 200+ serviços, líder mundial
────────────────────────────────────────────────────────────────
Infraestrutura Global da AWS
Regiões e Zonas de Disponibilidade
A AWS organiza sua infraestrutura em Regiões e Zonas de Disponibilidade (AZ):
┌─────────────────────────────────────────────────────────────────┐
│ REGIÃO AWS (ex: us-east-1) │
│ │
│ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │
│ │ AZ-1a │ │ AZ-1b │ │ AZ-1c │ │
│ │ │ │ │ │ │ │
│ │ ┌───┐ ┌───┐ │ │ ┌───┐ ┌───┐ │ │ ┌───┐ ┌───┐ │ │
│ │ │DC1│ │DC2│ │ │ │DC3│ │DC4│ │ │ │DC5│ │DC6│ │ │
│ │ └───┘ └───┘ │ │ └───┘ └───┘ │ │ └───┘ └───┘ │ │
│ │ │ │ │ │ │ │
│ └───────┬───────┘ └───────┬───────┘ └───────┬───────┘ │
│ │ │ │ │
│ └──────────────────┼──────────────────┘ │
│ │ │
│ Rede de alta velocidade, baixa latência │
│ │
│ • Cada AZ = 1 ou mais datacenters │
│ • AZs isoladas fisicamente (terremoto, inundação) │
│ • Conectadas entre si em altíssima velocidade │
└─────────────────────────────────────────────────────────────────┘
Principais Regiões AWS (2024)
| Código da Região | Nome | Localização |
|---|---|---|
| us-east-1 | N. Virginia | Leste dos EUA |
| us-west-2 | Oregon | Oeste dos EUA |
| eu-west-1 | Irlanda | Europa |
| eu-central-1 | Frankfurt | Europa Central |
| ca-central-1 | Canadá | Montreal 🇨🇦 |
| ap-northeast-1 | Tóquio | Japão |
| ap-southeast-1 | Cingapura | Sudeste Asiático |
Para este curso, usaremos frequentemente ca-central-1 (Montreal) pois é geograficamente próxima e atende aos requisitos de soberania de dados canadenses.
Por que várias AZs?
Cenário: Falha em uma AZ
ANTES (1 só AZ) DEPOIS (Multi-AZ)
┌─────────────────┐ ┌─────────────────┐
│ AZ-1a │ │ AZ-1a │
│ [Servidor] │ ──────► │ [Servidor] ✓ │
│ ❌ │ └────────┬────────┘
│ FALHA! │ │
└─────────────────┘ ┌────────┴────────┐
│ AZ-1b │
Aplicação FORA DO AR │ [Servidor] ✓ │
└─────────────────┘
Aplicação NO AR!
Principais Serviços AWS
Categorias de Serviços
┌─────────────────────────────────────────────────────────────┐
│ SERVIÇOS AWS │
├─────────────────────────────────────────────────────────────┤
│ │
│ COMPUTE (Cálculo) STORAGE (Armazenamento) │
│ ├── EC2 ├── S3 │
│ ├── Lambda ├── EBS │
│ ├── ECS/EKS ├── EFS │
│ └── Lightsail └── Glacier │
│ │
│ DATABASE NETWORK │
│ ├── RDS ├── VPC │
│ ├── DynamoDB ├── Route 53 │
│ ├── Aurora ├── CloudFront │
│ └── ElastiCache └── ELB │
│ │
│ SECURITY MANAGEMENT │
│ ├── IAM ├── CloudWatch │
│ ├── KMS ├── CloudFormation │
│ ├── WAF ├── CloudTrail │
│ └── Shield └── Systems Manager │
│ │
└─────────────────────────────────────────────────────────────┘
Serviços Abordados neste Curso
| Serviço | Descrição | Semana |
|---|---|---|
| EC2 | Máquinas virtuais | 2-4 |
| EBS | Armazenamento em bloco | 4 |
| VPC | Rede virtual | 5-7 |
| ELB | Load balancer | 8 |
| Auto Scaling | Escalonamento automático | 9 |
| Route 53 | DNS | 10 |
| Lambda | Serverless | 11-12 |
| CloudWatch | Monitoramento | 13 |
| CloudFormation | IaC | 15 |
Modelo de Responsabilidade Compartilhada
A AWS utiliza um modelo de responsabilidade compartilhada para segurança:
┌─────────────────────────────────────────────────────────────┐
│ RESPONSABILIDADE DO CLIENTE │
│ "Segurança NO cloud" │
├─────────────────────────────────────────────────────────────┤
│ • Dados do cliente │
│ • Plataforma, aplicações, gestão de identidade │
│ • Configuração de SO, rede, firewall │
│ • Criptografia do lado do cliente │
│ • Proteção do tráfego de rede │
├─────────────────────────────────────────────────────────────┤
│ │
├─────────────────────────────────────────────────────────────┤
│ RESPONSABILIDADE DA AWS │
│ "Segurança DO cloud" │
├─────────────────────────────────────────────────────────────┤
│ • Infraestrutura global (Regiões, AZ, Edge) │
│ • Hardware / infraestrutura física │
│ • Rede física │
│ • Hypervisor │
│ • Armazenamento físico │
└─────────────────────────────────────────────────────────────┘
VOCÊ é responsável pela configuração dos seus Security Groups, suas senhas e seus dados. A AWS não faz isso por você!
Acesso à AWS
3 Métodos de Acesso
┌─────────────────────────────────────────────────────────────┐
│ ACESSO À AWS │
├─────────────────────────────────────────────────────────────┤
│ │
│ 1. CONSOLE WEB │
│ ┌─────────────────────────────────────┐ │
│ │ 🌐 https://console.aws.amazon.com │ │
│ │ Interface gráfica │ │
│ │ Ideal para descoberta │ │
│ └─────────────────────────────────────┘ │
│ │
│ 2. AWS CLI (Command Line Interface) │
│ ┌─────────────────────────────────────┐ │
│ │ $ aws ec2 describe-instances │ │
│ │ Automação, scripts │ │
│ │ ✅ O que usaremos! │ │
│ └─────────────────────────────────────┘ │
│ │
│ 3. SDK (Software Development Kit) │
│ ┌─────────────────────────────────────┐ │
│ │ import boto3 # Python │ │
│ │ Integração em aplicações │ │
│ └─────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
Por que AWS CLI?
Neste curso, usaremos principalmente a AWS CLI porque:
- Reprodutível - Os comandos podem ser documentados e repetidos
- Automatizável - Scripts e Infrastructure as Code
- Universal - Funciona com o LocalStack (nosso emulador)
- Profissional - Competência valorizada no mercado
Precificação AWS
Modelo "Pay-as-you-go"
┌─────────────────────────────────────────────────────────────┐
│ PRECIFICAÇÃO AWS │
├─────────────────────────────────────────────────────────────┤
│ │
│ Você paga por: │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ COMPUTE │ │ STORAGE │ │ TRANSFER │ │
│ │ Por hora │ │ Por GB │ │ Por GB │ │
│ │ ou segundo │ │ por mês │ │ de saída │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
│ Exemplo EC2 t3.micro: │
│ • $0.0104/hora (us-east-1) │
│ • ~$7.50/mês se ligado 24/7 │
│ │
│ 💡 Dica: Desligue suas instâncias não utilizadas! │
└─────────────────────────────────────────────────────────────┘
Free Tier AWS
A AWS oferece um nível gratuito para novas contas:
| Serviço | Gratuito por 12 meses |
|---|---|
| EC2 | 750 horas/mês (t2.micro) |
| S3 | 5 GB de armazenamento |
| RDS | 750 horas/mês (db.t2.micro) |
| Lambda | 1 milhão de requisições/mês |
Não usaremos contas AWS reais. O LocalStack nos permite praticar gratuitamente e sem risco de cobrança.
Serviços de Computação AWS
Aqui estão os principais serviços de computação que estudaremos:
EC2 (Elastic Compute Cloud)
┌─────────────────────────────────────────────────────────────┐
│ EC2 │
├─────────────────────────────────────────────────────────────┤
│ │
│ Máquina virtual na nuvem │
│ │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Instância EC2 │ │
│ │ ┌─────────────────────────────────────────┐ │ │
│ │ │ SO: Linux / Windows │ │ │
│ │ │ CPU: 1 a 448 vCPU │ │ │
│ │ │ RAM: 0.5 a 24 TB │ │ │
│ │ │ Armazenamento: EBS ou Instance Store │ │ │
│ │ └─────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ Casos de uso: │
│ • Servidores web │
│ • Aplicações corporativas │
│ • Bancos de dados │
│ • Ambientes de desenvolvimento │
└─────────────────────────────────────────────────────────────┘
Lambda (Serverless)
┌─────────────────────────────────────────────────────────────┐
│ LAMBDA │
├─────────────────────────────────────────────────────────────┤
│ │
│ Execução de código sem gerenciar servidores │
│ │
│ Evento ──► ┌────────────┐ ──► Resultado │
│ │ Função │ │
│ │ Lambda │ │
│ └────────────┘ │
│ │
│ Características: │
│ • Nenhum servidor para gerenciar │
│ • Escalonamento automático │
│ • Pagamento por execução (milissegundos) │
│ • Linguagens: Python, Node.js, Java, Go, etc. │
│ │
│ Casos de uso: │
│ • APIs │
│ • Processamento de eventos │
│ • Automação │
└─────────────────────────────────────────────────────────────┘
Resumo
| Conceito | Descrição |
|---|---|
| AWS | Plataforma cloud #1 mundial, 200+ serviços |
| Região | Zona geográfica com várias AZs |
| AZ | Datacenter(s) isolado(s) em uma região |
| EC2 | Máquinas virtuais em cloud |
| Lambda | Funções serverless |
| Console | Interface web para gerenciar a AWS |
| CLI | Linha de comando para automatizar |
| Responsabilidade compartilhada | AWS gerencia o cloud, você gerencia dentro do cloud |
Quiz de Validação
- Em que ano a AWS foi lançada oficialmente?
- O que é uma Zona de Disponibilidade?
- Qual é a região AWS no Canadá?
- Cite 3 métodos para acessar a AWS.
- O que é o modelo de responsabilidade compartilhada?
- Qual a diferença entre EC2 e Lambda?
Próxima seção: Instalação AWS CLI