Como Processar Backup do AWS EC2 com EBS Snapshots

Amazon Web Services (AWS) As instâncias EC2 são uma maneira conveniente de executar cargas de trabalho em Máquinas Virtuais (VM). Mas o que acontece se o armazenamento ao qual estão conectadas falhar ou se corromper? É hora de começar a discutir um backup do EC2 da AWS.

Ao fazer backup de uma instância EC2, você estará lidando com Elastic Block Store (EBS) volumes, mais especificamente instantâneos EBS. A EC2 armazena todos os volumes com EBS e fazer um instantâneo do EBS é uma ótima maneira de fazer backup de seus dados.

Neste tutorial, você aprenderá como criar instantâneos EBS com o Console de Gerenciamento da AWS e a Interface de Linha de Comando da AWS (AWS CLI).

Se você deseja gerenciar backups/snapshots do EC2 de forma fácil, certifique-se de verificar o Veeam Backup for AWS. O Veeam cuida não apenas da criação de snapshots do EBS, mas também gerencia a replicação, monitora inteligentemente os blocos alterados e fornece uma API pública.

Pré-requisitos

Este artigo será um tutorial. Se você planeja seguir passo a passo, precisará do seguinte:

Criação de políticas IAM e permissões da Interface de Programação de Aplicativos (API) da AWS estão fora do escopo deste artigo. Sempre siga o princípio do menor privilégio ao autorizar contas a realizar ações.

  • O AWS CLI instalado e autenticado com seu usuário IAM em sua máquina local.

Criando um Snapshot do EBS a partir do Console de Gerenciamento da AWS

Há várias maneiras diferentes de criar snapshots do EBS. Vamos começar a criar snapshots através do console de gerenciamento da AWS.

Os snapshots do EBS podem incorrer em custos de armazenamento. Para obter mais informações sobre como o faturamento do EBS é calculado, consulte a Documentação da AWS.

Navegando até o Console do EC2

Para começar:

  1. Abra o Console de Gerenciamento da AWS e faça login na sua conta da AWS fornecendo suas credenciais de conta da AWS (raiz) ou IAM.

2. Clique em Serviços no canto superior esquerdo da sua tela.

AWS Management Console showing services drop-down menu.

3. Selecione EC2 no menu suspenso de Serviços. A opção EC2 está localizada na categoria Computação, como mostrado abaixo. Esta opção irá levá-lo ao console do EC2.

AWS Management Console showing services drop-down menu and EC2 selection.

Você deve estar agora no painel de Recursos. O painel de Recursos fornece uma visão rápida dos recursos relacionados ao EC2 que estão estabelecidos dentro da sua região selecionada. Na captura de tela abaixo, você pode ver que o painel de Recursos deste tutorial indica que os seguintes recursos estão estabelecidos para o usuário conectado na região Leste dos EUA (Norte da Virgínia).

EC2 Console Resources Dashboard showing established resources.

Criando um Snapshot do EBS no Console do EC2

Depois de ter navegado até o console do EC2 e estar visualizando sua região esperada, é hora de criar um Snapshot do EBS (backup da AWS EC2). Para realizar esta tarefa:

  1. Selecione Snapshots em Elastic Block Store no painel de navegação localizado no lado esquerdo da tela.
EC2 Console showing Snapshots selection.

2. Em seguida, selecione Criar Snapshot na parte superior da tela. Selecionar Criar Snapshot irá levá-lo a um menu que requer algumas entradas adicionais.

Snapshots section of the EC2 Console showing Create Snapshot selection.

3. Na página Criar Snapshot, defina o tipo de recurso como Volume sob o campo Selecionar tipo de recurso. Configurar o tipo de recurso como Volume informa à AWS para capturar um snapshot de um único volume EBS; não de todos os volumes conectados à instância EC2.

Create Snapshot menu showing Volume and Instance selection.

4. Em seguida, selecione o ID do volume do EBS a ser snapshot no menu suspenso. O ID do volume é um identificador único atribuído a cada Volume EBS. Na captura de tela a seguir, você verá que o ID do volume deste tutorial, vol-0b4f056a0b709240a, está selecionado.

Create Snapshot menu showing completed Volume field.

5. Agora, insira uma descrição para o seu Snapshot do EBS no campo Descrição. O campo Descrição é opcional e pode conter até 255 caracteres.

Você verá esta descrição posteriormente como uma propriedade no snapshot do EBS. Este tutorial usará Volume Snapshot for ATA Blog para a descrição.

Create Snapshot menu showing the completed Description field.

6. Em seguida, você pode marcar sua snapshot do EBS usando pares chave/valor opcionais. As tags são uma forma poderosa de gerenciar e organizar seus recursos dentro da AWS. Este tutorial usará tags que exemplificam um caso de uso comum para um servidor.

Outras tags comuns incluem Nome, Proprietário, Ambiente e Propósito.

