Amazon Web Services ブログ

Snowball Edge を使用したデータ移行のベストプラクティス

AWS Snowball Edge は、オンプレミスのストレージ (SAN、NAS、パラレルファイルシステム) またはデータベースから Amazon S3 へのペタバイト規模のオフラインデータ移行を可能にします。AWS Snowball Edge は、AWS Snow Family の一部であり、データ移行に使用できるデータ転送サービスの優れた AWS ポートフォリオです。データ転送サービスの AWS ポートフォリオには、高速オンライン転送のための AWS DataSync も含まれています。 使用可能なネットワーク帯域幅は、オンラインまたはオフラインの転送メカニズムを選択する際の重要な考慮事項です。たとえば、500 Mbps の専用ネットワーク接続を介して 1 PB のデータを転送するには約 8 か月かかり、移行プロジェクトのスケジュールを過ぎてしまう可能性があります。Snowball Edge は、AWS へのネットワーク帯域幅が制限され、データボリュームが大きい場合に、大規模の移行を行うための高速メカニズムを提供します。

Snowball Edge サービスは、堅牢なストレージとエッジコンピューティングデバイスを使用して、データを安全かつ信頼できる方法でお客様が AWS に物理的に転送できるようにするため、ネットワーク帯域幅の必要性を減少します。このブログ投稿では、Snowball Edge を使用した効率的で費用対効果の高い移行を実現するために、当社のお客様が使用しているベストプラクティスを紹介します。

概要

図 1 は、Snowball Edge を使用して、NAS アレイ、データベース、データウェアハウス、またはその他のストレージシステムなどのオンプレミスデータソースから AWS にデータを移行するために一般的に使用するアーキテクチャを示しています。Snowball Edge Storage Optimized (SBE -SO) デバイスには、Amazon S3 互換エンドポイント、Amazon EC2 コンピューティング、ブロックストレージ機能が組み込まれた 100 TB の raw ストレージ容量があります。

図 1 は、オンプレミスデータソースから Snowball Edge を使用してデータを AWS に移行するために一般的に使用するアーキテクチャを示しています。

図 1: Snowball Edge データ移行のアーキテクチャ

このアーキテクチャは、一時的な「ステージングワークステーション」を使用します。 ワークステーションは、NFS または SMB プロトコルを使用してデータソースをマウントします。Hadoop (HDFS/QFS) または他のファイルシステムからデータを移行する場合、このアーキテクチャにより、ステージングワークステーションでネイティブコネクタとライブラリを使用してデータソースをマウントできます。データソースをマウントしたら、AWS コマンドラインインターフェイス (CLI) コマンド (コピーおよび同期) を使用して、次のようにデータを Snowball Edge に転送します: aws s3 cp -r /nfs/directoryX s3://mybucket/Snowball Edge 開発者ガイドで指定されている AWS CLI バージョンは、デバイスのストレージ上で Snowball Edge S3 アダプターインターフェイスを介してオブジェクトの読み取り/書き込み/編集を行うことができます。Snowball Edge S3 アダプターインターフェイスは、AWS Snowball Edge 開発者ガイドでサポートされている操作の完全なリストとともに、Amazon S3 REST API 操作のサブセットを実装します。

このアーキテクチャは、アプリケーションプラットフォームで操作がサポートされている場合に、データを S3 インターフェイスに直接転送するように変更できます。たとえば、Teradata などのデータウェアハウスソリューションには、Snowball Edge の S3 バケットに直接データをコピーするための TD Export/FastExport というツールがあります。このアーキテクチャには、ステージングワークステーションが必要ありません。Snowball Edge Client は、ロック解除、容量のモニタリングなどの管理機能に引き続き必要です。

Snowball Edge Amazon S3 アダプターは標準 S3 API のサブセットを実装しているため、サードパーティーツールから一部の API 呼び出しが機能しない場合があります。たとえば、現時点では、Hadoop DistCp (分散コピー) コマンドを Snowball Edge で直接使用することはできません。ただし、ステージングワークステーションにマウントした後でも、Hadoop (HDFS および QFS) データを S3 アダプターにコピーできます。

データ転送に直接エクスポート機能を使用する場合は常に、機能とパフォーマンスを検証する必要があります。また、計画段階で利用可能なユーティリティとツールを確認することも重要です。Amazon Partner Network (APN) の多くの移行、バックアップと復旧、およびアーカイブソフトウェアにおけるプロバイダーは、アプリケーションのターゲットストレージとして Snowball Edge をサポートしています。これにより、カスタムスクリプトも不要になります。これらのツールは、Snowball Edge でデータ転送に使用できます。このブログ投稿の後半にあるパートナーツールのリストを参照してください。

