データをAzure Blob Storageにエクスポートする

Azure Managed Lustre ファイル システムからAzure Blob Storageの長期ストレージにデータをコピーできます。 この記事では、データをエクスポートする 2 つの方法について説明します。

  • 手動エクスポート ジョブ — 1 回限りのエクスポート ジョブを使用してオンデマンドでデータをエクスポートします。
  • 自動エクスポート — 新しいファイルと変更されたファイルをファイル システムから自動的にBlob Storageに継続的に同期します。

Note

エクスポート ジョブは、ファイル システムの作成時に Azure Blob Storage を Azure Managed Lustre ファイル システムと統合する場合にのみ使用できます。 詳細については、 Azure Blob Storage の統合に関するページを参照してください。 ファイル システムの作成時に BLOB コンテナーを統合しなかった場合は、クライアント ファイル システム コマンドを使用して、エクスポート ジョブを作成せずにデータをコピーできます。

Limitations

エクスポート操作には、次の制限事項が適用されます。

  • 一度に実行できるインポートまたはエクスポート アクションは 1 つだけです。 たとえば、エクスポート ジョブが進行中で、別のエクスポート ジョブを開始しようとすると、エラーが発生します。
  • エクスポート ジョブは、新規または変更されたファイルのみをコピーします。 ファイル システムの作成中に BLOB コンテナーからインポートしたファイルが変更されていない場合、エクスポート ジョブではそのファイルはエクスポートされません。
  • メタデータが変更されたファイルはエクスポートされません。 メタデータの変更には、所有者、アクセス許可、拡張属性、名前の変更(名前変更)が含まれます。 この制限は、手動エクスポートと自動エクスポートの両方に適用されます。
  • Azure Managed Lustre ファイル システムで削除したファイルは、エクスポート ジョブ中に元の BLOB コンテナーでは削除されません。 エクスポート ジョブでは、BLOB コンテナー内のファイルは削除されません。
  • BLOB 名は、特定の 名前付け規則に準拠している必要があります。 許容される BLOB 名は、許容される POSIX ファイル名とは若干異なります。 エクスポート プロセスでは、BLOB へのエクスポート時に正しくエスケープすることで、ファイル名内の特殊文字が保持されます。 ただし、BLOB の名前付け規則に違反するファイル名 (BLOB 名の最大長を超えるなど) は、そのファイルをエクスポートしようとするとエラーになります。
  • 自動エクスポートの場合: 現在、名前の変更、所有権の更新、アクセス許可の調整などのメタデータの変更 は同期されません。
  • 自動エクスポートの場合: ファイル システム内のファイル、ディレクトリ、またはシンボリック リンクを削除しても、Blob Storage コンテナーから削除されません。
  • Azure Blob Storageでは、ハード リンクはサポートされていません。 各ハード リンクは、一意の BLOB としてエクスポートされます。 これらの BLOB をインポートすると、それらは独立したファイルになります。

手動エクスポートジョブ

手動エクスポート ジョブは、ファイル システムから、ファイル システムの作成時に指定した BLOB コンテナーに新しいファイルまたは変更されたファイルをコピーします。

エクスポート ジョブを作成する

Azure portal でエクスポート ジョブを作成するには、次の手順に従います。

  1. Azure portal で、Azure Managed Lustre ファイル システムを開きます。 [ 設定] で、[ BLOB 統合] を選択します。

  2. [ + 新しいジョブの作成] を選択します。

  3. [ ジョブの種類 ] ドロップダウン メニューで、[エクスポート] を選択 します。

  4. ファイル システム パス フィールドに、エクスポートする内容を指定する文字列を入力します。

エクスポート ジョブは、ファイル名がこの文字列で始まるファイル システム内のすべての新規または変更されたファイルをエクスポートします。 ジョブは、Lustre ファイル システム内にあるのと同じファイル パス (またはプレフィックス) を使用して、BLOB コンテナーにファイルを書き込みます。 blob コンテナー内の既存のファイルが上書きされないようにするには、Lustre ファイル システム内のファイルのパスが blob コンテナー内の既存のファイルのパスと重ならないようにします。

次のスクリーンショットは、Azure portal でのエクスポート ジョブの構成設定を示しています。

エクスポート (アーカイブ) ジョブを作成するためのポータルのセットアップを示すスクリーンショット。

エクスポート ジョブを監視または取り消す

BLOB 統合ペインの [最近使用したジョブ] セクションで、エクスポート ジョブを監視または取り消すことができます。

一度に実行されるアーカイブ ジョブは 1 つだけです。 進行中のジョブを取り消すには、[最近使用したジョブ] テーブルでそのジョブの [キャンセル] リンクを選択します。 [キャンセル] リンクは、完了したジョブでは使用できません。

エクスポート ジョブを再試行する

エクスポート ジョブが正常に完了しない場合は、 新しいエクスポート ジョブを作成してエクスポートを再試行できます。 新しいジョブは、前のジョブ中にコピーされなかったファイルのみをコピーします。

