Importare dati da Archiviazione BLOB di Azure

Managed Lustre di Azure si integra con Archiviazione BLOB di Azure per semplificare il processo di importazione dei dati da un contenitore blob in un file system. È possibile configurare questa integrazione durante la creazione del cluster ed è possibile creare un processo di importazione in qualsiasi momento dopo la creazione del cluster.

Questo articolo illustra due metodi per l'importazione dei dati:

Note

Quando si importano dati da un contenitore BLOB in un file system lustre gestito di Azure, solo i nomi di file (spazio dei nomi) e i metadati vengono importati nello spazio dei nomi del file system Lustre.

Il contenuto effettivo di un BLOB viene importato quando un client accede per la prima volta al file. Quando si accede per la prima volta ai dati, si verifica un lieve ritardo mentre la funzionalità Lustre Hierarchical Storage Management (HSM) esegue il pull del contenuto del BLOB nel file corrispondente nel file system. Questo ritardo si verifica solo la prima volta che si accede a un file.

È possibile precaricare i contenuti di un contenitore blob usando il comando Lustre lfs hsm_restore da un client con le funzionalità sudo montato. Per altre informazioni, vedere Ripristinare i dati dall'archivio BLOB.

Limitations

Le limitazioni seguenti si applicano alle operazioni di importazione:

  • È possibile eseguire un solo processo di integrazione BLOB alla volta. Questa limitazione include l'importazione manuale, l'esportazione manuale, l'importazione automatica e i processi di esportazione automatica.
  • L'importazione automatica richiede il feed delle modifiche di Archiviazione BLOB di Azure. Il feed di modifiche non supporta gli account di archiviazione con spazio dei nomi gerarchico abilitato e il periodo di conservazione deve essere di almeno sette giorni.
  • Non usare i comandi lfs hsm_* durante l'importazione automatica. In questo modo possono verificarsi problemi di coerenza tra il contenitore BLOB e il file system Lustre.
  • Le eliminazioni di importazione automatica sono unidirezionale, da gestione rete virtuale di Azure a Lustre e si applicano solo alle modifiche che si verificano dopo l'abilitazione dell'importazione automatica. Le eliminazioni che si sono verificate prima dell'abilitazione non vengono rimosse durante l'analisi di sincronizzazione completa iniziale.

Prerequisites

Attività di importazione manuale

Un processo di importazione manuale consente di importare dati da un contenitore BLOB in un file system di Managed Lustre di Azure esistente quando vuoi.

Note

È possibile eseguire un solo processo di importazione o esportazione alla volta. Ad esempio, se è in corso un processo di importazione e si tenta di avviare un altro processo di importazione o esportazione, viene visualizzato un errore.

Configurare le opzioni di importazione e avviare il processo

Per configurare le opzioni di importazione e avviare il processo, seguire questa procedura:

  1. Nel portale di Azure, apri il file system Managed Lustre di Azure. In Impostazioni selezionare Integrazione BLOB.

  2. Selezionare + Crea nuova attività.

  3. Selezionare Importa dal menu a discesa Tipo di lavoro.

  4. Immettere un nome per il processo di importazione nel campo Nome processo .

  5. Selezionare un valore per il campo Modalità di risoluzione dei conflitti . Questa impostazione determina il modo in cui il processo di importazione gestisce i conflitti tra i file esistenti nel file system e i nuovi file importati. In questo esempio selezionare Ignora. Per altre informazioni, vedere Configurare le opzioni di importazione.

  6. Selezionare un valore per Tolleranza di errore. Questa impostazione determina il modo in cui il processo di importazione gestisce gli errori che si verificano durante il processo di importazione. In questo esempio selezionare Consenti errori. Per altre informazioni, vedere Configurare le opzioni di importazione.

  7. Per filtrare i dati che stai importando da gestione rete virtuale di Azure, inserisci i prefissi di importazione. Il portale di Azure consente di immettere fino a 10 prefissi. In questo esempio specificare i prefissi /data e /logs. Per altre informazioni, vedere Configurare le opzioni di importazione.

  8. Dopo aver configurato il processo, selezionare Avvia per avviare il processo di importazione.

Lo screenshot seguente mostra le impostazioni di configurazione del processo di importazione nel portale di Azure.

Screenshot che mostra le impostazioni del portale per creare un processo di importazione.

Prefisso di importazione

Quando si importano dati da un contenitore BLOB, è possibile specificare facoltativamente uno o più prefissi per filtrare i dati importati nel file system lustre gestito di Azure. I nomi di file nel contenitore BLOB che corrispondono a uno dei prefissi vengono aggiunti a un record di metadati nel file system. Quando un client accede per la prima volta a un file, il sistema recupera il contenuto dal contenitore BLOB e lo archivia nel file system.

