Storage - ribeiry/AWS-Professional-Study GitHub Wiki

Instance Store

Uma instancia que fornece armazenamento temporário em nível de bloco para a instância. Esse armazenamento está localizado em discos que estão anexados fisicamente ao computador host. O Instance Store é ideal para o armazenamento temporário de informações que são alteradas frequentemente, como buffers, caches, dados de rascunho e outros conteúdos temporários ou para dados replicados em um conjunto de instâncias, como um grupo com balanceamento de carga de servidores Web.

  • Características chaves de um Instance Store :
    • Você não pode desanexar um volume de armazenamento de instância de uma instância store e anexá-lo a uma instância diferente;
    • você criar um AMI a partir de uma instância, os dados em seus volumes de armazenamento de instância não são preservados;
    • Você pode especificar volumes de armazenamento de instância apenas ao iniciá-la;
    • Quando você para, hiberna ou encerra uma instância, todos os blocos de armazenamento no armazenamento da instância são redefinidos. Se ela for for reiniciada (intencionalmente ou acidentalmente), os dados no armazenamento de instância persistirão;

Instance Store IOPS

Instance Size 100% Random Read IOPS Write IOPS
i3.large 100,125 35,000
i3.xlarge 206,250 70,000
i3.2xlarge 412,500 180,000
i3.4xlarge 825,000 360,000
i3.8xlarge 1,650,000 720,000
i3.16xlarge 3,300,000 1,400,000
i3.metal 3,300,000 1,400,000
i3en.large 42,500 32,500
i3en.xlarge 85,000 65,000
i3en.2xlarge 170,000 130,000
i3en.3xlarge 250,000 200,000
i3en.6xlarge 500,000 400,000
i3en.12xlarge 1,000,000 800,000
i3en.24xlarge 2,000,000 1,600,000
i3en.metal 2,000,000 1,600,000
im4gn.large 31,250 25,000
im4gn.xlarge 62,000 50,000
im4gn.2xlarge 125,000 100,000
im4gn.4xlarge 250,000 200,000
im4gn.8xlarge 500,000 400,000
im4gn.16xlarge 1,000,000 800,000
is4gen.medium 31,250 25,000
is4gen.large 62,000 50,000
is4gen.xlarge 125,000 100,000
is4gen.2xlarge 250,000 200,000
is4gen.4xlarge 500,000 400,000
is4gen.8xlarge 1,000,000 800,000

EBS

Criptografia

  • EBS encryptado os dados são encryptados em transito e em repouso
  • EBS não pode encryptar um volume existente
  • EBS não pode criar um volume descriptografado de um snapshot criptografado
  • Suporta apenas criptografia KMS

Características de Disco:

  • SSD

    • Uteis para radom I/O Operations,
    • São butáveis,
    • Otimizado para workload transacional onde envolve grande volume de leitura e escrita e o atributo dominante é o IOPS
  • HDD

    • Uteis para sequencial I/O Operations
    • Volumes HDD não podem ser utilizados para boot.
    • Otimizado para grandes processamentos de streaming, onde o atributo dominante é o throuput

Custo

  • Armazenamento incremental e vc paga apenas pelo bloco alterado
  • SSDs serão sempre mais caros em relação ao HDDs,
  • Definição de Preço do Maior para o menor :
    • Volume Provisionado IOPS (IO1) - SSD - $ 0,125 gb/m e $ 0,065 IOPS/m
    • Volume de Proposta Geral(GP2) - SSD - $ 0,10 gb/m
    • Volume Throuput Otimizado (STI) - HDD - $ 0,045 gb/m
    • Volume Could HDD (SC1) - HDD - $ 0,025 gb/m

Tipos e Caso de Uso:

  • Provisionado IOPS
    • Banco de Dados SQL e NoSql que demanda alta capacidade de IOPS/m
  • General Propouse:
    • Para Maquinas virtuais e aplicações interaticas e sensiveis a latencia
    • MÍNIMO: De 100 IOPS (aproximadamente 33,33 GiB) e MÁXIMO: De 16,000 IOPS (aproximadamente 5,334 GiB) - escala de 3 IOPS para cada 1GB
  • Throuput Otimizado
    • Big Data, WareHouse e processamento de Logs
  • Could HDDs
    • Dados mais frios menos acessados como Backups

