Cloud Service
AWS DataSync
オンプレミスとAWSの間で大量のファイルやオブジェクトを高速かつ安全に転送・同期するデータ移行サービス。
- 1.エージェントが差分検出・並列転送・整合性検証を肩代わりし、大量データを高速かつ安全に運ぶ。
- 2.オンプレからクラウドへの移行だけでなく、AWSストレージ間や定期的な同期にも使える。
- 3.転送中はTLSで暗号化され、転送後はファイル数やデータの整合性を自動で検証する。
解決する課題
オンプレミスにある大量のファイルやオブジェクトをクラウドへ移すとき、自作スクリプトやコピーコマンドで運ぶと、並列度の調整、再開処理、転送漏れの検証などを自分で作り込む必要があります。データ量が増えるほどこの作業は煩雑になり、信頼性も担保しづらくなります。AWS DataSync は、こうしたデータ転送に伴う面倒をマネージドサービスとして肩代わりします。
- 大量のファイルやオブジェクトを、ネットワーク経由で高速にクラウドへ移したい
- 転送の並列化・差分検出・整合性検証を自前で作りたくない
- 一度きりの移行だけでなく、オンプレとクラウドを定期的に同期したい
- 既存のNFS/SMBサーバーやクラウドストレージ間で、運用負荷を抑えてデータを動かしたい
ネットワークで現実的な時間に終わる規模なら DataSync が向きます。回線が細すぎて転送に何週間もかかる、あるいはペタバイト級を一括で運ぶといった場合は、物理デバイスを輸送する Snow ファミリーが候補になります。
主要概念と用語
- エージェント: オンプレ側に置く仮想アプライアンス。NFS/SMBサーバーなどのストレージを読み書きし、AWSとの転送を実行する。AWS内のストレージ間転送ではエージェントが不要な場合もある
- ロケーション: 転送の送信元・送信先を表す定義。オンプレのNFS/SMBや自己管理オブジェクトストレージ、S3、EFS、FSx などを指定できる
- タスク: あるロケーションから別のロケーションへの転送ジョブの定義。転送対象や除外パターン、検証の有無などの設定を持つ
- タスク実行: タスクを実際に走らせた1回ぶんの転送。進捗や転送量、所要時間などを確認できる
- 差分転送: 送信元と送信先を比較し、変更があったファイルだけを転送する仕組み。再実行時の転送量を抑える
- 整合性検証: 転送後にファイル数やデータが一致しているかを確認する処理
- フィルタ(include/exclude): 転送対象を絞り込むためのパターン指定。特定のディレクトリや拡張子を含める・除外する
仕様・制限・クォータ
- 送信元・送信先にはオンプレのNFS/SMB・自己管理オブジェクトストレージと、S3・EFS・FSx などのAWSストレージを組み合わせて指定できる
- オンプレが絡む転送ではエージェントを1台以上配置する。十分な計算リソースとネットワーク帯域が割り当てられている必要がある
- 1つのタスクで扱えるファイル数や同時実行できるタスク数などには上限があり、時期やリージョンによって変わりうる
- 転送はスケジュールで定期実行でき、手動での即時実行もできる
- AWSへの通信はインターネット経由のほか、VPCエンドポイント経由でプライベートに行うこともできる
同時実行タスク数や1タスクあたりの上限、対応ストレージの種類は時期により変わります。設計時は最新の公式情報で必ず確認してください。
内部の仕組み
利用者はまず送信元と送信先のロケーションを定義し、その間のタスクを作成します。タスクを実行すると、オンプレ側であればエージェントが送信元のストレージを読み取り、送信先と比較して変更のあったファイルだけを選び出します。選ばれたデータは並列に転送され、ネットワークを効率よく使い切ります。転送が終わると、ファイル数やデータが送信元と一致しているかを自動で検証します。
この一連の処理をマネージドに行うため、利用者は並列度の調整や再開処理、検証ロジックを自前で書く必要がありません。差分転送により、定期的に同じタスクを走らせても、毎回全量をコピーし直すのではなく変化分だけを運びます。AWS内のストレージ間転送では、エージェントを介さずサービス側で直接データを動かせる場合があります。
再実行時に変更分だけを運ぶ差分転送と、転送後の整合性検証がサービスに組み込まれています。「全量を毎回コピーして突き合わせる」処理を自分で作らずに済むのが価値です。
設計パターン / ベストプラクティス
- 一括移行: データセンターからクラウドへの移行で、NFS/SMBサーバーの中身をS3やEFS、FSxへまとめて運ぶ
- 定期同期: タスクをスケジュール実行し、オンプレとクラウドの間でデータを継続的に同期する。差分転送で毎回の転送量を抑える
- AWS内ストレージ間の移動: S3とEFS、リージョン間など、クラウド内のストレージ移動にも使い、自前のコピー処理を置き換える
- フィルタで対象を絞る: include/exclude パターンで不要なファイルやディレクトリを除外し、転送量と時間を削減する
- プライベート接続の活用: 機密データはVPCエンドポイント経由で転送し、インターネットを経由させない
- 帯域の調整: 業務時間帯のネットワークを圧迫しないよう、転送に使う帯域の上限やスケジュールを調整する
運用・監視
- タスク実行ごとに転送したファイル数・データ量・所要時間・検証結果を確認できる
- CloudWatch のメトリクスやログで転送状況を監視し、失敗や遅延を検知する
- 定期同期では、想定どおりにスケジュールが回り、差分が正しく反映されているかを確認する
- エージェントを使う構成では、エージェント側のCPU・メモリ・ネットワーク帯域がボトルネックになっていないか確認する
- 大量転送時は、オンプレ側のディスクI/Oや上り帯域が詰まらないかを把握しておく
- 転送後は検証結果を確認し、ファイルの欠落や不一致がないかをチェックする
コスト
- 課金は主に転送したデータ量に応じた従量制で構成される
- 転送先がS3やEFS、FSxなどのため、保存にかかる費用は保存先ストレージ側の料金に従う
- 構成によってはネットワークのデータ転送料が別途かかるため、移行規模が大きい場合は事前に試算する
- 差分転送によって再実行時の転送量を抑えられるため、定期同期では2回目以降のコストが下がりやすい
定期同期では毎回の転送が差分のみになるため、初回の一括転送に比べて以降の転送量とコストは小さくなりやすいです。フィルタで不要データを除けばさらに効きます。
セキュリティ
- 転送中のデータはTLSで暗号化される
- 転送先がS3やEFS、FSxなどのため、保存時の暗号化は保存先ストレージ側のKMS連携に従う
- アクセス権限はIAMで制御し、タスクやロケーションの操作・保存先への書き込みを最小権限に絞る
- インターネットを経由させたくない場合はVPCエンドポイント経由でプライベートに転送する
- オンプレ側のエージェントも、ネットワークセグメントやファイアウォールで適切に保護する
DataSync自体の権限だけでなく、書き込み先となるS3バケットやファイルシステムの権限・暗号化設定も合わせて見直してください。転送経路を絞っても、保存先がゆるいとデータが露出します。
Well-Architected の観点
- 運用上の優秀性: 並列転送・差分検出・整合性検証をサービスが肩代わりし、転送処理を自前で作り込む運用負荷を下げる。スケジュール実行で定期同期も自動化できる
- 信頼性: 転送後の整合性検証により、ファイルの欠落や破損を検知できる。差分転送で再実行も安全に繰り返せる
- セキュリティ: 転送中のTLS暗号化、IAMによる最小権限、VPCエンドポイント経由のプライベート転送
- パフォーマンス効率: 転送を並列化してネットワークを効率よく使い、大量データを高速に運ぶ
試験で問われるポイント
- 「オンプレのNFS/SMBから大量データをネットワーク経由でクラウドへ移したい」→ DataSync
- 「オンプレとクラウドを定期的に同期したい」「差分だけ運びたい」→ DataSync(スケジュール実行+差分転送)
- 「回線が細すぎて何週間もかかる」「ペタバイト級を一括で」→ DataSync ではなく Snow ファミリー(物理移送)
- 「アプリを改修せずオンプレからクラウドストレージへ常時アクセスしたい」→ Storage Gateway(ハイブリッド常時接続)
- キーワードは高速転送・差分同期・整合性検証・NFS/SMBからS3やEFS、FSxへ
関連サービス・比較
ハイブリッドストレージの AWS Storage Gateway とよく対比されます。DataSync はデータを別のストレージへ移す・同期する転送サービス、Storage Gateway はオンプレから常時クラウドストレージへアクセスする橋渡し役という役割の違いを押さえます。
| 観点 | DataSync | Storage Gateway |
|---|---|---|
| 主な役割 | ストレージ間のデータ転送・同期 | オンプレからの常時アクセス |
| 典型用途 | 一括移行・定期同期 | ハイブリッド利用・バックアップ |
| 差分・検証 | 差分転送と整合性検証が組み込み | キャッシュとクラウド実体の連携 |
| 想定する関係 | 移し終えたら役割が完了 | 継続的に使い続ける前提 |
ハンズオン / CLI例
# 送信元(オンプレのNFS)と送信先(S3)のロケーションを定義した前提で、
# 転送タスクを作成する例
aws datasync create-task \
--source-location-arn arn:aws:datasync:ap-northeast-1:123456789012:location/loc-src-XXXXXXXX \
--destination-location-arn arn:aws:datasync:ap-northeast-1:123456789012:location/loc-dst-XXXXXXXX \
--name onprem-to-s3-migration
# 作成済みタスクの一覧を確認
aws datasync list-tasks
# タスクを実行(1回ぶんの転送を開始)
aws datasync start-task-execution \
--task-arn arn:aws:datasync:ap-northeast-1:123456789012:task/task-XXXXXXXX
# 実行の進捗・転送量・検証結果を確認
aws datasync describe-task-execution \
--task-execution-arn arn:aws:datasync:ap-northeast-1:123456789012:task/task-XXXXXXXX/execution/exec-XXXXXXXX
AWS Service
AWS DataSyncを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
移行・転送
比較で見る軸
クラウド: AWS / カテゴリ: 移行・転送 / 難易度: basic
導入後に効く点
オンプレからクラウドへの移行だけでなく、AWSストレージ間や定期的な同期にも使える。
先に潰すリスク
サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。
- クラウド
- AWS
- カテゴリ
- 移行・転送
- 難易度
- basic
- 関連資格
- SAA-C03
- 設計柱
- operational
判断チェックリスト
- 自社の用途が「移行・転送 / operational」に近いか確認する。
- 強みである「エージェントが差分検出・並列転送・整合性検証を肩代わりし、大量データを高速かつ安全に運ぶ。」が本当に評価軸になるか確認する。
- 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。