Nel portale di Azure usare i campi Prefisso importazione nella scheda Avanzate durante la creazione del cluster per specificare i dati da importare dal contenitore BLOB. Questi campi si applicano solo al processo di importazione iniziale. Non è possibile modificare il prefisso di importazione dopo la creazione del cluster.

Per un processo di importazione, è possibile specificare prefissi di importazione quando si crea il processo. Dal portale di Azure, è possibile specificare i prefissi di importazione nei campi Prefisso di importazione. È anche possibile specificare il prefisso di importazione quando si usa l'API REST per creare un processo di importazione.

Quando si specificano prefissi di importazione, tenere presenti le considerazioni seguenti:

  • Il prefisso di importazione predefinito è /. Questo comportamento predefinito importa il contenuto dell'intero contenitore BLOB.
  • Se si specificano più prefissi, i prefissi non devono sovrapporsi. Ad esempio, se si specifica /data e /data2, il processo di importazione ha esito negativo perché i prefissi si sovrappongono.
  • Se il contenitore BLOB si trova in un account di archiviazione con spazio dei nomi gerarchico abilitato, è possibile considerare il prefisso come percorso del file. Il sistema include elementi sotto il percorso nel file system Managed Lustre di Azure.
  • Se il contenitore BLOB si trova in un account di archiviazione con uno spazio dei nomi non gerarchico (o flat), è possibile considerare il prefisso di importazione come stringa di ricerca confrontata dal sistema con l'inizio del nome del BLOB. Se il nome di un BLOB nel contenitore inizia con la stringa specificata come prefisso di importazione, il sistema rende il file accessibile nel file system. Lustre è un file system gerarchico e i caratteri / nei nomi BLOB diventano delimitatori di directory quando il sistema li archivia in Lustre.

Modalità di risoluzione dei conflitti

Quando si importano dati da un contenitore BLOB, è possibile specificare come gestire i conflitti tra il contenitore BLOB e il file system. Questa opzione si applica solo ai processi di importazione eseguiti per i cluster esistenti. La tabella seguente illustra le modalità di risoluzione dei conflitti disponibili e le relative descrizioni:

Mode Description
fail Se viene rilevato un conflitto, il processo di importazione viene immediatamente interrotto con un errore.
skip Se viene rilevato un conflitto, il processo di importazione ignora il file.
overwrite-dirty Il processo di importazione valuta un percorso in conflitto per verificare se deve essere eliminato e reimportato. Per altre informazioni, vedi overwrite-dirty modalità.
overwrite-always Il processo di importazione valuta un percorso in conflitto e elimina sempre o reimporta se è dirty o rilascia se è pulito. Per altre informazioni, vedi overwrite-always modalità.

Modalità di sovrascrittura delle modifiche non salvate

La overwrite-dirty modalità valuta un percorso in conflitto per verificare se deve essere eliminato e reimportato. A livello generale, la modalità overwrite-dirty controlla lo stato dell'HSM.

Se lo stato del modulo di protezione hardware è Clean e Archived (il file system Lustre rileva che i dati sono sincronizzati con il contenitore BLOB), aggiorna solo gli attributi, se necessario. In caso contrario, elimina il file e lo reimporta dal contenitore BLOB.

Quando si controlla lo stato dell'HSM, non è garantito che il file nel file system Lustre corrisponda al file nel blob container. Se è necessario assicurarsi che il file nel file system Lustre corrisponda quanto più possibile al file nel contenitore blob, usare la modalità overwrite-always.

Modalità sovrascrivi sempre

La modalità overwrite-always valuta un percorso in conflitto ed elimina o reimporta se è stato modificato, oppure lo rilascia se non è stato modificato. Questa modalità è utile quando si vuole assicurarsi che il file system sia sempre sincronizzato con il contenitore BLOB. È anche l'opzione più costosa, perché ripristina o elimina e reimporta ogni file ripristinato in precedenza al primo accesso.

Tolleranza di errore

Quando si importano dati da un contenitore BLOB, è possibile specificare la tolleranza di errore. Il livello di tolleranza di errore determina il modo in cui il processo di importazione gestisce gli errori temporanei che si verificano durante il processo di importazione, ad esempio errori del sistema operativo o interruzioni di rete. Gli errori in questo contesto non fanno riferimento a conflitti di file, gestiti dalla modalità di risoluzione dei conflitti.