Atached

  • Volume não Root, pode ser desanexado e anexado da instancia durante o snapshot
  • EBS Volume não pode ser desanexado e anexado em uma AZ diferente, para isso é necessário realizar um Snapshot do EBS Volume e criar um outro a partir do Snapshot na outra AZ.
  • RAID0 - Possível juntar multiplos HDs.
  • RAID1 - Possível espelhar multiplos HDs

RAID's drawio

EBS Multi-Attach (Não cai na prova)

O Multi-Attach do Amazon EBS permite anexar um único volume SSD de IOPS provisionadas (io1) a até 16 instâncias baseadas em Nitro que estejam na mesma zona de disponibilidade. Você pode anexar vários volumes habilitados para Multi-Attach a uma instância ou conjunto de instâncias. Cada instância à qual o volume está anexado tem permissão completa de leitura e gravação no volume compartilhado. O Multi-Attach facilita obter maior disponibilidade do aplicativo em aplicativos Linux clusterizados que gerenciam operações de gravação simultâneas.

Snapshot

  • O snapshot é uma fotografia no tempo de um EBS Volume
  • Volume root precisa parar a instancia para efetuar o snapshot
  • você não pode criar um snapshot diretamente em outra região, você deve criá-lo na mesma região e fazer a cópia da imagem
  • Ao efetuar uma copia de imagem de uma região para outra é gerado um snapshot automaticamente
  • Através de um snapshot é possivel se criar uma imagem de AMI
  • O Snapshot é salvo automaticamente em um S3

Custo

O custo do EBS é cobrar pela alocação do recurso e não pelo uso de armazenamento. Vale lembrar que o EBS do tipo Could o minimo de armazenamento é de 128 GB

S3

Características do Serviço

  • SaaS - escala automaticamente
  • Armazenamento baseado em objeto de de chave e valor, sendo o nome e o diretório a chave, e o objeto o valor.
  • O tamanho máximo de upload de objetos por requisição é de 5GB
  • Multipart Upload : Upload de objeto pesado, como melhor throughput, recovery de problemas de rede, consegue pausar e finalizar um upload e o conhece o tamanho do objeto antes de fazer upload (recomendado para arquivos maiores do que 5GB).
  • S3 CLI de alto (API ) e baixo nivel (Comandos como aws s3 cp) fazem multi part upload automaticamente
  • Tamanho limite de objeto é de 5TB
  • Serviço regional (Você escolhe a região onde será criado o bucket), com visão global (o domínio é global e não pode haver nome de bucket repetidos dentro da AWS)
  • Melhor custo efetivo entre storage de log
  • Byte Range Fetches efetua a paralelização do objeto quando é efetuado o download, isso aumenta a velocidade de download dos objetos

Transações concorrentes S3

Sua aplicação pode facilmente arquivar centenas de transações por segundo em requisições de performance quando fazemos upload e recuperando arquivos armazenados no S3. O S3 escala automaticamente altas taxas de requisições. Por exemplo, sua aplicação pode atingir até 3,500 requisições de PUT/COPY/DELETE/POST ou 5,500 GET/HEAD. Os limites são numeros prefixados no bucket. Voce pode aumentar sua performance leitura ou escrita paralelizando as leituras, por exemplo, se voce criar 10 prefixos in um Amazon S3 bucket para paralelizar leituras, voce poderia escalar sua performance de leitura para 55,000 de requisições por segundo. Paea ser mais claro os prefixos: Se voce tem um arquivo armazenado no S3 com o caminho como s3://seubucket/pasta1/subpasta1/f1, então pasta1/subpasta1 inciando o prefixo do arquivo f1.

S3 Transfer Acceleration:

* Somente para Upload ;
* Aumenta a velocidade de Upload subindo o arquivo atraves de um edge location que irá transferir o arquivo para o S3;
* Compativel com o Multipart upload

