Alura > Cursos de DevOps > Cursos de AWS > Conteúdos de AWS > Primeiras aulas do curso Amazon S3: manipule e armazene objetos na nuvem

Amazon S3: manipule e armazene objetos na nuvem

Primeiros passos com o S3 - Apresentação

Boas-vindas ao curso de AWS S3!

Armazenamento é um dos nossos principais objetivos quando começamos a trabalhar com o conceito de nuvem.

Esse curso, de maneira específica, tratará sobre armazenamento na Amazon Web Services (AWS) com S3. Vamos aprender os detalhes e principais recursos desse serviço, como ciclo de vida de objetos, permissionamento de acesso aos buckets e classe de armazenamento.

Existem duas possibilidades para armazenar objetos: pagar um valor maior para recuperá-lo rapidamente ou pagar bem menos e levar mais tempo para acessá-lo novamente. A escolha dependerá do projeto e, por isso, precisaremos conhecer todas as possibilidades.

No treinamento, vamos trabalhar com CLI, que viabilizará a criação de nossos scripts e automações, e com CloudFront, que também está diretamente ligado ao S3. Usaremos essas ferramentas para executar nossos projetos.

E aí, vamos começar?

Primeiros passos com o S3 - Primeiros passos no S3

Antes de tudo, vamos checar os conhecimentos prévios exigidos para esse curso.

Para começar, é indispensável termos uma conta na AWS. Podemos criar uma conta free-tier, seguindo o processo descrito nas referências do curso, para ter acesso gratuito à maioria dos serviços, incluindo o S3.

O instrutor rodará o Linux em um container do Docker, mas podemos utilizar o sistema operacional de nossa preferência. Lembrando que cada sistema terá um processo de instalação diferente para a CLI.

O S3 é um dos principais serviços da AWS e trabalha com armazenamento de objetos. Arquivos em geral, independente do formato, são considerados objetos no S3. No contexto da AWS, chamamos repositórios de bucket. Essa nomenclatura também é utilizada em outras nuvens, como a Google Cloud Platform (GCP), por exemplo.

No bucket, vamos inserir arquivos, aplicar políticas e fazer as atividades do curso. Agora, vamos começar a trabalhar com S3. Vamos interagir com o console para criar nosso bucket, subir alguns arquivos e entender o comportamento do serviço.

Acessaremos o Guia do Usuário do S3 para entender um pouco mais sobre a plataforma. Tudo que usaremos no treinamento poderá ser encontrado nessa documentação.

Depois de criar nossa conta, vamos acessar o console em https://aws.amazon.com/pt/console/ e fazer login. Na barra de pesquisa do site, vamos buscar por "S3" e selecionar a primeira opção. Chegou a hora de criar o bucket.

Para fazer isso, selecionaremos a opção "Create bucket" na parte superior direita da tela. Depois, vamos definir "rmerces-lab1" como Bucket name. Vale lembrar que o nome do bucket precisa ser único na AWS. Isso acontece porque esses nomes são usados na criação de domínios.

Vamos definir a AWS Region em "US East (N. Virginia) us-east-1". O preço varia por região, como aprendemos nos cursos de onboarding em Cloud. Manteremos o padrão de ACLs, que é "disabled", e de Block Public Access settings, bloqueando acessos públicos.

Também vamos manter o padrão em todas as opções abaixo delas. Depois, clicaremos em "Create bucket". Agora, com o repositório criado, podemos armazenar objetos. Vamos clicar em "rmerces-labs1" para iniciar esse processo simplificado. Basta apenas selecionar a opção "Upload" e arrastar os arquivos desejados para dentro do bucket.

Agora, é só aguardar o upload. Na próxima aulas, vamos conhecer outros detalhes do bucket.

Primeiros passos com o S3 - Manipulando objetos via console

Depois do upload, encontraremos nossos arquivos no bucket.

Na aula anterior, falamos sobre diferentes tipos de armazenamento e o valor cobrado para cada um deles. Vamos acessar o documento de precificação do S3 da AWS.

No treinamento, estamos hospedando nosso bucket na região Norte da Virgínia, que cobra US$ 23 por dia para acessar dados com frequência, exatamente do que precisamos. Se alterarmos a região para a América do Sul, por exemplo, esse valor dobra.

Com acesso a esses dados, você pode fazer o planejamento financeiro da sua atividade. Vamos abrir algum arquivo do nosso bucket. No vídeo, o instrutor abriu o objeto "arq.txt". Ao fazer isso, encontraremos, além de informações sobre o arquivo, sua URL. Porém, quando clicamos nela, somos redirecionados a uma página de "Acesso Negado".

Isso acontece porque ainda não trabalhamos as questões de permissionamento no S3. De volta à página do arquivo, podemos selecionar a opção "Download" para baixar esse objeto. Também é possível compartilhá-lo com URLs pré-assinadas, basta clicar em "Object actions > Share with a presigned URL".

É possível determinar o tempo de existência da URL. Para fazer isso, preencheremos o campo "Number of minutes" com a duração em minutos. Quando a URL for gerada, poderemos copiá-la e inseri-la no navegador. Fazendo isso, o conteúdo do objeto será exibido.

É possível, ainda, integrar buckets a aplicações, que vão gerar URLs pré-assinadas referentes ao arquivo em questão, e disponibilizar tudo isso para seu cliente pela quantidade de minutos definida no passo anterior.

Agora, vamos voltar ao bucket para trabalhar os conceitos de movimentação e cálculo de tamanho. Depois de selecionarmos todos os arquivos do repositório, vamos clicar em "Actions > Calculate total size", para ver o espaço exigido para o armazenamento dos objetos. Ao fazer isso, seremos redirecionados a uma página com essa informação. No caso dos arquivos selecionados pelo instrutor, o tamanho exibido foi de 76.5 MB.

Mais adiante no curso, vamos aprender a acessar informações como essa via linha de comando da CLI. Mas, por enmquanto, voltaremos ao bucket para criar um novo diretório, selecionando a opção "Create folder". Vamos preencher o campo de "Folder name" com "vídeos". Esse será o nome do diretório. Na aula, o instrutor seleciona o objeto "lightsaber_story.mp4" e clica em "Actions > Move > Browse > vídeos".

Fazendo isso, o arquivo mencionado será movido para o diretório que acabamos de criar. Com isso, podemos perceber que é possível executar ações como essa via console, e não apenas pela CLI. Na opção "Actions", também podemos copiar e excluir objetos.

Mesmo assim, quando clicamos sobre os arquivos, no diretório, não conseguimos acessá-los pela URL. Mesmo logados na nossa conta da AWS, temos o acesso negado. Isso acontece porque, com esse método, usamos a URL pública do objeto para tentar acessá-lo.

Na próxima aula, vamos aprender a resolver isso gerenciando permissões.

Sobre o curso Amazon S3: manipule e armazene objetos na nuvem

O curso Amazon S3: manipule e armazene objetos na nuvem possui 120 minutos de vídeos, em um total de 30 atividades. Gostou? Conheça nossos outros cursos de AWS em DevOps, ou leia nossos artigos de DevOps.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda AWS acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas