Come posso copiare i miei dati istantanei Amazon EBS su Amazon S3 e creare volumi EBS per dati personalizzati in S3?

3 minuti di lettura
0

Voglio copiare uno snapshot di Amazon Elastic Block Store (Amazon EBS) nel mio bucket Amazon Simple Storage Service (Amazon S3). Voglio anche creare volumi Amazon EBS a partire dai dati archiviati nel mio bucket S3, ma non so come farlo.

Breve descrizione

Quando crei uno snapshot EBS, questo viene automaticamente archiviato in un bucket Amazon S3 gestito da Amazon Web Services (AWS). È possibile copiare snapshot all'interno della stessa regione AWS o da una regione all'altra. Tuttavia, non puoi copiare gli snapshot nei bucket S3 che gestisci.

Per archiviare snapshot a cui accedi raramente, prendi in considerazione l'utilizzo di Amazon EBS Snapshots Archive. Tuttavia, se preferisci comunque utilizzare Amazon S3 per archiviare i tuou snapshot, puoi utilizzare la seguente soluzione alternativa.

Risoluzione

Nota: se ricevi messaggi di errore durante l'esecuzione dei comandi dell'interfaccia della linea di comando AWS (AWS CLI), assicurati di utilizzare la versione più recente di AWS CLI.

Puoi copiare il contenuto dello snapshot nel bucket S3 creando un volume dallo stesso. Monta il volume su un'istanza Linux Amazon Elastic Compute Cloud (Amazon EC2). Quindi, copia i dati nel tuo bucket S3 utilizzando l'AWS CLI o le API S3.

Per copiare il contenuto dei tuoi snapshot EBS in un bucket Amazon S3, segui questi passaggi:

1.    Crea un volume EBS dallo snapshot.

2.    Avvia un'istanza Linux EC2 nella stessa zona di disponibilità del volume che hai creato.

3.    Collega il volume all'istanza.

4.    Connettiti alla tua istanza Linux.

5.    Installa l'AWS CLI sulla tua istanza Linux.

6.    Esegui il comando seguente per montare il volume sulla tua istanza:

$ sudo mount /dev/xvdf /mnt

Nota: il dispositivo (/dev/xvdf, nell'esempio precedente) potrebbe essere collegato all'istanza con un nome di dispositivo diverso. Usa il comando lsblk per visualizzare i dispositivi su disco disponibili insieme ai relativi punti di montaggio per determinare i nomi corretti dei dispositivi.

7.    Installa il pacchettopv per monitorare i progressi durante la creazione dell'archivio tar:

Distribuzioni Amazon Linux e Red Hat Enterprise Linux (RHEL)

$ sudo yum install pv

Nota: prima di installare il pacchetto pv per le distribuzioni Amazon Linux e RHEL, devi attivare il repository Extra Packages for Enterprise Linux (EPEL). In che modo posso abilitare il repository EPEL per l'istanza Amazon EC2 che esegue CentOS, RHEL o Amazon Linux?

Distribuzioni basate su Ubuntu e Debian

$ sudo apt install pv

8.    Esegui il comando seguente per copiare i dati del volume EBS nel tuo bucket S3:

$ tar c /mnt | pv -s $(($(du -sk /mnt | awk '{print $1}') * 1024)) | gzip | aws s3 cp - "s3://my-bucket/backup1.tar.gz"

Nota: il comando precedente crea un file compresso dalla directory /mnt e carica il file nel bucket S3 denominato my-bucket. Sostituisci my-bucket con il nome del tuo bucket S3 e backup1 con il nome del tuo file.

9.    Usa la console Amazon S3 per confermare che il file compresso sia stato caricato nel tuo bucket S3.

10.    Esegui il seguente comando per smontare il volume:

$ sudo umount /mnt

11.    Scollega il volume EBS dall'istanza Linux.

12.    Elimina il volume e termina l'istanza.


Informazioni correlate

Copia di uno snapshot di Amazon EBS

AWS UFFICIALE
AWS UFFICIALEAggiornata 4 mesi fa