Criptografia

  • SSE-S3

    • SSE-S3 : Encrypt de objetos S3 usando chaves manipuladas e gerenciadas pela a AWS
    • Objeto é encryptado do lado do servidor
    • Tipo de encryptação : AES-256
    • Deve setar o header : "x-amz-server-side-encryption": "AES256"
  • SSE-KMS

    • SS3-KMS : encryptação usando chaves manipuladas e gerenciadas pelo KMS
    • Vantagens KMS : Controle sobre quem pode acessar suas chaves e trail de auditoria.
    • Objeto é encryptado do lado do servidor
    • Deve setar um header “x-amz-server-side-encryption": ”aws:kms"
  • SSE-C

    • SSE-C : Encryptação do lado do servidor usando chaves gerenciada pelo cliente
    • Amazon S3 não armazena a chave que você provê
    • HTTPS deve ser usado uma vez que a sua chave é trafegada no header
    • Chave de encrypt deve ser provida no HTTP header, para toda requisição HTTP feita
  • Client Side Encryption

    • Biblioteca do client tal como Amazon S3 Encryption Client
    • Clients devem encryptar o seu próprio dado antes de enviar para o S3
    • Clients devem decryptar seus próprios dados quando leverem do S3
    • Clients gerenciam completamente a chave e o ciclo de encryption

Importante AWS KMS não suporta requisições anonimas. Como um resultado, qualquer Bucket que permite requisições anonimas ou acesso pulico não irá ser aplicado para os objetos sejam encriptados com KMS. Voce deve remover a criptografia via KMS dos objetos para que você use o S3 para conteudos estaticos. Ao invés de usar o KMS encripto, voce pode usar AES-256 para encriptar os seus objetos.

Glacier

  • Características do serviço

    • Criptografia AES-256 nativa
    • Não pode ser usado diretamente como destino, deve ser utilizado com política de ciclo de vida inclusive para as opções Snowball
  • Opções de leitura :

    • Expedited - 1 a 5 minutos, acesso urgente normalmente para arquivo maiores de 250 MB
    • Standard - 3 a 5 horas, opção default
    • Bulk - de 5 a 12 horas, é o menor custo, pode ser para leitura de grandes (até petabyte) de tamanho de objeto.

Glacier Vault

  • O S3 Glacier Vault Lock permite implantar e impor facilmente controles de conformidade para cofres do S3 Glacier individuais com uma política de bloqueio do cofre. Você pode especificar controles como "Write Once Read Many" (WORM – Uma gravação e muitas leituras) em uma política de bloqueio do cofre e bloquear a política de edições futuras. Depois de bloqueada, a política não poderá mais ser alterada.

S3 Object Lock

  • Característica do Serviço :
    • Com o S3 Object Lock, você pode armazenar objetos usando um modelo write-once-read-many (WORM). O Bloqueio de objeto pode ajudar a evitar que objetos sejam excluídos ou substituídos por um período de tempo fixo ou indefinidamente. Você pode usar o Object Lock para ajudar a atender aos requisitos regulamentares que exigem armazenamento WORM ou simplesmente adicionar outra camada de proteção contra alterações e exclusão de objetos.

    • Pode ser habilitado apenas durante a criação do bucket e apenas para buckets com versionamento habilitado.

Diferença entre o S3 Object Lock e Glacier Vault :

Retention Mode :

  • Governance Mode : apenas com permissão especial pode ser subrescrito, deleteado ou alterado a configuração de bloqueio.

  • Compliance Mode : não pode ser subrescrito, deleteado ou alterado a configuração de bloqueio incluíndo o usuário root.

Retention Períod :

  • Retention Period :

    • Especifica um período fixo de tempo que um objeto ou bucket se mantém bloqueado. Durante esse período o objeto é WORM, e não pode ser alterado ou deletado.
  • Legal hold :

    • Prove a mesma proteção do Retention Períod mas não tem data de expiração, pelo contrário, ele se mantém até que explicitamente seja removido.

Integrações suportadas

  • SNS
  • SQS
  • Lambda Functions

