Introdução

Snapshots são cópias pontuais (point-in-time) dos volumes EBS (Elastic Block Store) associados a uma instância EC2. Em ambientes industriais que rodam servidores de supervisório, históricos de dados de produção ou aplicações críticas na AWS, o snapshot é a base de qualquer estratégia de backup e disaster recovery. Neste tutorial, vamos criar um snapshot de um volume EBS anexado a uma instância EC2, tanto pelo console quanto pela linha de comando.

Pré-requisitos

Passo 1: Identificar o volume EBS da instância

Antes de criar o snapshot, é preciso saber qual volume está anexado à instância. Use o comando abaixo, substituindo o ID de exemplo pelo ID real da sua instância:

aws ec2 describe-instances --instance-ids i-0abcd1234efgh5678 --query "Reservations[].Instances[].BlockDeviceMappings"

A saída traz o VolumeId associado a cada dispositivo (ex. /dev/sda1). Anote o ID do volume, algo como vol-0a1b2c3d4e5f67890.

Passo 2: Criar o snapshot via console AWS

  1. Acesse o console EC2 e, no menu lateral, clique em Volumes dentro da seção Elastic Block Store.
  2. Selecione o volume desejado marcando a caixa de seleção.
  3. Clique em Actions e depois em Create snapshot.
  4. Preencha o campo Description com um nome descritivo, por exemplo: backup-servidor-scada-pre-atualizacao.
  5. Adicione tags, como Ambiente=Producao e Projeto=LinhaMontagem02, para facilitar a governança.
  6. Clique em Create snapshot para iniciar o processo.

Passo 3: Criar o snapshot via AWS CLI

Para automatizar rotinas de backup, o comando create-snapshot é o mais indicado:

aws ec2 create-snapshot \
  --volume-id vol-0a1b2c3d4e5f67890 \
  --description "backup-servidor-scada-pre-atualizacao" \
  --tag-specifications 'ResourceType=snapshot,Tags=[{Key=Ambiente,Value=Producao},{Key=Projeto,Value=LinhaMontagem02}]'

O retorno inclui o SnapshotId gerado, por exemplo snap-0f1e2d3c4b5a69870, e o status inicial pending.

Acompanhando o progresso do snapshot

Snapshots grandes podem levar minutos para concluir. Para monitorar o status, use:

aws ec2 describe-snapshots --snapshot-ids snap-0f1e2d3c4b5a69870 --query "Snapshots[].State"

Quando o valor retornado mudar de pending para completed, o snapshot está pronto para uso.

Passo 4: Automatizar snapshots de toda a instância

Quando a instância tem múltiplos volumes e você deseja capturar todos de uma vez, use o comando que cria snapshots de todos os volumes anexados a uma instância específica:

aws ec2 create-snapshots \
  --instance-specification InstanceId=i-0abcd1234efgh5678 \
  --description "backup-completo-instancia"

Boas práticas

awsec2ebsbackupcloud
← Voltar para o blog