NOTAS DE ESTUDO
AWS - S3
Casos de uso do Amazon S3
- Backup e armazenamento.
- Recuperação de desastres.
- Arquivamento.
- Armazenamento em nuvem híbrida.
- Hospedagem de aplicações.
- Hospedagem de mídia.
- Data lakes e análises de Big Data.
- Distribuição de software.
- Sites estáticos.
Amazon S3 - Buckets
- O Amazon S3 permite armazenar objetos, ou arquivos, em buckets.
- Os nomes dos buckets devem ser globalmente únicos entre todas as Regiões e contas.
- Buckets são definidos no nível da Região.
- O S3 parece um serviço global, mas cada bucket é criado em uma Região.
- Convenções de nome:
- Sem letras maiúsculas ou underscores.
- Entre 3 e 63 caracteres.
- Não pode ser um endereço IP.
- Deve começar com letra minúscula ou número.
- Não pode começar com o prefixo xn--.
- Não pode usar o sufixo -s3alias.
Amazon S3 - Objetos
- Objetos, ou arquivos, têm uma chave.
- A chave é o caminho completo:
- s3://my-bucket/my_file.txt
- s3://my-bucket/my_folder1/another_folder/my_file.txt
- A chave é composta por prefixo + nome do objeto.
- s3://my-bucket/my_folder1/another_folder/my_file.txt
- Não existe o conceito de diretórios dentro de buckets, embora a interface sugira isso.
- São apenas chaves com nomes longos que contêm barras, "/".
Amazon S3 - Objetos, continuação
- Os valores dos objetos são o conteúdo do corpo:
- Tamanho máximo do objeto: 5 TB, ou 5000 GB.
- Para enviar mais de 5 GB, é necessário usar multipart upload.
- Metadados: lista de pares de chave-valor de texto, definidos pelo sistema ou pelo usuário.
- Tags: até dez pares de chave-valor Unicode, úteis para segurança e ciclo de vida.
- Version ID, se o versionamento estiver habilitado.
Amazon S3 - Segurança
- Baseada no usuário:
- Políticas IAM: definem quais chamadas de API são permitidas para um usuário IAM.
- Baseada no recurso:
- Políticas de bucket: regras para todo o bucket no console S3, inclusive acesso entre contas.
- Lista de controle de acesso de objetos, ACL: controle mais detalhado, que pode ser desabilitado.
- Lista de controle de acesso de bucket, ACL: menos comum e também pode ser desabilitada.
- Observação: um principal IAM pode acessar um objeto S3 quando:
- A permissão IAM do usuário permite OU a política do recurso permite.
- E não há uma negação explícita, DENY.
- Criptografia: use chaves de criptografia para proteger os objetos no Amazon S3.
Políticas de bucket S3
- Políticas baseadas em JSON:
- Resources: buckets e objetos.
- Effect: Allow ou Deny.
- Actions: conjunto de APIs a permitir ou negar.
- Principal: conta ou usuário ao qual a política se aplica.
- Use políticas de bucket para:
- Conceder acesso público ao bucket.
- Exigir a criptografia de objetos no upload.
- Conceder acesso a outra conta, Cross Account.
- Configurações de bloqueio de acesso público:
- Bloquear todo o acesso público.
- Bloquear acesso público a buckets e objetos concedido por novas ACLs.
- Bloquear acesso público a buckets e objetos concedido por qualquer ACL.
- Bloquear acesso público a buckets e objetos concedido por novas políticas públicas de bucket ou ponto de acesso.
- Bloquear acesso público e entre contas a buckets e objetos por qualquer política pública de bucket ou ponto de acesso.
- Essas configurações foram criadas para evitar vazamentos de dados das empresas.
- Se o bucket nunca deve ser público, mantenha-as habilitadas.
- Podem ser definidas no nível da conta.
Amazon S3 - Hospedagem de sites estáticos
- O S3 pode hospedar sites estáticos acessíveis pela internet.
- A URL do site depende da Região.
- Se houver erro 403 Forbidden, confira se a política do bucket permite leituras públicas.
Amazon S3 - Versionamento
- É possível versionar os arquivos no Amazon S3.
- O recurso é habilitado no nível do bucket.
- Sobrescrever a mesma chave altera a versão: 1, 2, 3...
- Versionar buckets é uma boa prática:
- Protege contra exclusões acidentais, permitindo restaurar uma versão.
- Facilita voltar a uma versão anterior.
- Observações:
- Arquivos existentes antes da habilitação do versionamento têm versão "null".
- Suspender o versionamento não exclui as versões anteriores.
Amazon S3 - Replicação, CRR e SRR
- É necessário habilitar o versionamento nos buckets de origem e destino.
- Cross-Region Replication (CRR): replicação entre Regiões.
- Same-Region Replication (SRR): replicação na mesma Região.
- Os buckets podem estar em contas AWS diferentes.
- A cópia é assíncrona.
- É necessário conceder as permissões IAM adequadas ao S3.
- Casos de uso:
- CRR: conformidade, acesso com menor latência e replicação entre contas.
- SRR: agregação de logs e replicação contínua entre contas de produção e teste.
Classes de armazenamento S3
- Amazon S3 Standard - Uso geral.
- Amazon S3 Standard - Infrequent Access (IA).
- Amazon S3 One Zone - Infrequent Access.
- Amazon S3 Glacier Instant Retrieval.
- Amazon S3 Glacier Flexible Retrieval.
- Amazon S3 Glacier Deep Archive.
- Amazon S3 Intelligent-Tiering.
- É possível mudar de classe manualmente ou pelas configurações de ciclo de vida do S3.
Durabilidade e disponibilidade do S3
- Durabilidade:
- Alta durabilidade de objetos entre várias AZs: 99.99999%, descrita como onze noves.
- Ao armazenar 10.000.000 de objetos no Amazon S3, a perda média esperada é de um objeto a cada 10.000 anos.
- A mesma durabilidade vale para todas as classes de armazenamento.
- Disponibilidade:
- Mede o quanto um serviço está prontamente acessível.
- Varia conforme a classe de armazenamento.
- Exemplo: S3 Standard tem disponibilidade de 99.99%, equivalente a 53 minutos de indisponibilidade por ano.
S3 Standard - Uso geral
- Disponibilidade de 99.99%.
- Usado para dados acessados com frequência.
- Baixa latência e alta taxa de transferência.
- Tolera falhas simultâneas de duas instalações.
- Casos de uso: análises de Big Data, aplicações móveis e jogos, distribuição de conteúdo.
S3 Standard - Acesso infrequente
- Para dados menos acessados, mas que exigem acesso rápido quando necessário.
- Custo menor que S3 Standard.
- Amazon S3 Standard - Infrequent Access, S3 Standard-IA:
- Disponibilidade de 99.9%.
- Casos de uso: recuperação de desastres e backups.
- Amazon S3 One Zone - Infrequent Access, S3 One Zone-IA:
- Alta durabilidade de 99.999999999% em uma única AZ; os dados são perdidos se a AZ for destruída.
- Disponibilidade de 99.5%.
- Casos de uso: cópias secundárias de backups de dados locais ou dados que podem ser recriados.
S3 Standard - Classes Glacier
- Armazenamento de objetos de baixo custo para arquivamento e backup.
- Preço composto pelo armazenamento e pelo custo de recuperação dos objetos.
- Amazon S3 Glacier Instant Retrieval:
- Recuperação em milissegundos, adequada para dados acessados uma vez por trimestre.
- Duração mínima de armazenamento de 90 dias.
- Amazon S3 Glacier Flexible Retrieval, anteriormente Amazon S3 Glacier:
- Expedited: de um a cinco minutos. Standard: de três a cinco horas. Bulk: de cinco a 12 horas, gratuitamente.
- Amazon S3 Glacier Deep Archive, para armazenamento de longo prazo:
- Standard: 12 horas. Bulk: 48 horas.
- Duração mínima de armazenamento de 180 dias.
S3 Standard - Intelligent-Tiering
- Pequena tarifa mensal de monitoramento e movimentação automática entre camadas.
- Move objetos automaticamente entre camadas de acesso conforme o uso.
- Não há cobranças de recuperação no S3 Intelligent-Tiering.
- Camada Frequent Access, automática: padrão.
- Camada Infrequent Access, automática: objetos sem acesso há 30 dias.
- Camada Archive Instant Access, automática: objetos sem acesso há 90 dias.
- Camada Archive Access, opcional: configurável de 90 a mais de 700 dias.
- Camada Deep Archive Access, opcional: configurável de 180 a mais de 700 dias.
Criptografia S3
- Criptografia no servidor, padrão: o servidor criptografa o arquivo depois de recebê-lo; sempre habilitada.
- Criptografia no cliente: o arquivo é criptografado antes do upload.
IAM Access Analyzer para S3
- Garante que apenas as pessoas previstas tenham acesso aos buckets S3.
- Exemplos: bucket publicamente acessível ou compartilhado com outra conta AWS.
- Avalia políticas de bucket, ACLs e políticas de pontos de acesso do S3.
- Baseado no IAM Access Analyzer.
Modelo de responsabilidade compartilhada do S3
AWS
- Infraestrutura: segurança global, durabilidade, disponibilidade e tolerância à perda simultânea de dados em duas instalações.
- Configuração e análise de vulnerabilidades.
- Validação de conformidade.
Usuário
- Versionamento S3.
- Políticas de bucket S3.
- Configuração de replicação S3.
- Logs e monitoramento.
- Classes de armazenamento S3.
- Criptografia de dados em repouso e em trânsito.
AWS Snowball
- Dispositivos portáteis de alta segurança para coletar e processar dados na borda e migrá-los para dentro ou para fora da AWS.
- Ajudam a migrar até petabytes de dados.
O que é computação de borda
- Processar dados no local onde estão sendo criados:
- Um caminhão na estrada, um navio no mar ou uma estação de mineração subterrânea.
- Esses locais podem ter internet limitada e pouco acesso a capacidade de computação.
- Um dispositivo Snowball Edge pode executar computação de borda:
- Versões Snowball Edge Compute Optimized, voltada a esse uso, e Storage Optimized.
- Executa instâncias EC2 ou funções Lambda na borda.
- Casos de uso: pré-processamento de dados, machine learning e transcodificação de mídia.
Preços do Snowball Edge
- Você paga pelo uso do dispositivo e pela transferência de dados para fora da AWS.
- A transferência de entrada para o Amazon S3 custa $0.00 por GB.
- Sob demanda:
- Inclui uma tarifa de serviço única por tarefa, que cobre:
- Dez dias de uso do Snowball Edge Storage Optimized de 80 TB.
- Quinze dias de uso do Snowball Edge Storage Optimized de 210 TB.
- Os dias de transporte não contam nesses dez ou quinze dias.
- Dias adicionais são cobrados por dia.
- Inclui uma tarifa de serviço única por tarefa, que cobre:
- Compromisso antecipado:
- Pagamento antecipado por uso mensal, de um ano ou de três anos, para computação de borda.
- Descontos de até 62%.
Nuvem híbrida para armazenamento
- A AWS incentiva a nuvem híbrida:
- Parte da infraestrutura permanece no ambiente local.
- Parte da infraestrutura fica na nuvem.
- Motivos possíveis:
- Migrações longas para a nuvem.
- Requisitos de segurança.
- Requisitos de conformidade.
- Estratégia de TI.
- O S3 é uma tecnologia proprietária de armazenamento, diferente de EFS/NFS. Como expor seus dados no ambiente local?
- AWS Storage Gateway:
- Ponte entre os dados locais e os dados na nuvem S3.
- Serviço de armazenamento híbrido que permite ao ambiente local usar a nuvem AWS de forma integrada.
- Casos de uso: recuperação de desastres, backup e restauração, armazenamento em camadas.
- Tipos de Storage Gateway:
- File Gateway.
- Volume Gateway.
- Tape Gateway.