Lifecycle

  • Os objetos podem ser elencados por tags ou prefixos para serem movidos.
  • O lifeciclye pode levar em consideração apenas para a versão corrente ou para versões anteriores.
  • O período mínimo de retenção de um objeto para transitar para um S3-Standard-IA e S3-IA-One Zone é de 30 dias. Para Glacier Archive e Deeep Archive não existe período mínimo de retenção
  • O período mínimo de retenção de armazenamento para um S3-Standard-IA e S3-IA-One Zone é de 30 dias
  • O período mínimo de retenção de armazenamento para um Glacier Archive é de 90 dias e do Glacier Deep Archive é de 180 dias
  • Não possui período mínimo de retençaõ para Standard e Inteligent Tiering
  • A avaliação da regra do ciclo de vida é feita na ordem em que ela é inserida.
  • Você pode setar a limpeza (quantidade de dias parametrizável) de objetos que não concluiram o upload via multipart upload com sucesso, para que não gere custo.
  • Ações de transição : Quando os objetos fazem a transição para outra classe de armazenamento. Por exemplo, você pode optar por fazer a transição de objetos para a classe de armazenamento S3 Standard-IA 30 dias depois de criá-los ou arquivar objetos para a classe de armazenamento S3 Glacier um ano após criá-los. Há custos associados às solicitações de transição do ciclo de vida.
  • Ações de expiração—Defina: Quando os objetos expiram. O Amazon S3 exclui objetos expirados em seu nome. Os custos de expiração do ciclo de vida dependem de quando você escolhe expirar objetos.

Replication

  • Mantem o metadados do objeto de origem
  • O owner se mantém, porém você pode configurar a regra de replicação para alteração do owner
  • A réplica pode ser feita para bucket de da mesma conta ou diferente conta AWS,
  • Você pode escolher a chave KMS ou SSE-S3 de encrypt de dados da réplica.
  • Voce pode determinar quais objetos replicar por prefixo ou tags ou ambos
  • A replicação acontece apenas de novos objetos a patir do momento que a replicação foi configurado

UNLOAD from Redshift to S3 Bucket

  • Por padrão, um objeto do S3 pertence à conta da AWS que o carregou. Isso é verdade mesmo quando o bucket pertence a outra conta. Como os arquivos de dados do Amazon Redshift do comando UNLOAD foram colocados em seu bucket por outra conta, você (o proprietário do bucket) não tem permissão padrão para acessar esses arquivos.
  • Para obter acesso aos arquivos de dados, uma função do AWS Identity and Access Management (IAM) com permissões entre contas deve executar o comando UNLOAD novamente.

Analytics

  • Analisa o comportamento de utilização dos objetos e sugere um período de lifeciclye rule

Consistencia

  • S3 possui consistencia forte para leitura após escrita ou sobrescrita, trazendo sempre a versão mais atualizada do objeto

Durabilidade (Resiliencia)

  • Projetado para 11 noves de durabilidade (99,999999999%) independente do tipo de classe

Disponibilidade

  • Projetado para 99,99 para todos os tipos de classe, exceto Standard IA (99,9) e IA One Zone (99,5)

Reduced Reduncy

  • Reduced Reduncy é uma opção de armazenamento com níveis de redundância mais baixos do que o armazenamento padrão do Amazon S3. Utéis para armazenamento de objetos facilmente reproduzidos. No entanto a sua durabilidade é 400 vezes maior que a de uma unidade comum de disco, mas não replica objetos tantas vezes quanto o armazenamento padrão do Amazon S3.

Log de Acesso

  • O registro em log de acesso ao servidor fornece detalhes sobre as solicitações que são feitas a um bucket do Amazon S3. Os logs de acesso ao servidor são úteis para muitos aplicativos. Por exemplo, as informações do log de acesso podem ser úteis em auditorias de segurança e acesso. Isso também pode ajudá-lo a conhecer sua base de clientes e entender a conta do Amazon S3.

  • Por padrão, o Amazon S3 não coleta logs de acesso ao servidor. Quando você habilita o registro em log, o Amazon S3 entrega logs de acesso a um bucket de origem ou de destino de sua escolha. O bucket de destino deve estar na mesma região da Região da AWS que o bucket de origem e não deve ter uma configuração de período de retenção.

  • Um registro do log de acesso contém detalhes sobre as solicitações feitas a um bucket. Essa informação pode incluir o tipo de solicitação, os recursos que foram especificados na solicitação e a hora e data em que a solicitação foi processada.