再試行は、データが頻繁に変更されるアクティブなファイル システムからデータをエクスポートしようとするときに一般的な場合があります。 これらのシナリオの詳細については、「 アクティブなファイル システムでエクスポート ジョブを実行する」を参照してください。

アクティブなファイル システムでエクスポート ジョブを実行する

アクティブなファイル システムでは、エクスポート ジョブ中にファイルを変更すると、ジョブが失敗する可能性があります。 このエラー状態は、ファイル システム内のすべてのデータがBlob Storageにエクスポートされたわけではないことを示します。 このような場合は、新しいエクスポート ジョブを作成することでエクスポートを再試行できます。 新しいジョブでは、前のジョブでコピーされなかったファイルのみがコピーされます。

アクティビティが多いファイル システムでは、ファイルが頻繁に変更されるため、再試行が複数回失敗する可能性があります。 ファイルが Blob Storage に正常にエクスポートされたことを確認するには、対応する BLOB のタイムスタンプを確認します。 ジョブが完了したら、デプロイ時に構成したログ コンテナーを表示して、エクスポート ジョブに関する詳細情報を表示することもできます。 ログ コンテナーは、どのファイルが失敗したか、またその理由に関する診断情報を提供します。

クラスターの使用停止を準備していて、Blob Storageへの最終的なエクスポートを実行する場合は、エクスポート ジョブを開始する前にすべての I/O アクティビティが停止していることを確認してください。 この方法は、ファイル システムのアクティビティによるエラーを回避するため、すべてのデータがエクスポートされることを保証するのに役立ちます。

エクスポートされたファイルのメタデータについて説明します

Azure Managed Lustre ファイル システムから BLOB コンテナーにファイルをエクスポートすると、エクスポート ジョブによって追加のメタデータが保存され、ファイル システムへの内容の再インポートが簡略化されます。

次の表に、エクスポート ジョブが BLOB メタデータにキーと値のペアとして保存する Lustre ファイル システムの POSIX 属性を示します。

POSIX 属性 タイプ
owner int
group int
permissions 8 進数または rwxrwxrwx 形式。スティッキー ビットがサポートされています

エクスポート ジョブは、空の BLOB にディレクトリ属性を保存します。 この BLOB の名前はディレクトリ パスと同じで、BLOB メタデータに次のキーと値のペアが含まれています: hdi_isfolder : true。

コンテナーを使用して新しい Lustre クラスターをハイドレートする前に、POSIX 属性を手動で変更できます。 前に説明したキーと値のペアを使用して、BLOB メタデータを編集または追加します。

azcopy または Storage Explorer を使用して Lustre BLOB コンテナーをコピーする

lustre ファイル システムが使用する BLOB コンテナーは、 azcopy または Storage Explorer を使用して移動またはコピーできます。

azcopyの場合は、次のフラグを追加してディレクトリ属性を含めることができます。

--include-directory-stub

このフラグを含めると、ディレクトリ POSIX 属性は転送中に保持されます (たとえば、 owner、 group、 permissions)。 このフラグを指定せずにストレージ コンテナーで azcopy を使用する場合、またはフラグを false に設定した場合、転送にはデータとディレクトリが含まれます。 ただし、ディレクトリはPOSIX属性を保持しません。

Storage Explorer では、[ 設定] で [ 転送 ] を選択し、[ ディレクトリ スタブを含める] ボックスを選択することで、このフラグを有効にすることができます。

Storage Explorer での転送中にディレクトリ スタブを含める方法を示すスクリーンショット。

自動エクスポート

Azure Managed Lustre の自動エクスポート機能は、Azure Managed Lustre ファイル システムの変更をリンクされた Azure Blob Storage コンテナーと自動的に同期する機能です。

この機能を使用すると、ファイル システム内の新規ファイルや変更されたファイルが、手動で介入しなくても関連付けられている Blob Storage コンテナーに確実に反映されるようにできます。 この機能により、データ管理が効率化され、長期的なストレージの同期が向上します。

自動エクスポート機能

自動エクスポートは、Azure Managed Lustre ファイル システムの変更を継続的に監視することによって機能します。 構成したエクスポート ポリシーに基づいて、関連付けられているBlob Storage コンテナーの内容が更新され、これらの変更が反映されます。 この機能は、データをレプリケートするためのシームレスで自動化されたプロセスを提供します。

自動エクスポートでさまざまな種類の変更を処理する方法を次に示します。

  • 新しいファイルの作成、新しいディレクトリ、ファイルコンテンツの変更: BLOB 統合プロセスでは、新しいファイル、ディレクトリ、および変更されたデータが識別されます。 エクスポート ジョブが自動的に開始されます。 自動エクスポートにより、ファイルの最新バージョンが Blob Storage に確実に転送されます。

自動エクスポートは、連続エクスポートイテレーションを通じて機能します。 イテレーションが完了すると、BLOB 統合プロセスによってファイル システムがスキャンされ、新しいファイル、ディレクトリ、またはコンテンツの変更が検出されます。 エクスポートジョブの新しい反復処理が開始されます。