Create Snapshot menu showing completed Tag field.

7. Agora clique no botão Criar Snapshot para criar a snapshot do EBS.

Create Snapshot menu showing Create Snapshot selection.

Este tutorial não abordou o campo Encriptado. Snapshots do EBS criadas a partir de Volumes do EBS não encriptados não podem ser encriptadas durante a criação da snapshot do EBS. Para encriptar uma Snapshot do EBS feita a partir de um Volume do EBS não encriptado, você deve primeiro completar a Snapshot do EBS não encriptada, copiar a Snapshot do EBS não encriptada, e aplicar a encriptação desejada. Snapshots tiradas de volumes encriptados são automaticamente encriptadas.

8. Quando concluído, o console do EC2 solicitará com a seguinte mensagem de sucesso. Descarte a mensagem selecionando Fechar.

Message indicating success Snapshot Create Request.

Agora você deverá ver a snapshot do EBS listada no console com um status pendente. Ela permanecerá nesse status até que todos os blocos de volume do EBS modificados sejam transferidos para a Amazon S3.

Snapshots section of the EC2 Console showing pending snapshot.

As snapshots iniciais do EBS levam mais tempo para serem criadas porque são backups completos, ao contrário dos backups incrementais subsequentes. Se parecer que a snapshot está levando mais tempo do que deveria, acione uma atualização do status usando o ícone de atualização localizado no canto superior direito da sua tela.

Assim que a snapshot estiver completa, você verá um Status de completado conforme mostrado abaixo.

Snapshots section of the EC2 Console showing completed snapshot.

Você agora criou um backup do AWS EC2!

Criando uma Snapshot do EBS usando a AWS CLI

Na última seção, você criou uma snapshot do EBS usando o console baseado na web da AWS, mas essa não é a única maneira de fazer isso! Você também pode fazer backup de uma instância EC2 criando uma snapshot via AWS CLI.

Para criar sua snapshot com o AWS CLI, supondo que você tenha o AWS CLI instalado e autenticado na sua conta:

  1. Abra um prompt de comando ou console do PowerShell no seu computador Windows

2. Execute o comando aws ec2 describe-volumes com o parâmetro --query para exibir uma lista de instâncias e IDs de volume. Anote o ID do volume que você deseja fazer a snapshot.

aws ec2 describe-volumes --query 'Volumes[*].Attachments[].{VolumeID:VolumeId,InstanceID:InstanceId}' --output text

3. Execute o comando aws ec2 create-snapshot fornecendo os seguintes parâmetros:

  • volume-id – o ID único do volume do EBS que você está tentando fazer backup
  • description – a descrição que você gostaria de aplicar ao backup
  • tag-specifications – as tags que você gostaria de anexar ao backup

O comando a seguir cria um instantâneo do volume que você especificar à direita com o parâmetro --volume-id, com a descrição de Volume Snapshot for ATA Blog via the AWS CLI e dois Tags; Name: FileServer01 e Purpose: Enterprise File Storage.

# Certifique-se de inserir o ID do seu volume 
aws ec2 create-snapshot --volume-id <your volume ID> --description 'Volume Snapshot for ATA Blog via the AWS CLI' --tag-specifications 'ResourceType=snapshot,Tags=[{Key=Name,Value=FileServer01},{Key=Purpose,Value=Enterprise File Storage}]' 
AWS CLI output showing successful command output.

A AWS permite que você configure o formato de saída padrão dos comandos AWS CLI, com base na preferência do usuário. As opções de formato de saída incluem JSON, YAML, YAML-Stream, Texto e Tabela. A saída do seu comando depende da configuração do seu AWS CLI e pode ser diferente da saída exibida acima.

4. Agora verifique o status do instantâneo com o comando aws ec2 describe-snapshots, fornecendo o ID do instantâneo ao parâmetro --snapshot-id. Encontre o ID do instantâneo a partir da propriedade SnapshotID retornada na etapa 2.

Se você não souber o ID do instantâneo, pesquise todos os seus instantâneos usando aws ec2 describe-snapshots --owner self.

# Certifique-se de inserir o ID do seu instantâneo
aws ec2 describe-snapshots --snapshot-id <your snapshot ID>

Eventualmente, o comando describe-snapshots deve retornar um Progresso de 100% e um Estado de concluído, como mostrado abaixo.

AWS CLI output showing completed EBS Snapshot.

Ótimo trabalho! Você acabou de criar programaticamente um Instantâneo EBS usando o AWS CLI!

Próximos Passos

Neste tutorial, você aprendeu como criar backups de instâncias Amazon EC2 com snapshots EBS usando o console baseado na web da AWS e o AWS CLI programático.

Se você terminou de testar com o snapshot que criou neste tutorial, certifique-se de excluí-lo para evitar ser cobrado!

Para ir além, que tal tentar restaurar uma instância EC2?

Source:
https://adamtheautomator.com/aws-ec2-backup/