Site Estático (Acesso Público)

  • Pontos chaves:

    • A conta AWS que é dona do bucket também deve ser dona do objeto
    • Amazon S3 Block Public Access deve ser desabilitado no nível da Conta AWS e do Bucket
    • O bucket deve conter uma policy de acesso público (s3:GetObject action)
    • O objeto no bucket não pode ser encryptado pelo KMS (KMS não suporta requisições anonimas, use AES-256)
  • S3 pattern de URL (Site Estático)

Security

  • Block Public Access :

  • O S3 Block Public Access fornece quatro configurações. Você pode aplicar essas configurações em qualquer combinação à pontos de acesso individuais, buckets ou contas AWS inteiras. Se você aplicar uma configuração a uma conta, ela aplicará a todos os buckets e pontos de acesso pertencentes a essa conta. Da mesma forma, se você aplicar uma configuração a um bucket, ela se aplicará a todos os pontos de acesso associados a esse bucket. O Amazon S3 não oferece suporte a configurações de bloqueio de acesso público por objeto.

  • IgnorePublicAcls :

    • causes Amazon S3 to ignore all public ACLs on a bucket and any objects that it contains.
  • BlockPublicAcls :

    • PUT bucket ACL and PUT objects requests are blocked if granting public access.
  • BlockPublicPolicy :

    • Rejects requests to PUT a bucket policy if granting public access.
  • RestrictPublicBuckets :

    • Restricts access to principles in the bucket owners’ AWS account.

      • S3 Signed URL
        • Emite uma requisição como usuário do IAM que cria uma URL Pré assinada
        • Tempo de vida limitada
        • Utilizado quando não é utilizado cloud front para entrega de conteúdo.
        • Validade default é 3600 segundos, voce pode alterar no parametro --expires-in-time_by_seconds

Observação: As listas de controle de acesso (ACLs) do Amazon S3 permitem que você gerencie o acesso a buckets e objetos. Ele não pode ser usado para impor controles de conformidade.

  • Event Notification

    • O recurso de notificação do Amazon S3 permite que você receba notificações quando certos eventos acontecem em seu bucket. Para habilitar notificações, você deve primeiro adicionar uma configuração de notificação que identifica os eventos que você deseja que o Amazon S3 publique e os destinos para onde deseja que o Amazon S3 envie as notificações.

    • O Amazon S3 oferece suporte aos seguintes destinos onde pode publicar eventos:

      • Tópico do Amazon Simple Notification Service (Amazon SNS)
      • Fila do Amazon Simple Queue Service (Amazon SQS) (Atualmente, a fila SQS padrão só é permitida como destino de notificação de evento do Amazon S3, enquanto a fila SQS FIFO não é permitida.)
      • AWS Lambda
  • S3 Metadata

    • O metadata não é encryptado portanto a AWS não recomenda que seja armazenado dados sensíveis no metadata do objeto.
  • S3 sync command

    • The sync command uses the CopyObject APIs to copy objects between S3 buckets. The sync command lists the source and target buckets to identify objects that are in the source bucket but that aren't in the target bucket. The command also identifies objects in the source bucket that have different LastModified dates than the objects that are in the target bucket. When you use the sync command on a versioned bucket, only the current version of the object is copied—previous versions are not copied. By default, this behavior preserves object metadata, although the access control lists (ACLs) are set to FULL_CONTROL for your AWS account, which removes any additional ACLs. If the operation fails, you can run the sync command again without duplicating previously copied objects

Leitura

Athena

Athena é um serviço serveless da AWS, de consultas interativas que facilita a análise de dados no Amazon S3 usando SQL padrão; Tipos de Formatos suportados :

  • Apache ORC
  • Apache Parquet
  • JSON Cobrado por query e por montante de dados analisados Suporta ODBC

S3 Byte Range Fetch

  • Usando o cabeçalho Range HTTP em uma solicitação GET Object, você pode buscar um intervalo de bytes de um objeto, transferindo apenas a parte especificada. Você pode usar conexões simultâneas com o Amazon S3 para buscar diferentes intervalos de bytes de dentro do mesmo objeto. Isso ajuda você a obter maior rendimento agregado em comparação a uma única solicitação de objeto inteiro. Buscar intervalos menores de um objeto grande também permite que seu aplicativo melhore os tempos de repetição quando as solicitações são interrompidas. Uma solicitação de intervalo de bytes é uma maneira perfeita de obter o início de um arquivo que contém metadados e garantir que permaneçamos eficientes durante a verificação do bucket.

