AWS DataSync で高速化するデータ転送 - オンプレミスから S3 / EFS への移行
オンプレミスから S3 / EFS への高速データ転送を自動化する。エージェントのデプロイ、タスクスケジューリング、転送データの整合性検証を紹介します。
DataSync の概要
DataSync はオンプレミスと AWS 間のデータ転送を自動化 / 高速化するサービスです。転送プロトコルには独自の最適化がかけられています。オンプレミスの NFS/SMB ファイルサーバーから S3、EFS、FSx for Windows、FSx for Lustre、FSx for OpenZFS への転送に対応します。HDFS (Hadoop Distributed File System) からのデータ移行もサポートしており、ビッグデータ基盤のクラウド移行にも利用できます。
エージェントとタスク設計
オンプレミスに DataSync エージェント (VMware ESXi、Hyper-V、KVM の仮想マシン) をデプロイし、ソースストレージに接続します。エージェント VM には CPU とメモリの要件があります。エージェントを追加してスケールアウトすることもできます。タスクでソースロケーション (オンプレミス NFS) とデスティネーションロケーション (S3 バケット) を指定し、転送オプション (ファイルのメタデータ保持、除外フィルター、帯域制限) を設定します。メタデータ保持オプションでは POSIX パーミッション、タイムスタンプ、UID/GID を転送先に維持できます。スケジュール実行で毎日の差分転送を自動化し、オンプレミスと AWS のデータを継続的に同期できます。転送完了後にデータの整合性が自動検証され、チェックサムの不一致があれば報告されます。
AWS 間転送とスケジューリング
DataSync は AWS サービス間のデータ転送もサポートします。S3 バケット間、EFS 間、FSx 間、S3 から EFS への転送をエージェントなしで実行できます。クロスアカウント / クロスリージョンの転送にも対応し、DR 環境へのデータレプリケーションに活用できます。タスクスケジュールで定期的な転送を自動化し、日次や週次の増分転送でデータを同期します。転送フィルターでファイル名パターンや更新日時に基づいて転送対象を絞り込み、不要なデータの転送を避けます。EventBridge との連携で、転送タスクの完了や失敗をトリガーにして後続の処理 (Glue ジョブの起動、Lambda 関数の実行、SNS 通知の送信) を自動化するワークフローを構築できます。CloudWatch でタスクの実行状況をモニタリングできます。
他のデータ転送方式との比較
AWS にはデータ転送の選択肢が複数あり、データ量と要件に応じて使い分けます。DataSync はネットワーク経由の継続的な同期 / 移行に向き、変更分のみの増分転送と自動整合性検証を備えています。AWS Transfer Family (SFTP/FTPS/FTP) はパートナー連携やレガシーシステムとのファイル交換に適しており、既存の SFTP ワークフローを変更せずにクラウド化できますが、大量データの一括移行には向きません。S3 レプリケーション (CRR/SRR) はバケット間のオブジェクトレベルのレプリカで、書き込みと同時に自動コピーされますが、オンプレミスからの転送には使えません。AWS Snow Family のデバイスは、新規の顧客は注文できなくなっています (現在 Snowball Edge を使っている顧客には影響しません)。新規の顧客には、オンラインの転送に DataSync が案内されています。
設計のベストプラクティスと注意点
DataSync の導入で注意すべきポイントを整理します。第一に、帯域制限 (bandwidth throttle) の設定です。本番ネットワークと共有する回線で DataSync を稼働させる場合、業務時間帯は帯域を制限し、夜間にフルスピードで転送するスケジュールを組むことで業務トラフィックへの影響を抑えます。第二に、転送先の S3 ストレージクラスの選択です。DataSync はデータを特定の S3 ストレージクラスへ直接転送でき、アクセス頻度の低いアーカイブデータは S3 Glacier Instant Retrieval に置くと保存のコストを抑えられます。第三に、大量の小さなファイル (数百万ファイル) を転送する場合、1 タスクあたりのオーバーヘッドが増えるため、ディレクトリ単位でタスクを分割して並列に実行すると、スループットを上げやすくなります。第四に、セキュリティとコンプライアンスの確保です。転送中のデータは TLS で暗号化されますが、SSE-C で暗号化された S3 バケットには DataSync からアクセスできません。VPC エンドポイント (PrivateLink) を使用すると、エージェントと AWS 間の通信がパブリックインターネットを経由しません。IAM ポリシーで転送タスクの実行権限を細かく制御でき、CloudTrail で API の呼び出しが記録されます。HIPAA、PCI DSS、SOC 1/2/3 に対応しており、規制産業のデータ移行にも利用できます。
DataSync の料金
DataSync の料金は、コピーしたデータ量などに応じて決まります。オンプレミスからの転送ではエージェントの実行環境 (VM) が必要ですが、エージェント自体に追加料金は発生しません。転送先のストレージ料金 (S3、EFS、FSx) は別途発生します。差分転送で変更されたファイルだけを転送すると、データ量を抑えられます。帯域制限を設定しても、データ量に応じた料金には影響しません。
まとめ
DataSync はオンプレミスから AWS、および AWS サービス間のデータ転送を高速化 / 自動化するサービスです。差分転送で、変更されたファイルだけを効率よく同期します。HDFS を含む多様なソースに対応し、VPC エンドポイント経由でのセキュアな転送もサポートします。帯域制限を活用して、移行のシナリオに合わせられます。
参考資料 (AWS 公式)
本ページの一次情報は AWS 公式サイトと公式ドキュメントです。最新の仕様と料金は次の公式ページで確認できます。
本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。