Come Elaborare il Backup di AWS EC2 con Snapshot di EBS

Amazon Web Services (AWS) Le istanze EC2 sono un modo conveniente per eseguire carichi di lavoro su macchine virtuali (VM). Ma cosa succede se lo storage a cui sono collegate fallisce o diventa corrotto? È ora di iniziare a parlare di un backup di AWS EC2.

Quando si esegue il backup di un’istanza EC2, si sta parlando di volumi Elastic Block Store (EBS), più precisamente snapshot EBS. EC2 memorizza tutti i volumi con EBS e prendere uno snapshot EBS è un ottimo modo per eseguire il backup dei dati.

In questo tutorial, imparerai come creare snapshot EBS con la Console di gestione di AWS e l’Interfaccia a riga di comando di AWS (AWS CLI).

Se desideri gestire i backup di EC2 / snapshot di EBS in modo semplice, assicurati di dare un’occhiata a Veeam Backup for AWS. Veeam si occupa non solo di creare snapshot di EBS, ma gestisce anche la replica, monitora intelligentemente i blocchi modificati e fornisce un’API pubblica.

Prerequisiti

Questo articolo sarà un tutorial. Se hai intenzione di seguire passo dopo passo, avrai bisogno dei seguenti elementi:

La creazione di una policy IAM e le autorizzazioni dell’interfaccia di programmazione delle applicazioni AWS (API) esulano dallo scopo di questo articolo. Seguire sempre il principio del privilegio minimo quando si autorizzano gli account a eseguire azioni.

  • L’AWS CLI installata e autenticata con il tuo utente IAM sulla tua macchina locale.

Creazione di uno snapshot EBS dalla Console di Gestione AWS

Esistono diversi modi per creare snapshot EBS. Iniziamo creando snapshot tramite la console di gestione AWS.

Le snapshot EBS possono comportare costi di archiviazione. Per ulteriori informazioni su come viene calcolata la fatturazione EBS, consulta la Documentazione AWS.

Per accedere alla console EC2

Per iniziare:

  1. Apri la Console di Gestione AWS e accedi al tuo account AWS fornendo le tue credenziali di account AWS (root) o IAM.

2. Fai clic su Servizi nell’angolo in alto a sinistra dello schermo.

AWS Management Console showing services drop-down menu.

3. Seleziona EC2 dal menu a tendina Servizi. L’opzione EC2 si trova sotto la categoria Calcolo, come mostrato di seguito. Questa opzione ti porterà alla console EC2.

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

Dovresti essere ora nella dashboard Risorse. La dashboard Risorse fornisce un’anteprima veloce delle risorse relative a EC2 che sono state create nella tua regione selezionata. Nella schermata sottostante, puoi vedere che la dashboard delle Risorse di questo tutorial indica che le seguenti risorse sono state create per l’utente connesso nella regione US East (N. Virginia).

EC2 Console Resources Dashboard showing established resources.

Creazione di uno snapshot EBS nella console EC2

Ora che hai raggiunto la console EC2 e stai visualizzando la tua regione prevista, è il momento di creare uno snapshot EBS (backup AWS EC2). Per completare questa operazione:

  1. Seleziona Istantanee sotto Elastic Block Store dal riquadro di navigazione situato sul lato sinistro dello schermo.
EC2 Console showing Snapshots selection.

2. Successivamente, seleziona Crea Istantanea nella parte superiore dello schermo. Selezionare Crea Istantanea ti porterà a un menu che richiede alcuni input aggiuntivi.

Snapshots section of the EC2 Console showing Create Snapshot selection.

3. Nella pagina Crea Istantanea, imposta il tipo di risorsa su Volume nel campo Seleziona tipo di risorsa. Impostare il tipo di risorsa su Volume indica ad AWS di acquisire un’istantanea di un singolo volume EBS; non di tutti i volumi collegati all’istanza EC2.

Create Snapshot menu showing Volume and Instance selection.

4. Successivamente, seleziona l’ID del volume EBS da cui fare l’istantanea dal menu a discesa. L’ID del volume è un identificatore univoco assegnato a ciascun Volume EBS. Nella schermata seguente, vedrai che è selezionato l’ID del volume di questo tutorial vol-0b4f056a0b709240a.

Create Snapshot menu showing completed Volume field.

5. Ora inserisci una descrizione per l’istantanea EBS nel campo Descrizione. Il campo Descrizione è facoltativo e può contenere fino a 255 caratteri.

Vedrai questa descrizione in seguito come proprietà dell’istantanea EBS. Questo tutorial utilizzerà Istantanea del volume per ATA Blog come descrizione.

Create Snapshot menu showing the completed Description field.