S3 Select

O S3 Select é um recurso do Amazon S3 que facilita a recuperação de dados específicos do conteúdo de um objeto usando expressões SQL simples sem precisar recuperar o objeto inteiro. O S3 Select simplifica e melhora o desempenho da verificação e filtragem do conteúdo de objetos em um conjunto de dados menor e direcionado em até 400%. Com o S3 Select, você também pode realizar investigações operacionais em arquivos de log no Amazon S3 sem a necessidade de operar ou gerenciar um cluster de computação.

Você pode usar o S3 Select para recuperar um subconjunto de dados usando cláusulas SQL, como SELECT e WHERE, de objetos armazenados no formato CSV, JSON ou Apache Parquet. Ele também funciona com objetos compactados com GZIP ou BZIP2 (somente para objetos CSV e JSON) e objetos criptografados do lado do servidor.

Você pode usar o S3 Select com o AWS Lambda para criar aplicativos sem servidor que usam o S3 Select para recuperar dados do Amazon S3 de maneira eficiente e fácil, em vez de recuperar e processar objetos inteiros. Você também pode usar o S3 Select com estruturas de Big Data, como Presto, Apache Hive e Apache Spark para verificar e filtrar os dados no Amazon S3.

Você não pode usar o parâmetro Byte Range Fetch com S3 Select para percorrer o bucket S3 e obter os primeiros bytes de um arquivo.

Alerta de exame: Observe que com o Amazon S3 Select, você pode verificar um subconjunto de um objeto especificando um intervalo de bytes para consultar usando o parâmetro ScanRange. Esse recurso permite paralelizar a varredura de todo o objeto, dividindo o trabalho em solicitações separadas do Amazon S3 Select para uma série de intervalos de varredura não sobrepostos. Use o parâmetro Select ScanRange do Amazon S3 e Iniciar em (Byte) e Terminar em (Byte).

Athena vs S3 Select

O S3 Select é uma solução leve projetada para permitir que você use SQL para executar cláusulas SELECT simples em no máximo um arquivo. O Amazon Athena é uma ferramenta de análise que permite executar SQL em conjuntos de dados extremamente grandes, abrangendo muitos arquivos com excelente desempenho e com features complexas como group by, join, agregation etc.

S3 Anti Pattern

  • Cheio de Arquivos Pequenos
  • Arquivos no sistema POSIX
  • WebSite com conteudos Dinamicos
  • Features de buscas e queries, rapidamente alterando o dado

