次の方法で共有


データ移行

ハイ パフォーマンス コンピューティングの移行の重要な側面は、シームレスなデータ移行を保証することです。 スループットと IOPS のニーズを満たすためには、データをクラウド環境のコンピューティング ノードに近づけることが不可欠です。 シームレスなデータ移行には、安全で信頼性の高い方法で実施するための戦略的アプローチと信頼性の高いユーティリティが必要です。

データ移行戦略では、次の作業を行う必要があります。

  • ソースからターゲットまで、既存のすべてのファイルとディレクトリ構造を保持します。
  • ユーザーとグループの所有権、アクセス許可、変更時刻、アクセス時間など、ファイルに関連するすべてのメタデータを保持します。
  • データ移行またはコピー ツールの結果を報告します。
  • データ移行の再起動プロセスを実装します。

このガイドのこの部分では、データ移行に関連するニーズ、ツール、サービス、ベスト プラクティスについて説明します。

データ移行のニーズを定義する

  • データ整合性:

    • 移行プロセス中に、すべてのファイルとディレクトリが元の構造とメタデータを保持していることを確認します。
  • セキュリティ:

    • 暗号化された転送方法と安全なアクセスの制御を使用して、移行プロセス全体でデータ セキュリティを維持します。
  • パフォーマンス:

    • 大量のデータを効率的に処理するようにデータ移行プロセスを最適化し、ダウンタイムと中断を最小限に抑えます。

ツールとサービス

  • Azure Data Box:

    • 大規模なオフライン データ転送には Azure Data Box を使用します。
    • Data Box アプライアンスをデプロイして、大量のデータを迅速かつ安全に Azure に転送します。
    • Azure portal を使用してデータ転送を設定および管理します。
  • AzCopy の

    • コマンド ライン データ転送には AzCopy を使用します。
    • オンプレミス ストレージと Azure Blob Storage、Azure Files、Azure Table Storage の間で、ハイパフォーマンスで信頼性の高いデータ転送を実行します。
    • 同期および非同期転送モードの両方をサポートします。

Rsyncの:

  • rsync を使用して、オンプレミスのストレージと Azure Storage の間の効率的で安全なデータ転送を行います。
  • 転送中は、ファイルとディレクトリの構造とファイル メタデータを保持します。
  • rsync オプションを使用して、データ整合性と転送効率を確保します。

データ移行のベスト プラクティス

  • 計画とテスト:

    • ツール (AzCopy、rsync) およびターゲット ストレージ (Blob Storage、Azure NetApp Files、Azure Managed Lustre) の選択など、データ移行戦略を十分に計画します。
    • データのサブセットを使用してテスト移行を実行してプロセスを検証し、ツールと構成が期待どおりに動作することを確認します。
  • データ整合性の維持:

    • ファイル メタデータ (アクセス許可、タイムスタンプ、所有権) を保持する AzCopy と rsync のオプションを使用します。
    • チェックサムを比較するか、組み込みの検証ツールを使用して、移行されたデータの整合性を確認します。
  • パフォーマンスの最適化:

    • (rsync の -z オプションを使用して) 転送中にデータを圧縮し、帯域幅の使用量を減らします。
    • AzCopy の並列転送を使用して、スループットを向上させ、移行時間を短縮します。
  • 安全なデータ転送:

    • データを転送中に暗号化して、不正アクセスから保護します。 AzCopy と rsync の安全な転送オプションを使用します。
    • ソースおよびターゲット環境の両方で、アクセスの制御とアクセス許可が正しく設定されていることを確保します。
  • 監視とレポート:

    • データ移行プロセスを継続的に監視して、問題を早期に検出します。
    • AzCopy と rsync から詳細なレポートを生成して確認し、すべてのデータが正常に移行されたことを確認し、エラーや不一致を特定します。

データ移行の手順の例

このセクションでは、Azure Data Box、AzCopy、rsync を使用してオンプレミス ストレージから Azure にデータを転送する手順について説明します。 Azure Data Box のデプロイと構成、データ転送用の AzCopy のインストールと使用、安全で効率的なデータ移行を確保するための rsync の設定と使用についての詳細な手順を含みます。

  1. Azure Data Box の使用:

    • Azure Data Box のデプロイ:

      • Azure portal に移動し、Azure Data Box を注文します。
      • 手順に従って、オンプレミスの場所に Data Box アプライアンスを設定します。
      • Data Box にデータをコピーし、Azure に返送します。
    • データ転送の構成:

      • Data Box が Azure データ センターに到着すると、指定したストレージ アカウントにデータがアップロードされます。
      • Azure portal を使用して、データ転送の状態と整合性を確認します。
  2. AzCopy の使用:

    • AzCopy のインストール:

      • オンプレミス サーバーに AzCopy をダウンロードしてインストールします。
      • Azure ストレージ アカウントにアクセスするために必要なアクセス許可を使用して AzCopy を構成します。
    • データ転送の実行:

      • AzCopy コマンドを使用して、オンプレミス ストレージから Azure Blob Storage にデータを転送します。

      • データ転送のコマンドの例:

        azcopy copy 'https://<storage_account>.blob.core.windows.net/<container>/<path>' '<local_path>' --recursive
        

    メモ

    AzCopy の詳細については、「AzCopy を使ってみる」を参照してください。

  3. rsync の使用:

    • rsync のインストール:

      • rsync がオンプレミス サーバーにインストールされていることを確認します。 ほとんどの Linux ディストリビューションには、既定で rsync が含まれています。

      • rsync がまだインストールされていない場合は、サーバーにインストールします。

        sudo apt-get install rsync  # For Debian-based systems
        sudo yum install rsync      # For Red Hat-based systems
        
    • データ転送の実行:

      • rsync を使用して、オンプレミス ストレージから Azure Storage にデータを転送します。

      • データ転送のコマンドの例:

        rsync -avz /path/to/local/data/ user@remote:/path/to/azure/data/
        
      • 説明されているオプション:

        • -a: アーカイブ モード: アクセス許可、タイムスタンプ、シンボリック リンク、その他のメタデータを保持します。
        • -v: 詳細モード: 転送プロセスの詳細な出力を提供します。
        • -z: 転送中にデータを圧縮し、帯域幅の使用量を減らします。

      メモ

      Rsync の使用例については、「rysnc の例」を参照してください。

データ移行の実装例

AzCopy を使用したデータ移行のスクリプト:

#!/bin/bash

# Define storage account and container
storage_account="<storage_account_name>"
container_name="<container_name>"
local_path="<local_path>"

# Perform data transfer using AzCopy
azcopy copy "https://$storage_account.blob.core.windows.net/$container_name" "$local_path" --recursive

# Verify transfer and generate report
azcopy jobs show --latest > migration_report.txt

rsync を使用したデータ移行のスクリプト:

#!/bin/bash

# Define variables
local_path="/path/to/local/data"
remote_user="user"
remote_host="remote"
remote_path="/path/to/azure/data/"

# Perform data transfer using rsync
rsync -avz $local_path $remote_user@$remote_host:$remote_path

# Verify transfer and generate report
rsync -avz --dry-run $local_path $remote_user@$remote_host:$remote_path > migration_report.txt

リソース