Sincronizzazione dei dati con lo storage degli oggetti

Puoi sincronizzare i dati in entrambi i modi tra un file system Lustre e un bucket di storage degli oggetti. Estrarre i dati dallo storage degli oggetti in Lustre (importare i dati) quando è necessario un accesso ad alta velocità per la formazione AI o l'elaborazione dei dati. Al termine, eseguire il push dei risultati nello storage degli oggetti (dati di esportazione) per uno storage a lungo termine a costi contenuti.

Per impostare questa sincronizzazione bidirezionale, collegare una directory Lustre a un bucket di storage degli oggetti. Utilizzare questo collegamento per importare gli oggetti dallo storage degli oggetti in Lustre e esportare i file da Lustre allo storage degli oggetti in base alle esigenze.

L'avvio di un'importazione o un'esportazione crea un processo. Ogni job ha un ID univoco che può essere utilizzato per visualizzare i dettagli.

Quando si avvia un job di importazione o esportazione, vengono copiati tutti i file modificati e i relativi metadati.

Requisiti indispensabili

Prima di impostare la sincronizzazione degli oggetti Lustre con lo storage degli oggetti, assicurarsi che:
  • Hai almeno un bucket di storage degli oggetti nella stessa area e tenancy del file system Lustre. Importazione ed esportazione tra più aree o cross-tenancy non supportate.
  • Il file system Lustre dispone di spazio libero sufficiente per contenere le importazioni di dati dallo storage degli oggetti.
  • Vengono configurate tutte le autorizzazioni IAM richieste.

Considerazioni

Tieni presente questi punti quando sincronizzi i file tra Lustre e lo storage degli oggetti:
  • File di copia solo nuovi e modificati job: alla prima esportazione di un collegamento, tutti i file nel file system Lustre vengono copiati nel bucket di storage degli oggetti perché tutto è nuovo. Gli elementi che esistevano nel bucket prima dell'esportazione non vengono modificati. Per le esportazioni successive, vengono copiati solo i file nuovi o aggiornati dall'ultimo job. Non viene eseguito il mirroring delle eliminazioni in nessuna delle due direzioni.
  • Collegamenti rigidi e modifiche solo metadati non copiate: i job di importazione o esportazione non copiano i file se sono stati modificati solo i relativi metadati (ad esempio un UID o un'ora di modifica) dall'ultimo job. Inoltre, ricorda che se hai file che condividono contenuti tramite collegamenti fisici, ognuno viene trattato come un file separato durante l'importazione e l'esportazione - in modo da perdere il collegamento fisico tra di loro.
  • Singola area e tenancy: è possibile importare ed esportare solo file tra bucket di storage degli oggetti e file system Lustre che si trovano nella stessa area e tenancy. Non è possibile importare o esportare tra aree o tenancy.
  • Limitazione job singolo: è possibile eseguire un solo job di importazione o esportazione alla volta per file system. Se molti collegamenti appartengono allo stesso file system, i relativi job non possono essere eseguiti contemporaneamente. Tuttavia, i job su file system diversi possono essere eseguiti contemporaneamente.
  • Limite di 10 collegamenti: è possibile creare al massimo 10 collegamenti allo storage degli oggetti per ogni file system Lustre. Se hai bisogno di altri collegamenti, contatta il supporto.
  • Modifica dei collegamenti: è possibile modificare i collegamenti per aggiornare queste proprietà: nome, compartimento di storage degli oggetti, tag e se sovrascrivere o saltare i file in conflitto. Per apportare altre modifiche, eliminare il collegamento e crearne uno nuovo.
  • Periodo di raffreddamento dell'espansione: a volte, potrebbe essere necessario espandere il file system Lustre per contenere i dati dello storage degli oggetti. Un raffreddamento di sei ore si applica tra ogni espansione consecutiva del file system Lustre per la stessa risorsa. Se si effettua una richiesta di espansione entro questo periodo di raffreddamento, viene rifiutata.
  • Impatto sulle prestazioni: la sincronizzazione dei file tra lo storage degli oggetti e Lustre consuma larghezza di banda e potrebbe influire leggermente sulle prestazioni di Lustre durante il processo di sincronizzazione.

Procedure ottimali

Di seguito sono riportate alcune best practice da seguire per la sincronizzazione dei file tra Lustre e lo storage degli oggetti.
  • Conserva percorsi univoci: quando crei lo storage degli oggetti, non utilizzare percorsi sovrapposti, in cui parti della directory Lustre o del percorso del bucket di storage degli oggetti sono già utilizzate da un altro collegamento per lo stesso file system. I collegamenti sovrapposti possono portare a copie in profondità e a una struttura di directory indesiderabile.

    Ad esempio, collegare /mnt/lustre/projectA a mybucket/projectA e /mnt/lustre/projectB a mybucket/projectB. Ciò è corretto perché il collegamento utilizza un percorso Lustre univoco e un prefisso del bucket di storage degli oggetti univoco.

    Non collegare /mnt/lustre/project a mybucket/projects e /mnt/lustre/project/reports a mybucket/project/reports perché la cartella reports viene mappata due volte, causando sincronizzazioni duplicate, nidificazione imprevista e conflitti.

  • Non modificare o utilizzare cartelle sincronizzate durante un job di sincronizzazione: attendere il termine del job di sincronizzazione (importazione o esportazione) prima di aggiungere, rimuovere, spostare, rinominare o modificare i file o le cartelle all'interno della cartella da sincronizzare. La modifica dei file mentre è in corso un job di sincronizzazione può portare a risultati imprevisti, ad esempio file ignorati o sovrascritti.

Cifratura dati

Ecco come vengono cifrati i dati nel trasferimento bidirezionale tra Lustre e lo storage degli oggetti:
  • Dati in transito: tutti i dati trasferiti tra Lustre e Object Storage vengono cifrati durante il transito.
  • Dati in archivio: i dati importati vengono cifrati in archivio utilizzando la cifratura dei volumi a blocchi e i dati esportati nello storage degli oggetti utilizzano i meccanismi di cifratura dello storage degli oggetti.