Preço

  • Armazenamento : Você paga pelo armazenamento de objetos nos buckets do S3. A taxa cobrada depende do tamanho do objeto, do tempo de armazenamento dos objetos durante o mês e da classe de armazenamento

  • Solicitação : paga pelas solicitações efetuadas em buckets e objetos do S3. Os custos de solicitação do S3 são baseados no tipo de solicitação e são cobrados de acordo com a quantidade de solicitações.

  • Transferência : Você paga por toda a largura de banda para dentro e para fora do Amazon S3, exceto pelo seguinte:

    • Dados transferidos para a Internet nos primeiros 100 GB por mês, agregados em todos os produtos e regiões da AWS (exceto China e GovCloud)
    • Transferência de dados para DENTRO: da Internet para o Amazon S3;
    • Dados transferidos entre buckets do S3 na mesma região da AWS.
    • Dados transferidos de um bucket do Amazon S3 para qualquer serviço da AWS dentro da mesma região AWS que o bucket do S3 (incluindo para uma conta diferente na mesma região da AWS).
    • Dados transferidos para fora para o Amazon CloudFront (CloudFront). ** O preço a seguir é baseado nos dados transferidos para dentro e para fora do Amazon S3 (via Internet pública)
  • Gerenciameno e análise : Você paga pela análise e recursos de gerenciamento de armazenamento (inventário do Amazon S3, S3 Storage Class Analysis, S3 Store Lens e marcação de objetos do S3) habilitados nos buckets da sua conta. A cobrança da análise e do gerenciamento de armazenamento do S3 é feita por recurso,

  • Replicação : Para Cross-Region Replication (CRR) e Same-Region Replication (SRR), você paga as cobranças do S3 para armazenamento nas classes de armazenamento do S3 de destino selecionadas, para a cópia primária, para solicitações PUT de replicação e para cobranças de recuperação de armazenamento de acesso infrequente aplicáveis. Para a CRR, você também paga pela transferência de dados para FORA entre regiões, do S3 para cada região de destino. Ao usar o S3 Replication Time Control, você também paga uma taxa de transferência de dados do Replication Time Control e as cobranças de métricas do S3 Replication, que são feitas na mesma taxa que as métricas personalizadas do Amazon CloudWatch.

  • S3 Object Lamdba : Quando você usa o S3 Object Lambda, sua solicitação S3 GET invoca uma função do AWS Lambda que você define. Esta função processará seus dados e retornará um objeto processado de volta a sua aplicação. Na região Leste dos EUA (Norte da Virgínia), você paga 0,0000167 USD por GB/segundo pela duração de sua função do AWS Lambda, e 0,20 USD por 1 milhão de solicitações do AWS Lambda.

  • As classes de armazenamento S3 Standard-IA e S3 One Zone-IA são adequadas para objetos maiores que 128 KB que você planeja armazenar por pelo menos 30 dias. Se um objeto tiver menos de 128 KB, o Amazon S3 cobrará 128 KB. Se você excluir um objeto antes do final do período mínimo de armazenamento de 30 dias, você será cobrado por 30 dias.

S3 Request to Pay

Em geral, é o dono do bucket que para por todo armazenamento e custos de transferencias que são associados com seu bucket. Entretantovoce pode configurar um bucket para ser um Resquester Pays bucket. Com o Requester Pays buckets, o requester ao invés do dono do bucket pagar o custa da requisição e o download do dado vindo do bucket. O bucket owner sempre irá pagar o custo de armazenamento do dado.

Tipicamente, voce configura o bucket para ser Requester Pays quando voce quer compartilhar os dados mas não quer pagar com os custos asscioados com outros acessando o seu conteudo. Por exemplo voce pode usar o Requester Pays buckets quando fazendo disponivel grande datasets, como um diretorio de codigo postal, dados de referencias, informações geospacial ou dados web crawling.

Voce deve autenticar todas as requisições envolvendo o Requester Pays buckets. A autenticação da requisição habilita o S3 para indentificar e cobrar a requisição para uso do Resquester Pays bucket.

Quando o consumidor assume uma IAM role antes de fazer a sua requisição, a conta à qual a role pertence é cobrada pela solicitação.

Depois que voce configura um bucket para ser Requester Pays, o consumidor deve incluir x-amz-request-payer na sua requisição no header, para POS, GET e HEAD requisições, ou como um parametro na requisição REST para mostrar que eles não entendem que eles não irá ser cobrado pelo requisição do dado para o download.

Requester Pays não suporta os seguintes cenários

  • Requisição Anonimas;

  • Requisições SOAP;

  • Usando um Requester Pays como algo do bucket para end-user logging, ou vice versa. Entretanto, voce pode habilitar o end-user logging como um Requester Pays bucket onde o alvo do bucket não é um Requester Bucket . Para cobrar com sucesso a requisição do Requester Pays encaminha: O cliente para pagar o dado transferido e a requisição, e o dono do bucket paga pelo armazenamento do dado. Entretanto o dono do bucket é cobrado pela requisição seguindo as seguintes consições:

  • O consumidor não incluir o parametro x-amz-request-payer no header das operações REST (GET, HEAD ou POST) codigo HTTP 403;

  • Requisições de autenticação falha codigo HTTP 403;

  • Requisição anonima HTTP 403;

  • Requisição que é SOAP.