AWS の多くのお客様は、大規模な移行を完了できる規範的なプロセスに従っています。次のセクションでこのプロセスを確認します。また、移行における計画、検証、および最適化の側面についても深く掘り下げ、移行プロジェクトに向けて十分な準備ができるようにします。

移行プロセス

以下に示すのは (図 2)、Snowball Edge を使用した大規模データ移行の高レベルプロセスです。

Snowball Edge を使用した大規模データ移行の高レベルプロセス

図 2: Snowball Edge データ移行のプロセス

ディスカバリーは、最初の段階であり、場所、アクセス方法、使用方法、および移行中に予想されるアクセスパターンにおけるデータを識別することを目標としています。この段階では、ネットワークトポロジ、平均ファイルサイズ、ファイルシステムプロトコル、パフォーマンスなども明らかになります。AWS でデータが必要なときなど、タイムラインも考慮する必要があります。

計画段階では、ターゲットのタイムラインを確立し、既存のインフラストラクチャを評価し、ツールの開発と管理に使用できるリソースを決定し、移行後のタスクのニーズを定義できます。移行後の処理、データライフサイクル、およびコストの最適化を計画する必要があります。

概念実証 (PoC)、ツール、および最適化の段階は、移行目標を確実に達成するための鍵となります。単一の Snowball Edge を使用して、エンドツーエンドのプロセスを評価することをお勧めします。これにより、データ転送に関するインサイトを得て、考えられる障害を特定し、コストを最適化した移行に向けてツールを最適化できます。これについては、次のセクションで詳しく説明します。

実行段階では、ワークフローを完全に維持するためにいくらかのオーバーヘッドが必要になります。この段階では、Snowball Edge の注文と配信をワークフローに合わせる必要があります。プロセスをマスターした後で、移行スケジュールを加速できる場合があります。

検証段階は、データが Amazon S3 に保存される最終段階です。ここでは、S3 Integrity Check を使用して、データの整合性に関する追加検証を実行できます。これは、データを変更せずに転送するために必要です。検証は、完全に、部分的に、または転送されたすべてのファイルでランダムサンプリングを使用して実行できます。Snowball Edge への初期データ転送中にコピーされたデータは Snowball Edge でネイティブに検証されますが、コンプライアンスのためにソースファイルと S3 オブジェクト間でこの追加の整合性チェックを実行する必要があります。

大規模な移行の場合、計画中に AWS アカウントチームと連携することをお勧めします。これは、お客様が成功するために適切な情報とリソースを調整するのに役立ちます。

Snowball Edge Migration の概念実証 (PoC)、ツール、および最適化

この段階では、単一の Snowball Edge を取得して、ネットワークにインストールします。推奨される Snowball クライアントと AWS CLI を使用して、単一のステージングワークステーションをプロビジョニングします。データソースを接続し、AWS CLI を使用して転送操作を実行します。この段階では、スイッチやファイアウォールの設定など、ネットワークの一部に最適化が必要となる場合があります。また、3 つの接続オプション (RJ45、SFP、QFSP) のどれが最高のパフォーマンスを提供するかについて調べる必要があります。

管理、オーケストレーション、およびデータの取り込みのために、いくつかの基本的なスクリプトを開発しなければならない場合があります。スクリプトは、データソースと環境によって異なる場合があります。並列操作を実行する一括データ転送では、多数の Snowball Edge を使用します。Snowball Edge デバイスの料金は、デバイスの保持日数に基づいています。この PoC を実行して学習を適用すると、移行コストを削減できます。

この段階での 1 つの目標は、オンプレミスのソースと Snowball Edge の間で最高のデータ転送パフォーマンスを達成することです。たとえば、約 1.6 Gbps の転送速度を達成した場合、85 TiB データの転送は 5 日以内にコピーできます。一部のお客様は、5 MB 以上のファイルサイズを転送するときに、約 3.2 Gbps の速い転送速度を確認しています。これは、ネットワーク、ステージングワークステーション、およびオンプレミスソースが最適化される理想的な状況であることにご注意ください。

