Spostamento dei dati tra i bucket
Trasferisci i dati tra i bucket IBM Cloud® Object Storage nella stessa regione o in regioni diverse utilizzando rclone per sincronizzare gli oggetti con caricamenti multipart paralleli.
A un certo punto, diventa necessario spostare o eseguire il backup dei dati in una regione IBM Cloud® Object Storage diversa. Un approccio per spostare o replicare i dati tra diverse regioni di object storage consiste nell’utilizzare uno strumento
di sincronizzazione o clonazione, come l’utilità a riga rclone di comando open source. Questo programma di utilità sincronizza una struttura ad albero di file
tra due ubicazioni, inclusa l'archiviazione oggetti cloud. Quando rclone scrive dati su Object Storage, utilizza l’API COS/S3 per segmentare oggetti di grandi dimensioni e carica le parti in parallelo in base alle dimensioni e alle
soglie impostate come parametri di configurazione.
Questa guida fornisce istruzioni per copiare i dati da un bucket IBM Cloud Object Storage a un altro bucket Object Storage all’interno della stessa regione o a un secondo bucket Object Storage in una regione Object Storage diversa. Questa procedura
deve essere ripetuta per tutti i dati che desideri copiare da ogni bucket. Una volta completata la migrazione dei dati, è possibile verificare l'integrità del trasferimento utilizzando rclone check, che genera un elenco di tutti
gli oggetti che non corrispondono né alla dimensione del file né al checksum. Inoltre, puoi mantenere sincronizzati i bucket eseguendo in modo regolare rclone sync dalle tue origini disponibili alle destinazioni di tua scelta.
Crea un bucket IBM Cloud Object Storage di destinazione
Hai l'opzione di utilizzare la tua istanza esistente di IBM Cloud Object Storage o di crearne una nuova. Se desideri riutilizzare la tua istanza esistente, vai al passo #2.
- Puoi creare un'istanza di IBM Cloud Object Storage dal catalogo.
- Crea tutti i bucket di cui hai bisogno per archiviare i tuoi dati trasferiti. Leggi attentamente la guida introduttiva per familiarizzare con i concetti chiave come endpoint e classi di archiviazione.
- L'utilità
rclonenon copia alcuna configurazione dei bucket né i metadati degli oggetti. Pertanto, se si utilizza una qualsiasi delle funzionalità di Object Storage, quali scadenza, archiviazione, protezione delle chiavi e così via, assicurarsi di configurarle correttamente prima di migrare i dati. Per verificare quali funzionalità sono supportate nella tua destinazione Object Storage, consulta la tabella delle funzionalità.
La documentazione sulla configurazione della funzione e sulle politiche di accesso può essere visualizzata nelle pagine del portale IBM Cloud elencate qui di seguito:
Configura una risorsa di calcolo per eseguire lo strumento di migrazione.
- Scegliete un computer Linux™/macOS™ /BSD™ oppure un server bare metal o virtuale di IBM Cloud Infrastructure che si trovi il più vicino possibile ai vostri dati. Scegliere un data center nella stessa regione del bucket di destinazione è generalmente
la scelta migliore (ad esempio, se si spostano dati da
mel01aau-syd, utilizzare una VM o un server bare metal inau-syd). Ti consigliamo la seguente configurazione: 32 GB di RAM, 2-4 processori core e velocità di rete privata di 1000 Mbps. - Se si esegue la migrazione su un server bare metal o virtuale dell' IBM Cloud Infrastructure, utilizzare gli endpoint privati Object Storage per evitare costi di traffico in uscita dalla rete.
- In caso contrario, utilizzare gli endpoint pubblici o diretti Object Storage.
- Installare
rclonetramite un gestore di pacchetti o un binario precompilato.
curl https://rclone.org/install.sh | sudo bash
Configurazione rclone per i dati di origine Object Storage
Crea dei 'profili' per l'origine e la destinazione della migrazione in rclone.
Se necessario, procurarsi le credenziali Object Storage
- Seleziona la tua istanza Object Storage nella console IBM Cloud.
- Fai clic su Credenziali del servizio nel riquadro di navigazione.
- Fai clic su Nuova credenziale per generare le informazioni sulla credenziale.
- Seleziona le opzioni Avanzate.
- Attiva le credenziali HMAC selezionando Attivo.
- Fai clic su Aggiungi.
- Visualizza la credenziale che hai creato e copia il contenuto JSON.
Ottieni l'endpoint Object Storage
- Fai clic su Bucket nel riquadro di navigazione.
- Fai clic sul bucket di destinazione della migrazione.
- Fai clic su Configurazione nel riquadro di navigazione.
- Scorri verso il basso fino alla sezione Endpoint e scegli l'endpoint in base a dove stai eseguendo lo strumento di migrazione.
- Creare la destinazione Object Storage copiando quanto segue e incollandolo in
rclone.conf.
[COS_SOURCE]
type = s3
provider = IBMCOS
env_auth = false
access_key_id =
secret_access_key =
endpoint =
Utilizza [COS_DESTINATION] come nome del profilo che devi creare per configurare la destinazione. Ripeti la seguente procedura,
Utilizzando le tue credenziali e l'endpoint desiderato, completa i seguenti campi:
access_key_id = <access_key_id>
secret_access_key = <secret_access_key>
endpoint = <bucket endpoint>
Configurazione rclone per i dati di destinazione Object Storage
Ripeti la precedente procedura per i bucket di destinazione.
Verifica che l'origine e la destinazione siano configurate correttamente
- Elenca i bucket associati all'origine per verificare che
rclonesia configurato correttamente.
rclone lsd COS_SOURCE:
- Elenca i bucket associati alla destinazione per verificare che
rclonesia configurato correttamente.
rclone lsd COS_DESTINATION:
Se si utilizza la stessa istanza di Object Storage sia per l'origine che per la destinazione, gli elenchi dei bucket corrispondono.
Esegui rclone
- Testare la configurazione con un'esecuzione a secco (in cui non vengono copiati dati) di
rcloneper verificare la copia degli oggetti nel bucket di origine (ad esempio,source-test) nel bucket di destinazione (ad esempio,destination-test), dovesource-testedestination-testsono i rispettivi nomi dei bucket di origine e di destinazione.
rclone --dry-run copy COS_SOURCE:source-test COS_DESTINATION:destination-test
- Controlla che i file che desideri migrare siano visualizzati nell'output del comando. Se tutto sembra a posto, rimuovi l'indicatore
--dry-rune aggiungi facoltativamente l'indicatore-ve/o-Pper copiare i dati e tenere traccia dei progressi. L'utilizzo dell'indicatore--checksumfacoltativo evita l'aggiornamento di tutti i file con gli stessi hash MD5 e dimensione oggetto in entrambe le ubicazioni.
rclone -v -P copy --checksum COS_SOURCE:source-test COS_DESTINATION:destination-test
Prova a sfruttare al massimo la CPU, la memoria e la rete sulla macchina che esegue rclone per ottenere il tempo di trasferimento più veloce.
Ci sono altri parametri da prendere in considerazione quando ottimizzi rclone. Le diverse combinazioni di questi valori influiscono sulla CPU, sulla memoria e sui tempi di trasferimento degli oggetti presenti nel bucket.
| Indicatore | Immettere | Descrizione |
|---|---|---|
--checkers |
int |
Numero di programmi di controllo da eseguire in parallelo (il valore predefinito è 8). Questo è il numero di checksum che confrontano i thread in esecuzione. Ti consigliamo di aumentarlo a 64 o più. |
--transfers |
int |
Questo è il numero di oggetti da trasferire in parallelo (il valore predefinito è 4). Si consiglia di aumentare questo valore a 64, 128 o più quando si trasferiscono molti file di piccole dimensioni. |
--multi-thread-streams |
int |
Scarica file di grandi dimensioni (> 250M) in più parti in parallelo. Ciò migliora il tempo di download dei file di grandi dimensioni (impostazione predefinita 4). |
--s3-upload-concurrency |
int |
Il numero di parti dei file di grandi dimensioni (> 200M) da caricare in parallelo. Ciò migliora il tempo di caricamento dei file di grandi dimensioni (impostazione predefinita 4). |
{: caption="Opzioni di rclone " caption-side="top"} |
La migrazione dei dati tramite rclone copy copia ma non elimina i dati di origine.
Il processo di copia dovrebbe essere ripetuto per tutti gli altri bucket di origine che richiedono migrazione/copia/backup.