Amazon EFS

  • Elastic File System (Utilizado para Linux NFS)

  • Compatível com POSIX (Uma sigla, que significa Portable System Operation Unix)

  • Precisa estar na mesma zona de disponibilidade que as instancias

  • Posso montar em mais de uma zona de disponibilidade

  • É possível fazer o mount do EFS durante o tempo de inicialização da instancia através do Lauch Instance Wizard;

  • Não é possivel efetuar uma transferencia cross-region com EFS sem o uso do DataSync, para isso é preciso instalar o DataSync dentro de uma instancia EC2

  • É necessário ter acesso ao security group do EFS

  • Pode ser acessado do On Premise via Direct Connect

  • Trabalha com Shared Files permitindo centenas de acesso simultaneo tanto da cloud como do on-premise

  • O EFS possui um Lifecicyle com período específico de até 90 dias.

    • Classes
      • Standard
      • Infrequently Accessed
    • Você define quando transferir arquivos do EFS para a classe de armazenamento IA, definindo uma política de ciclo de vida. Um sistema de arquivos tem uma política de ciclo de vida que se aplica a todo o sistema de arquivos. Se um arquivo não for acessado pelo período definido na política de ciclo de vida que você escolher, o Amazon EFS mudará o arquivo para a classe de armazenamento IA. Você pode especificar uma das seguintes políticas de ciclo de vida para o sistema de arquivos do Amazon EFS:
      • AFTER_7_DAYS
      • AFTER_14_DAYS
      • AFTER_30_DAYS
      • AFTER_60_DAYS
      • AFTER_90_DAYS
  • Performace :

    • General Propouse

      • O uso geral fornece a menor latência por operação do sistema de arquivos e pode conseguir isso por padrões de E/S aleatórios ou sequenciais.
    • MAX I/O

      • Max I/O pode ser escalonada para níveis superiores de taxa de transferência agregada e operações agregadas por segundo e é ideal para aplicativos altamente paralelizados que podem ser escalados para milhares de instâncias do Amazon EC2. O modo de desempenho de E/S máxima só está disponível em sistemas de arquivos do Amazon EFS usando classes de armazenamento Standard.
  • Throuput Mode

    • Bursting(Throuput escalavel) - Default
    • Provisioned(Throuput fixo)
      • Para aplicações com altas taxas de transferência para armazenamento (MiB / s por TiB) ou com requisitos maiores do que aqueles permitidos pelo modo Bursting Throughput (default).
      • Você pode diminuir a taxa de transferência do sistema de arquivos no modo Provisioned Throughput, desde que tenham se passado mais de 24 horas desde a última redução
      • Você pode alterar entre o modo Provisioned Throughput e o modo Bursting Throughput padrão, desde que tenham se passado mais de 24 horas desde a última alteração do modo de throughput.

Amzon FSx

  • FSx - File Server para Windows, mesmas capacidades do EFS, exceto que nele eu tenho a opção de escolher single AZ enquanto o EFS é multi AZ por default (Não é possível alterar após criado).
  • É necessario efetuar o provisionamento de capacidade

Amazon FSx for Lustre

  • Serviço de Armazenamento de Arquivo de alta performace computacional como workload de Machine Learning reinderização de vídeos etc. - - - - Compatível com linux e que pode ser vinculado ao S3
  • É necessario efetuar o provisionamento de capacidade
  • A Capacidade de throughput é diretamente ligada ao tamanho da capacidade provisionada do Fsx

AWS Storage Gateway:

  • Serviço de armazenamento hibrido na Cloud, apropriado para estender a sua rede on-premisse, que possibilita acesso vitural ao armazenamento ilimitado da cloud. Vc pode pensar nele como um mount em um S3

  • Tipos :

    • Tape Gateway - um gateway de fita fornece armazenamento em fita virtual com suporte da nuvem
    • File Gateway - Você pode pensar no gateway de arquivos como uma montagem de sistema de arquivo no S3 e é compatível com o SMB e NFS.
    • Gateway Volume - Volumes de armazenamento de backup em nuvem:
      • Bloco de Storage que usa protocolo iSCSI armazendo pelo S3
      • Pode ser criado um EBS snapsho do volume e restaurar como um EBS
      • Tipos :
        • Cached volumes : Armazena em um S3 e mantem como cópia dos dados acessados com frequencia mantendo a baixa latencia não é compatível com o SMB e NFS
        • Stored volumes : você pode armazenar localmente todo o conjunto de dados de volume e armazenar backups periódicos e pontuais (snapshots) na AWS
  • Link