移行ジョブを定義して開始する方法
共有を Azure に移行する場合は、ソース共有、Azure ターゲット、および適用する移行設定を記述する必要があります。 これらの属性は、ストレージ ムーバー リソース内のジョブ定義で定義されます。 この記事では、このようなジョブ定義を作成して実行する方法について説明します。
前提条件
この記事の例に従う前に、Azure Storage Mover リソース階層について理解しておくことが重要です。 ジョブ定義の前提条件の必要性については、Storage Mover リソース階層の理解に関する記事を参照してください。
ソース共有の移行を定義するには、次の 3 つの前提条件があります。
- 既存のストレージ ムーバーのリソース。
ストレージ ムーバー リソースをまだデプロイしていない場合は、「ストレージ ムーバー リソースの作成」 記事の手順に従ってください。 これらの手順は、Azure サブスクリプション内の目的のリージョンにストレージ ムーバー リソースをデプロイするのに役立ちます。 - 少なくとも 1 つの既存の Azure Storage Mover エージェント仮想マシン (VM)。
「Azure Storage Mover エージェント VM のデプロイ」と「エージェント登録」に関する記事では、デプロイと登録のプロセスを順を追って説明しています。 - 移行を定義するジョブ定義。
ジョブ定義は、移行プロジェクトで編成されます。 ストレージ ムーバー リソースには、少なくとも 1 つの移行プロジェクトが必要です。 移行プロジェクトをまだ作成していない場合は、「プロジェクトの管理」に関する記事のデプロイ手順に従って作成します。 - ファイアウォール設定の場合のストレージ アカウント アクセス。
ストレージ アカウント ファイアウォール (セキュリティ システム) の制限が設定されている場合は、エージェント VM からのトラフィックがストレージ アカウントに対して許可されていることを確認します。 - アクセス可能なエンドポイント。
以下のエンドポイントがエージェントからアクセスできる必要があります。
ソース プロトコル | ターゲット | Azure エンドポイント | 説明 |
---|---|---|---|
SMB 2.x マウント | Azure ファイル共有 (SMB) | < your-storage-account-name>.file.core.windows.net |
Azure Files エンドポイント。 |
SMB 2.x マウント | Azure ファイル共有 (SMB) | <your-keyvault-name>.vault.azure.net |
Azure Key Vault エンドポイント。 |
NFS 3 と 4 マウント | Azure BLOB Storage コンテナー | < your-storage-account-name>.blob.core.windows.net |
Azure BLOB コンテナー エンドポイント。 |
ジョブ定義を作成して開始する
ジョブ定義はプロジェクト リソース内に作成されます。 ジョブ定義を作成するには、プロジェクト、ソースおよびターゲットのストレージ エンドポイント、ジョブ名を選択するか構成する必要があります。 前の記事に含まれる例に従っている場合は、以前にデプロイされたストレージ ムーバー リソース内に既存のプロジェクトがある可能性があります。 このセクションの手順に従って、ジョブ定義をプロジェクトに追加します。
ストレージ エンドポイントは、ストレージ ムーバー内の個別のリソースです。 ジョブ定義内で参照するために、ソース エンドポイントとターゲット エンドポイントを作成する必要があります。 このセクションの例では、エンドポイントを作成するプロセスについて説明します。
サポートされているリソース名の選択に関するヘルプについては、リソースの名前付け規則に関する記事を参照してください。
Azure portal 内の [プロジェクト エクスプローラー] ページに移動して、使用可能なプロジェクトの一覧を表示します。 プロジェクトが存在しない場合、または新しいプロジェクトを作成する必要がある場合は、「Azure Storage Mover プロジェクトを管理する」の記事に記載されている手順に従います。
プロジェクト エクスプローラーのウィンドウまたは結果リスト内から、使用可能なプロジェクトの名前を選択します。 プロジェクトのプロパティとジョブの概要データが、[詳細] ウィンドウに表示されます。 プロジェクトに対して定義されている既存のジョブ定義とデプロイ済みのジョブも表示されます。
プロジェクトの詳細ウィンドウ内のアクション メニューで、[ジョブ定義の作成] を選択して、[移行ジョブの作成] ウィンドウを開きます。 プロジェクト内にジョブ定義が存在しない場合は、次の例に示すように、ウィンドウの下部付近にある [ジョブ定義の作成] を選択することもできます。
[移行ジョブの作成] ウィンドウの [基本] タブで、必要な [名前] フィールドに値を入力します。 1024 文字未満の省略可能な説明値を追加することもできます。 最後に、[移行エージェント] セクションで、データ移行を実行するエージェントを選択し、[次へ] を選択して [ソース] タブを開きます。可能な限りデータ ソースの近くにあるエージェントを選択する必要があります。 選択したエージェントには、ジョブのサイズと複雑さに適したリソースも含まれている必要があります。 必要に応じて、後で別のエージェントをジョブに割り当てることができます。
[ソース] タブで、[ソース エンドポイント] フィールド内のオプションを選択します。 既存のソース エンドポイントを使用するか、新しいエンドポイント リソースを作成するかを選択できます。
以前に定義した既存のソース エンドポイントを使用する場合は、[既存のエンドポイントの選択] オプションを選択します。 次に、[ソースとして既存のエンドポイントを選択する] リンクを選択して、ソース エンドポイント ウィンドウを開きます。 このウィンドウには、以前に定義したエンドポイントの詳細な一覧が表示されます。 適切なエンドポイントを選択し、[選択] を選択して [ソース] タブに戻り、[既存のソース エンドポイント] フィールドに入力します。
データの移行元であるソース エンドポイントを新たに定義するには、[新しいエンドポイントの作成] オプションを選択します。 次に、必要な [ホスト名または IP]、[共有名]、[プロトコル バージョン] の各フィールドの値を指定します。 1024 文字未満の省略可能な説明値を追加することもできます。
ソースまたはターゲットとして使用できるのは特定の種類のエンドポイントに限られます。 異なるエンドポイントの種類を作成する手順は、対応するデータ フィールドと同様です。 NFS 対応エンドポイントの作成と SMB 対応エンドポイントの作成の主な違いは、Azure Key Vault を使用して SMB リソースの共有資格情報を格納することです。 SMB プロトコルをサポートするエンドポイント リソースを作成するときは、Key Vault 名の値と、ユーザー名とパスワード シークレットの名前も指定する必要があります。
Key Vault ドロップダウン リストから Key Vault の名前を選択します。 対応するドロップダウン リストから関連するシークレットを選択することで、[ユーザー名のシークレット]と[パスワードのシークレット]の値を指定できます。 または、次の画面キャプチャに示すように、シークレットに URI を指定することもできます。
エンドポイント リソースの詳細については、「Storage Mover エンドポイントの管理」に関する記事を参照してください。
既定では、移行ジョブは共有のルートから開始されます。 ただし、ユース ケースでソース共有内の特定のパスからデータをコピーする必要がある場合は、[サブパス] フィールドにパスを指定できます。 この値を指定すると、指定した場所からデータ移行が開始されます。 指定したサブパスが見つからない場合、データはコピーされません。
エンドポイントとジョブ リソースを作成する前に、指定したパスが正しいことと、データにアクセス可能であることを確認することが重要です。 エンドポイントまたはジョブ リソースを作成した後で変更することはできません。 指定したパスが間違っている場合は、リソースを削除して再作成するしかありません。
ホスト、共有名、サブパスの値が連結され、完全な移行ソース パスが形成されます。 パスは、[完全なパスの確認] セクション内の [完全なパス] フィールドに表示されます。 表示されたパスをコピーし、変更をコミットする前にアクセスできることを確認します。
共有にアクセス可能であることを確認したら、[次へ] を選択してソース エンドポイント設定を保存し、ターゲットの定義を開始します。
[ターゲット] タブで、[ターゲット エンドポイント] フィールドのオプションを選択します。
ソース エンドポイントと同様に、以前に定義したエンドポイントを使用する場合は、[既存のエンドポイント参照の選択] オプションを選択します。 次に、[ターゲットとして既存のエンドポイントを選択する] リンクを選択して、ターゲット エンドポイント ウィンドウを開きます。 以前に定義したエンドポイントの詳細な一覧が表示されます。 エンドポイントの一覧から目的のエンドポイントを選択し、[選択] を選択して [既存のソース エンドポイント] フィールドに入力し、[ソース] タブに戻ります。
同様に、新しいターゲット エンドポイントを定義するには、[新しいエンドポイントの作成] オプションを選択します。 次に、必須の [サブスクリプション] と [ストレージ アカウント] フィールドのドロップダウン リストから値を選択します。 1024 文字未満の省略可能な説明値を追加することもできます。 ユース ケースに応じて、適切な *[ターゲットの種類] を選択します。
ソースまたはターゲットとして使用できるのは特定の種類のエンドポイントに限られることに注意してください。
Azure Storage Mover の現在のリリースでは、ソースとターゲットの特定のペアの組み合わせに対して、完全に忠実な移行がサポートされています。 これらのサポートされているソースとターゲットからメリットを得るには、常に最新バージョンのエージェントを利用してください。
ソース プロトコル 移行先 Comments SMB 2.x マウント Azure ファイル共有 (SMB) SMB 1.x ソースと NFS Azure ファイル共有は、現在サポートされていません。 NFS 3 と 4 マウント Azure BLOB Storage コンテナー "階層型名前空間サービス (HNS)" 機能が有効になっているコンテナーがサポートされ、ADLS Gen2 REST API セットが移行に使われます。 ターゲット サブパス値を使用して、移行されたデータをコピーするターゲット コンテナー内の場所を指定できます。 サブパス値は、コンテナーのルートに対する相対値です。 新しいサブフォルダーを生成する一意の値を指定できます。 サブパス値を省略すると、データがルートにコピーされます。
設定の正確性を確認したら、[次へ] を選択して続行します。
[設定] タブ内で、[コピー モード] と [移行の結果] に関連付けられている設定をメモします。 コピーの反復から次の反復までの間にファイルまたはフォルダーが変更されると、サービスのコピー モードによって移行エンジンの動作が影響を受けます。
- ソースに存在しない場合でも、ファイルはターゲット内にあります。
- 名前とパスが一致するファイルは、ソースと一致するように更新されます。
- コピー間でフォルダー名を変更すると、ターゲット内に重複するコンテンツが生成されます。
ターゲットにソースをミラーリングする:
- ソースに存在しない場合、ターゲット内のファイルは削除されます。
- ターゲット内のファイルとフォルダーは、ソースと一致するように更新されます。
- コピー間でファイルまたはフォルダーの名前を変更しても、重複するコンテンツは生成されません。 ソース側でアイテムの名前が変更されると、ターゲット内の元の名前のアイテムは削除されます。 さらに、名前が変更された項目もターゲットにアップロードされます。 フォルダーの名前が変更された場合、この削除と再アップロードの動作が、そのフォルダーに含まれるすべてのファイルとフォルダーに適用されます。 移行中、特にソース データのルート レベルに近いフォルダー名の変更は避けてください。
移行の結果は、ソースおよびターゲット エンドポイントの特定のストレージの種類に基づいています。 たとえば、BLOB ストレージでは "仮想" フォルダーのみがサポートされているため、フォルダー内のソース ファイルのパスは名前の前に追加され、BLOB コンテナー内のフラット リストに配置されます。 空のフォルダーは、ターゲット内の空の BLOB として表されます。 ソース フォルダーのメタデータは、ファイルの場合と同様に、BLOB のカスタム メタデータ フィールドに保持されます。
コピー モードと移行の結果の効果を表示したら、[次へ] を選択して前のタブの値を確認します。
ジョブ名と説明の設定と、ソースとターゲットのストレージ エンドポイントの設定を確認します。 [前へ] および [次へ] オプションを使用してタブ内を移動し、必要に応じて間違いを修正します。 最後に、[作成] を選択してジョブ定義をプロビジョニングします。
次のステップ
ソースおよびターゲット エンドポイントを使用してジョブ定義を作成したので、移行ジョブの実行に必要な時間を見積もる方法について説明します。