構成済みのログ コンテナー内のエクスポート ジョブ ログは、同期の問題を特定し、操作が失敗する理由を理解するのに役立ちます。

自動エクスポートを設定

関連付けられたBlob Storage コンテナーが構成されている既存のAzure Managed Lustre ファイル システムで自動エクスポートを有効にします。 自動エクスポートは、Azure portal の BLOB 統合 設定を使用して構成できます。

新しい自動エクスポート ジョブを作成するには、次の手順に従います。

  1. Azure portal で、Azure Managed Lustre ファイル システムを開きます。 [ 設定] で、[ BLOB 統合] を選択します。

  2. [ + 新しいジョブの作成] を選択します。

  3. [ ジョブの種類 ] ドロップダウンで、[ 自動エクスポート] を選択します。

  4. ファイル システム パス フィールドで、文字列を入力してディレクトリ パスを指定します。

システムは、このパス(プレフィックス)配下のファイル システム内にある、すべての新規または変更されたファイルを継続的にエクスポートします。 システムは、Lustre ファイル システムと同じファイル パス (またはプレフィックス) を使用して BLOB コンテナーにファイルを書き込みます。 唯一の例外は、Lustre ファイルが BLOB コンテナー内のそのパスからインポートされた場合です。

インポートジョブまたはエクスポート ジョブを作成する方法を示すAzure Managed Lustreの BLOB 統合ペインのスクリーンショット。

自動エクスポートの監視と管理

Azure ポータルを使用して、自動エクスポート アクティビティを監視し、構成を管理します。

BLOB 統合ペインには、[最近のジョブ] セクションのエクスポート アクティビティの詳細が表示されます。これには、最近のジョブの状態や、自動同期に関連するメトリックが含まれます。

インプロセス ジョブを取り消すには、[最近使用したジョブ] テーブルでそのジョブの [キャンセル] リンクを選択します。 [キャンセル] リンクは、現在のジョブでのみ使用できます。

自動エクスポート ジョブのメトリックを表示するには、ジョブの 名前 の値を選択します。 ポータルのサイド パネルに [メトリック] ウィンドウが表示されます。

ジョブの詳細を示す [BLOB 統合] ウィンドウを示すスクリーンショット。

メトリックの自動エクスポート

ポータルでは、メトリックは 2 つの主要なカテゴリ ( [全体] と [ 現在のイテレーション] ) にグループ化されます。

全体的な統計

自動エクスポートを有効にした後の統計

エクスポートされたファイルの合計数

自動エクスポートを有効にした後、関連付けられている BLOB コンテナーに正常にコピーされたファイルの数。

エクスポートされた MiB の合計数

自動エクスポートを有効にした後、関連付けられている BLOB コンテナーに (MiB 単位で) 集計ファイル サイズが正常にコピーされました。

完了したイテレーション

BLOB 統合プロセスが新しいデータまたは変更されたデータを特定し、新しいエクスポート ジョブを開始した回数。

最後に成功したイテレーション

関連付けられている BLOB コンテナーにすべてのデータを正常にエクスポートした最後のイテレーションの終了タイム スタンプ。

現在のイテレーション統計

現在のアクティビティに関する統計

検出されたファイル

エクスポート ジョブが現在エクスポートしているファイルの数(このイテレーションで関連付けられている BLOB コンテナーに既に正常にコピーされたファイルを含む)。*

MiB が検出されました

このイテレーションで関連付けられている BLOB コンテナーに既に正常にコピーされたファイルを含め、エクスポート ジョブが現在エクスポートしている集計ファイル サイズ(MiB)。

エクスポートされたファイル

関連付けられた BLOB コンテナーに正常にコピーされた新しいファイルと変更されたファイルの数。

MiB のエクスポート

新しいデータと変更されたデータの MiB 単位の集計ファイル サイズが、関連付けられている BLOB コンテナーに正常にコピーされました。

失敗したファイル

現在のイテレーション中にコピーに失敗したファイルの合計数。 [ ログ コンテナー] ページに移動して、この自動エクスポート ジョブに関連付けられているログを表示するには、このリンクを選択します。

* 現在進行中のイテレーションの指標は、これまでの状況を示しています。 たとえば、 検出されたファイル は、レポートの時点でエクスポートするために検出されたファイルの数です。 次のレポート サイクルでは、検出されるファイルが増える可能性があります。

自動エクスポートに関する考慮事項とベスト プラクティス

自動エクスポート機能を使用する場合は、次のベスト プラクティスを考慮して、スムーズな操作を実現してください。

  • 競合管理: ファイル システムと Blob Storage の両方でファイルが変更されると、上書きされるリスクがあります。 競合する編集を防ぐには、アプリケーション レベルの調整を使用します。
  • 削除前に自動エクスポートを無効にする: ファイル システムまたはその BLOB 統合プロセスを削除する前に、キューに登録されているすべての更新が同期されていることを確認します。 データ損失を回避するために、[ 最後に成功した反復時間 ] が [最近] で 、[ 失敗したファイル ] メトリックが 0 であることを確認します。 次に、自動エクスポートを無効にします。