6. Successivamente, è possibile etichettare il tuo snapshot EBS utilizzando coppie chiave/valore opzionali. Le etichette sono un modo potente per gestire e organizzare le risorse all’interno di AWS. Questo tutorial utilizzerà etichette che esemplificano un caso d’uso comune per un server.

Altre etichette comuni includono Nome, Proprietario, Ambiente e Scopo.

Create Snapshot menu showing completed Tag field.

7. Ora clicca sul pulsante Crea Snapshot per creare lo snapshot EBS.

Create Snapshot menu showing Create Snapshot selection.

Questo tutorial non ha trattato il campo Encrypt. Gli snapshot EBS creati da volumi EBS non criptati non possono essere crittografati durante la creazione dello snapshot EBS. Per criptare uno snapshot EBS preso da un volume EBS non criptato, è necessario prima completare lo snapshot EBS non criptato, copiare lo snapshot EBS non criptato e applicare la crittografia desiderata. Gli snapshot presi da volumi criptati vengono automaticamente criptati.

8. Una volta completato, la console EC2 ti mostra il seguente messaggio di successo. Ignora il messaggio selezionando Chiudi.

Message indicating success Snapshot Create Request.

Dovresti ora vedere lo snapshot EBS elencato nella console con uno stato in sospeso. Rimarrà in questo stato fino a quando tutti i blocchi dei volumi EBS modificati saranno trasferiti su Amazon S3.

Snapshots section of the EC2 Console showing pending snapshot.

La creazione iniziale degli snapshot EBS richiede più tempo perché sono backup completi, a differenza dei successivi backup incrementali. Se sembra che lo snapshot stia impiegando più tempo del previsto, attiva un aggiornamento dello stato utilizzando l’icona di aggiornamento situata nell’angolo in alto a destra del tuo schermo.

Una volta completato lo snapshot, vedrai uno Stato completato come mostrato di seguito.

Snapshots section of the EC2 Console showing completed snapshot.

Hai ora creato un backup AWS EC2!

Creazione di uno snapshot EBS utilizzando AWS CLI

Nella sezione precedente, hai creato uno snapshot EBS utilizzando la console web di AWS, ma non è l’unico modo per farlo! Puoi anche eseguire il backup di un’istanza EC2 creando uno snapshot tramite AWS CLI.

Per creare il tuo snapshot con AWS CLI, assumendo che tu abbia installato e autenticato AWS CLI nel tuo account:

  1. Apri un prompt dei comandi o una console di PowerShell sul tuo computer Windows

2. Esegui il comando aws ec2 describe-volumes con il parametro --query per visualizzare un elenco di istanze e ID dei volumi. Prendi nota dell’ID del volume che desideri creare uno snapshot.

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

3. Esegui il comando aws ec2 create-snapshot fornendo i seguenti parametri:

  • volume-id – l’ID univoco del volume EBS che stai cercando di eseguire il backup
  • description – la descrizione che desideri applicare al backup
  • tag-specifications – i tag che desideri aggiungere al backup

Il seguente comando crea uno snapshot del volume che specificate a destra con il parametro --volume-id con la descrizione di Snapshot del volume per ATA Blog tramite AWS CLI e due Tag; Nome: FileServer01 e Scopo: Archiviazione file aziendale.

# Assicurarsi di inserire l'ID del 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.

AWS consente di configurare il formato di output predefinito dei comandi AWS CLI, in base alle preferenze dell’utente. Le selezioni del formato di output includono JSON, YAML, YAML-Stream, Testo e Tabella. L’output del comando dipende dalla configurazione di AWS CLI e potrebbe essere diverso dall’output visualizzato sopra.

4. Verificare lo stato dello snapshot con il comando aws ec2 describe-snapshots fornendo l’ID dello snapshot al parametro --snapshot-id. Trovare l’ID dello snapshot dalla proprietà SnapshotID restituita al passaggio 2.

Se non si conosce l’ID dello snapshot, cercare tutti gli snapshot utilizzando aws ec2 describe-snapshots --owner self.

# Assicurarsi di inserire l'ID dello snapshot
aws ec2 describe-snapshots --snapshot-id <your snapshot ID>

In definitiva, il comando describe-snapshots dovrebbe restituire un Progress del 100% e uno State di completed come mostrato di seguito.

AWS CLI output showing completed EBS Snapshot.

Ottimo lavoro! Hai appena creato in modo programmato uno snapshot EBS utilizzando AWS CLI!

Passaggi successivi

In questo tutorial, hai imparato come creare backup delle istanze Amazon EC2 con snapshot EBS utilizzando la console AWS basata sul web e l’AWS CLI programmatica.

Se hai finito di testare lo snapshot creato in questo tutorial, assicurati di eliminarlo per evitare addebiti!

Per andare oltre, che ne dici di provare a ripristinare un’istanza EC2?

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