最適な転送パフォーマンスを実現するには、ご使用の環境で次の側面をお勧めします。

  • オンプレミスのソースストレージシステムには、書き込み先の各 Snowball Edge デバイスに必要な転送速度の合計以上の集計読み取りスループットが必要です。3 つの Snowball Edge デバイスがあり、デバイスごとに 300 MBps をターゲットにしている場合、ソースストレージシステムでサポートされる集計スループットは 900 MBps (7.2 Gbps) になります。これは、ソースストレージの読み取りパフォーマンスが制限要因になる可能性があるため、重要です。
  • ネットワーク要件について理想的なのは、オンプレミスのソースストレージが、ステージングワークステーションおよび Snowball Edge デバイスと同じサブネット上にあることです。ネットワークリンクは 10 Gbps 以上である必要があり、理想的には 1 ミリ秒未満のレイテンシーとパケット損失がゼロである必要があります。
  • ステージングワークステーションには、4 つのコア、32 GB の RAM、10 GE 以上のネットワークインターフェイスと、高速のディスクアクセスが必要です。仮想マシン環境を使用するときに高速ディスクアクセスを確保するには、VM ホストワークステーションのルートパーティションとして NAS を使用しないでください。
  • データ転送パフォーマンスのための理想的なファイルサイズは 5 MB 以上です。ソースシステムに小さなファイルが多数ある場合は、これらを 5 MB を超える大きなファイルにバッチ処理する必要があります。AWS CLI では、この機能がネイティブでサポートされていないため、小さなファイルを大きなファイルに zip/gzip するために追加のスクリプトが必要になります。

AWS CLI には、ローカルファイルシステムから Snowball Edge にデータを転送する際に使用される 2 つの主要なコマンドがあります。それは、コピーと同期です。どちらのコマンドも、「content-size」Amazon S3 オブジェクト属性にマップされるファイルサイズを除き、ファイル属性を破棄します。標準 POSIX メタデータを保存する必要があるユースケースでは、メタデータオプションを使用して Amazon S3 オブジェクトのユーザー定義属性に追加します。次の例では、スクリプト転送中に所有者、グループ、作成時間、アクセス時間を保存する方法を示しています。aws s3 cp source-file s3://bucket-name --endpoint end-point-name --profile profile-name --metadata “owner=jon,group=foo,ctime=1569326676,atime=1569326777”

図 3 は、当社が提案する Snowball Edge Data 移行アーキテクチャに適用されるツールおよび最適化の要件と機能の概要について示しています。

Snowball Edge データ移行ツールと最適化の概要

図 3: Snowball Edge データ移行ツールと最適化の概要

集約スループットを決定し、ツールを確立し、インフラストラクチャの準備が整ったら、次のステップは AWS コンソールで必要な数だけ Snowball Edge デバイスを注文することです。データ移行を最適化するために、最適化された転送速度とツールを使用して取り込みタイムラインを決定し、Snowball Edge の順序を調整することが目標です。例として、1 PB データレイクを移行する場合、PoC 段階では、1.6 Gbps の Snowball Edge ごとの最大スループットで、環境が最大 5 つの Snowball Edge ユニットを同時にサポートできることを示しています。このシナリオでは、完全な 1 PB を Amazon S3 に移行するために、3 つのウェーブに分割された合計 13 の Snowball Edge が必要です。Snowball Edge デバイスの各ウェーブにおける最適なスケジュールは、データセンターサイトでの転送速度と労働力に基づいて 6 日ごとになっています。プロジェクトの追加サポートに対するニーズに対応するとともに、アカウントチームにスケジュールを伝えて適時に配信することが重要です。

パートナーソリューション

多くのお客様は、バックアップ、災害復旧、アーカイブ、および移行に関するユースケースをサポートするソフトウェアツールをすでに持っています。これらのツールは、データ転送のストレージソリューションとして Snowball Edge をサポートします。このような製品は、特定のユースケースによって機能と使用方法が異なりますが、一般的に、データを転送先 (Amazon S3) に転送するために使用できます。この記事を投稿した時点での、Snowball/Snowball Edge をサポートする AWS パートナーネットワークのストレージパートナーを以下に示します。

APN パートナー ソフトウェアとバージョン サポートされるユースケース Snowball/Snowball Edge サポート 参考文献
Cohesity DataPlatform バックアップと復元、アーカイブ、災害復旧 -Snowball
-Snowball Edge
ウェブサイト
Commvault Commvault V11 SP6+ バックアップと復元、アーカイブ、災害復旧 -Snowball
-Snowball Edge
ドキュメント
Druva Druva Phoenix バックアップと復元、アーカイブ、災害復旧 -Snowball Edge ドキュメント
Iron Mountain データ復元と移行サービス バックアップと復元、アーカイブ -Snowball
-Snowball Edge
ドキュメント
MSP360 (旧 CloudBerry Lab) CloudBerry Backup バックアップと復元、アーカイブ -Snowball Edge ドキュメント
Pixspan PixMover v3.7.0 移行 -Snowball Edge ドキュメント
Veritas NetBackup 8.2+ バックアップと復元、アーカイブ、災害復旧 -Snowball
-Snowball Edge
ドキュメント
WANdisco Fusion 2.12+ アーカイブ、災害復旧、移行 -Snowball
-Snowball Edge
ドキュメント

詳細: