SJ blog
architecture
A

信頼度ランク

S 公式ソース確認済み
A 成功実績多数・失敗例少数
B 賛否両論
C 動作未確認・セキュリティリスク高
Z 個人所感

AWS Storage Gateway — オンプレミスとAWSの統合ストレージ設計

AWS Storage Gatewayの4種類(S3 File Gateway、FSx File Gateway、Tape Gateway、Volume Gateway)の用途の違い、キャッシュ設計、オンプレミスからS3への透過的なアクセス、ハイブリッドストレージアーキテクチャを解説。

一言結論

Storage GatewayはNFS/SMB/iSCSI/VTLの各プロトコルでオンプレミスのアプリケーションをほぼ変更せずにS3やAWS Backupと統合できるため、物理テープをクラウドへ移行する際やオンプレのファイルサーバーをS3に段階移行する際の最適解となる。

Storage Gateway の概要

Storage GatewayはオンプレミスのアプリケーションとAWSクラウドストレージをシームレスに統合するサービスだ。オンプレミスのアプリケーションをほぼ変更せずにS3やAWS Backupを利用できる。

Storage Gatewayの役割:
  → オンプレミス ↔ AWS クラウドのハイブリッドストレージ
  → 既存アプリケーションの変更なしにクラウドストレージを活用
  → ローカルキャッシュで低レイテンシーのアクセスを維持
  → バックアップのクラウドへの移行

Storage Gateway の4種類

S3 File Gateway

NFS/SMBプロトコルでS3へのファイルアクセスを提供する。

用途:
  → オンプレミスのファイルサーバーをS3に移行
  → バックアップ先をS3に設定
  → 既存のNFS/SMBアプリケーションをそのままクラウドに接続

動作:
  オンプレミスアプリ → NFS/SMB → File Gateway → S3
  ローカルキャッシュで最近アクセスしたファイルを高速提供
  ファイルはS3オブジェクトとして保存(S3コンソールからも参照可能)
  
ストレージクラス:
  → S3 Standard, S3-IA, S3 Glacier等に保存先を指定可能
  → ライフサイクルポリシーと組み合わせてコスト最適化
# S3 File Gateway の設定(コンソールまたはStorageGateway API)
aws storagegateway create-nfs-file-share \
  --client-token "token-001" \
  --gateway-arn arn:aws:storagegateway:ap-northeast-1:123456789012:gateway/sgw-xxx \
  --nfs-file-share-defaults ChownAllowed=false,DirectoryMode="0777",FileMode="0666",Uid=65534,Gid=65534 \
  --role arn:aws:iam::123456789012:role/StorageGatewayRole \
  --location-arn arn:aws:s3:::my-backup-bucket \
  --default-storage-class S3_STANDARD

FSx File Gateway

Amazon FSx for Windows File ServerへのSMBアクセスをオンプレミスに提供。

用途:
  → Windows環境からFSx for Windowsへの低レイテンシーアクセス
  → Active Directoryとの統合
  → WindowsアプリのファイルをFSxに保存

S3 File Gateway との違い:
  S3 File Gateway: S3にファイルを保存(NFS/SMB)
  FSx File Gateway: FSx for Windowsにファイルを保存(SMBのみ)

Volume Gateway

ブロックストレージ(iSCSI)をオンプレミスに提供する。

Cached Volume(キャッシュ型):
  → 主データはS3に保存、最近使ったデータのみローカルキャッシュ
  → ローカルストレージを最小化
  → S3からのポイントインタイム復旧スナップショット

Stored Volume(保存型):
  → 主データはローカルに保存、S3に非同期バックアップ
  → 低レイテンシーの読み書き
  → EBS Snapshotとして完全なポイントインタイムスナップショット

Tape Gateway(仮想テープライブラリ)

既存のバックアップソフトウェア(Veeam, Veritas等)からの仮想テープをS3/S3 Glacierに保存する。

用途:
  → 物理テープを置き換え(テープバックアップの移行)
  → 既存バックアップソフトウェアの変更なし
  → VTL(Virtual Tape Library)プロトコル対応
  
Tape Archive(テープアーカイブ):
  → 仮想テープをS3 Glacier または Glacier Deep Archiveに移動
  → 長期保管コストを大幅削減

キャッシュ設計

Local Cache のサイジング:
  S3 File Gateway:
    → 最低20%のアクティブデータがキャッシュに収まるよう設計
    → アクセスパターンを分析してキャッシュサイズを決定
    
  Volume Gateway(Cached):
    → 最低20%のキャッシュ使用率を維持
    → キャッシュが不足するとS3からの読み取りが増えレイテンシー増大
    
推奨: CloudWatchの CacheHitPercent と CachePercentUsed を監視

ゲートウェイのデプロイ形態

デプロイ方法:
  1. VMware vSphere / Hyper-V 上の仮想マシン
  2. AWS Storage Gateway ハードウェアアプライアンス(実機)
  3. Amazon EC2インスタンス(AWSクラウドへの移行フェーズ)
  4. Linux KVM
  
最小要件(S3 File Gateway):
  CPU: 4コア
  メモリ: 16GB RAM
  キャッシュストレージ: 150GB以上

試験頻出ポイント

シナリオ回答
NFS/SMBでオンプレからS3にファイルを保存S3 File Gateway
物理テープをクラウドに移行Tape Gateway
オンプレのWindowsファイル共有をFSxにFSx File Gateway
ブロックデバイスをiSCSIでオンプレに提供Volume Gateway
主データをS3に置いてキャッシュのみローカルVolume Gateway(Cached Volume)

まとめ

Storage GatewayはNFS/SMB/iSCSI/VTLの各プロトコルでオンプレミスのアプリケーションをほぼ変更せずにAWSストレージを利用できる。既存のバックアップインフラをクラウドに段階的に移行する際に特に有効だ。