Per i processi di importazione sono disponibili le opzioni di tolleranza di errore seguenti:

  • Non consentire errori (impostazione predefinita): il processo di importazione ha esito negativo immediatamente se si verifica un errore durante l'importazione.
  • Consenti errori: il processo di importazione continua se si verifica un errore e viene registrato l'errore. Al termine del processo di importazione, è possibile visualizzare gli errori nel contenitore di registrazione.

Considerazioni per i processi di importazione di blob

Gli elementi seguenti sono importanti da considerare quando si importano dati da un contenitore BLOB:

  • È possibile eseguire una sola azione di importazione o esportazione alla volta. Ad esempio, se è in corso un processo di importazione e si tenta di avviare un altro processo di importazione, viene visualizzato un errore.
  • È possibile annullare i processi di importazione. È possibile annullare un processo di importazione avviato in un cluster esistente o un processo di importazione avviato durante la creazione del cluster.
  • La distribuzione del cluster può concludersi con esito positivo prima che il processo di importazione corrispondente sia completato. Il processo di importazione continua a essere eseguito in background. È possibile monitorare lo stato di avanzamento del processo di importazione nei modi seguenti:
    • portale di Azure: il portale di Azure visualizza lo stato del processo di importazione. Passare al file system e selezionare Integrazione BLOB per visualizzare lo stato del processo di importazione.
    • File di Lustre nella directory radice: durante l'importazione viene creato nella directory radice di Lustre un file con un nome simile a /lustre/IMPORT_<state>.<timestamp_start>. Il <state> segnaposto cambia man mano che l'importazione avanza. Il file viene eliminato al termine del processo di importazione.
  • Per visualizzare i dettagli su un processo di importazione completato, controllare il contenitore dei log. Il contenitore di registrazione contiene i log per il processo di importazione, inclusi eventuali errori o conflitti che si sono verificati durante l'importazione.
  • Se il processo di importazione non riesce per qualsiasi motivo, è possibile che non siano presenti statistiche complete sul processo di importazione, ad esempio il numero di file importati o il numero di conflitti.

Monitoraggio del job di importazione manuale

Dopo aver creato il processo di importazione, monitorare lo stato di avanzamento per assicurarsi che venga completato correttamente.

Per visualizzare i dettagli del processo, seguire questa procedura:

  1. Nel portale di Azure, apri il file system Managed Lustre di Azure. In Impostazioni selezionare Integrazione BLOB.
  2. Selezionare il processo di importazione da monitorare dall'elenco dei processi recenti.
  3. Visualizzare il riquadro Dettagli processo per informazioni sul processo, tra cui lo stato del processo, l'ora di inizio, i BLOB importati e gli eventuali errori o conflitti che si sono verificati durante il processo di importazione.

Il seguente screenshot mostra i dettagli dell'incarico per un processo di importazione nel portale di Azure.

Screenshot che mostra i dettagli per un lavoro di importazione.

Al termine del processo, visualizzare il contenitore dei log per visualizzare informazioni dettagliate sul processo di importazione, inclusi eventuali errori o conflitti che si sono verificati. Queste informazioni sono disponibili solo al termine del processo.

Importazione automatica

La funzionalità di importazione automatica in Lustre gestita di Azure consente una facile sincronizzazione dei dati da un contenitore di Archiviazione BLOB di Azure in un cluster Lustre gestito di Azure. Usando questa funzionalità, è possibile considerare gestione rete virtuale di Azure come livello ad accesso sporadico e Managed Lustre di Azure come livello caldo ad alte prestazioni. Questo metodo riflette automaticamente le modifiche apportate nell'archivio BLOB all'interno dello spazio dei nomi Lustre.

Funzionamento della funzionalità di importazione automatica

La funzionalità di importazione automatica in Managed Lustre di Azure monitora continuamente le modifiche nel contenitore di Archiviazione BLOB di Azure associato usando la funzionalità Archiviazione BLOB di Azure change feed.

In base ai criteri di importazione configurati, aggiorna il contenuto dello spazio dei nomi Lustre gestito di Azure per riflettere queste modifiche. La funzionalità di importazione automatica offre agli utenti un processo di replica dei dati facile e automatizzato.

Dopo aver creato il job, il processo di importazione automatica è costituito da due fasi:

  1. La prima fase è l'analisi di sincronizzazione completa . L'analisi di sincronizzazione completa confronta lo spazio dei nomi del contenitore BLOB con lo spazio dei nomi Lustre gestito di Azure e importa tutti i file nuovi o modificati nello spazio dei nomi Lustre gestito di Azure.

  2. La seconda fase è l'analisi della sincronizzazione BLOB . L'analisi di sincronizzazione BLOB inizia al termine dell'analisi di sincronizzazione completa. La scansione di sincronizzazione dei BLOB monitora continuamente il feed delle modifiche per aggiornamenti, importando file nuovi o modificati ed elaborando eliminazioni nel namespace Managed Lustre di Azure.

Per informazioni dettagliate sui prezzi, vedere la documentazione del feed di modifiche.

Prerequisiti per l'importazione automatica

Configura l'importazione automatica

La funzionalità di importazione automatica è abilitata su un file system Managed Lustre di Azure esistente con un gestione rete virtuale di Azure associato configurato. Configurare l'importazione automatica nelle impostazioni di integrazione BLOB nel portale di Azure.

Per creare un nuovo processo di importazione automatica, seguire questa procedura:

  1. Nel portale di Azure, apri il file system Managed Lustre di Azure. In Impostazioni selezionare Integrazione BLOB.

  2. Selezionare + Crea nuova attività.

  3. Nel menu a discesa Tipo di lavoro, selezionare Importazione automatica.

  4. Immettere un nome per il processo di importazione nel campo Nome processo .

  5. Selezionare un valore per il campo Modalità di risoluzione dei conflitti . Questa impostazione determina il modo in cui il processo di importazione gestisce i conflitti tra i file esistenti nel file system e i file importati. In questo esempio selezionare Ignora. Per altre informazioni, vedere Modalità di risoluzione dei conflitti.

  6. Per filtrare i dati da Archiviazione BLOB, immettere prefissi di importazione. Il portale di Azure consente di immettere fino a 10 prefissi. In questo esempio specificare i prefissi /data e /logs. Per altre informazioni, vedere Importare il prefisso.

  7. Decidere se si desidera selezionare Abilita eliminazioni, che consente la propagazione delle eliminazioni da Archiviazione BLOB di Azure a Managed Lustre di Azure.

  8. Dopo aver configurato il processo, avviare il processo di importazione selezionando Avvia.

Monitorare e gestire la funzionalità di importazione automatica

Dopo aver creato il processo di importazione automatica, monitorare lo stato di avanzamento nel portale di Azure.

Il riquadro Integrazione BLOB visualizza i dettagli delle attività di importazione nella sezione Processi recenti , inclusi lo stato dei processi e delle metriche recenti correlati alla sincronizzazione automatica.

Per annullare il processo in corso, selezionare il collegamento Annulla per tale processo nella tabella Processi recenti . Il collegamento Annulla è disponibile solo per il processo di importazione automatica corrente.

Per visualizzare le metriche di un processo di importazione automatica, selezionare il nome del processo. Il riquadro Metriche viene visualizzato sul lato destro del portale.

Metriche di importazione automatica

Le metriche sono raggruppate in due categorie principali, sincronizzazione completa e sincronizzazione BLOB.

Statistiche di sincronizzazione completa Statistiche per la fase iniziale di sincronizzazione completa dell'importazione automatica
File importati Numero di file importati correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato durante la fase di sincronizzazione completa iniziale.
Directory importate Numero di directory importate correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato durante la fase di sincronizzazione completa iniziale.
Collegamenti simbolici importati Numero di collegamenti simbolici importati correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato durante la fase di sincronizzazione completa iniziale.
File preesistenti Numero di file con lo stesso percorso e lo stesso nome già esistenti nello spazio dei nomi Lustre. I file contengono già gli stessi dati e metadati previsti nei BLOB corrispondenti.
Directory preesistenti Numero di directory incontrate nello spazio dei nomi Lustre durante la fase iniziale di sincronizzazione completa che già contengono i metadati previsti come BLOB corrispondente.
Collegamenti simbolici preesistenti Numero di collegamenti simbolici rilevati nello spazio dei nomi Lustre durante la fase di sincronizzazione completa iniziale che contengono già i metadati e l'obiettivo previsti come oggetto BLOB corrispondente.
Totale dei BLOB importati Numero di BLOB importati nello spazio dei nomi Lustre dal contenitore BLOB durante la fase di sincronizzazione completa iniziale. Il numero è un superset di file, directory e collegamenti simbolici importati.
Frequenza di importazione BLOB Conteggio per secondo dei blob importati da blob a Lustre durante la fase di sincronizzazione completa iniziale.
Totale BLOB analizzati Numero di BLOB analizzati durante la fase di sincronizzazione completa.
Tasso di Blob Walk Conteggio al secondo dei BLOB analizzati durante la fase di sincronizzazione completa.
Totale conflitti Numero di incontri con BLOB con lo stesso percorso e nome di un oggetto esistente nello spazio dei nomi Lustre, ma che differiscono in termini di una o più aree, inclusi il tipo di oggetto, i dati e i metadati.
Errori totali Numero totale di errori nel tentativo di importare i BLOB nel file system Lustre durante la fase iniziale di sincronizzazione completa. Selezionare questo collegamento per passare alla pagina Contenitore di registrazione per visualizzare i log associati a questo processo di importazione automatica.
Statistiche di sincronizzazione BLOB Statistiche sulle attività correlate al monitoraggio del feed di modifiche
File importati Numero di file importati correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato dopo la fase di sincronizzazione completa iniziale.
Directory importate Numero di directory importate correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato dopo la fase di sincronizzazione completa iniziale.
Collegamenti simbolici importati Numero di collegamenti simbolici importati correttamente nello spazio dei nomi Lustre dal contenitore BLOB associato dopo la fase di sincronizzazione completa iniziale.
File preesistenti Numero di file con lo stesso percorso e nome che esistono già nello spazio dei nomi di Lustre dopo la fase iniziale di sincronizzazione completa e che contengono già i dati e i metadati previsti corrispondenti al blob equivalente.
Directory preesistenti Numero di directory rilevate nello spazio dei nomi Lustre dopo la fase di sincronizzazione completa iniziale che contengono già i metadati previsti come il blob corrispondente.
Collegamenti simbolici preesistenti Numero di collegamenti simbolici rilevati nello spazio dei nomi Lustre dopo la fase di sincronizzazione iniziale completa che già includono sia i metadati previsti sia la destinazione come BLOB corrispondente.
Totale dei BLOB importati Numero di BLOB importati nello spazio dei nomi Lustre dal contenitore BLOB dopo la fase di sincronizzazione completa iniziale. Il numero è un superset di file, directory e collegamenti simbolici importati.
Frequenza di importazione BLOB Conteggio dei blob importati al secondo dal blob al file system Lustre dopo la fase iniziale di sincronizzazione completa.
Eliminazioni Numero di file eliminati durante la fase di sincronizzazione BLOB.
Totale conflitti Numero di incontri con BLOB che hanno lo stesso percorso e lo stesso nome di un oggetto esistente nello spazio dei nomi Lustre dopo la fase iniziale di sincronizzazione completa, ma che differiscono in una o più aree. Ad esempio, il tipo di oggetto, dati e metadati.
Errori totali Numero totale di errori di importazione dopo la fase di sincronizzazione completa iniziale. Selezionare questo collegamento per passare alla pagina Contenitore di registrazione per visualizzare i log associati a questo processo di importazione automatica.
Ora di consumo dell'ultimo evento del feed delle modifiche Marca temporale dell'ultimo evento del feed di modifiche elaborato per questo processo di importazione automatica.
Ultima sincronizzazione completa Timestamp più recente quando tutti gli eventi del feed di modifiche sono stati elaborati per questo processo di importazione automatica.

Considerazioni e procedure consigliate per l'importazione automatica

Quando si usa l'importazione automatica, prendere in considerazione le procedure consigliate seguenti per garantire un funzionamento senza problemi:

  • Esaminare il comportamento della funzionalità del feed di modifiche, in particolare le specifiche.
  • L'importazione automatica dipende dal feed di modifiche. È limitato alla tempestività degli eventi pubblicati nel feed di modifiche. Il feed di modifiche suggerisce attualmente che gli eventi vengono pubblicati "entro pochi minuti".

Ecco le procedure consigliate per le eliminazioni:

  • Durante l'analisi iniziale, ritardare le modifiche (incluse le eliminazioni). Applicare eventuali eventi del feed di modifiche, incluse le eliminazioni, che si verificano durante l'esecuzione dell'analisi iniziale dopo il termine dell'analisi. Si prevede un periodo temporaneo in cui il file system Lustre potrebbe ancora mostrare i file eliminati nel contenitore BLOB durante l'analisi.

  • Il comportamento di eliminazione è associato in modo esplicito alla modalità di conflitto selezionata. La tabella seguente illustra il comportamento per ogni modalità quando l'opzione Abilita eliminazioni è abilitata:

    Il file è stato modificato precedentemente in Lustre? Modalità di risoluzione dei conflitti Eseguire l'eliminazione?
    Yes Sovrascrivere se modificato Yes.
    Yes Salta No. Il file rimane in Lustre.
    No Sovrascrivere se modificato Yes.
    No Salta Yes.