はじめに
写真や動画などのデータが溜まってきたため、我が家もNASを導入しました。主な用途は家族写真の保存。
選定機種はHDL-AAX4。あんまり覚えてないけど2万円くらいだったと思います。
一方で、万が一火災などに遭いNASもろとも積み重ねてきたデータが消えてしまうことは避けたいため、DR対策としてクラウドへのバックアップはしておきたいです。
これまではGoogleDriveにも保存していましたが、200GBを超えると一気に月額1,300円の2TBプランとなり流石に気が引けます。そもそもバックアップ用でクラウド上のデータを参照することはないため、目的に対してGoogleDriveなりDropBoxなりを使用するのはリッチすぎます。
そこでS3 Glacier Deep Archiveです。
S3 Glacier Deep Archive は、1 年に 1 回未満しかアクセスせず、非同期で取り出される長寿命のアーカイブデータに対して、(S3 Glacier Flexible Retrieval よりも) 最大 75% 低いコストのストレージを提供します。GB あたり月額わずか 0.00099 USD (TB あたり月額 1 USD) で、S3 Glacier Deep Archive は最もコストが低いストレージをクラウドで提供します。この料金は、オンプレミスのテープにデータを保持する場合やオフサイトにデータをアーカイブする場合よりも大幅に低額です。S3 Glacier Deep Archive は、費用効果が高く、管理が容易なテープの代替品です。特に、金融サービス、ヘルスケア、メディアおよび娯楽、パブリックセクターのお客様を対象としており、お客様のニーズを満たし、規制コンプライアンス要件を満たすために 7~10 年以上データセットを保管するように設計されています。S3 Glacier Deep Archive は、物理的に分離された複数の AWS アベイラビリティーゾーンにデータを冗長的に保存することにより、99.999999999% (11 9s) のデータの耐久性と 99.99% の可用性を実現できるように設計されています。
料金体系
比較のため、Glacier Deep ArchiveとS3 Standardの2つの月額料金を記載します(東京リージョン)。
以下に記載のある大容量とは、取り出しオプションの1つ。オプションによってダウンロード可能になるまでの時間が変わり、大容量は48時間以内、標準は12時間以内に取り出しが可能になる。理由がなければ安価な大容量を選択したほうが無難です。
保存するとき
Glacier Deep Archive | Standard | |
---|---|---|
ストレージ利用料 | 0.002 USD/GB | 0.025 USD/GB(~50TB) |
リクエスト料(PUT) | 0.065 USD/1,000リクエスト | 0.0047 USD/1,000リクエスト |
通信料(インターネット→S3) | 無料 | 無料 |
取り出すとき
Glacier Deep Archive | Standard | |
---|---|---|
リクエスト料(取り出し) | 0.025 USD/1,000リクエスト(大容量) | 無料 |
取り出し料 | 0.005 USD/GB(大容量) | 無料 |
通信料(S3→インターネット) | 0.114 USD/GB(~10TB) | 0.114 USD/GB(~10TB) |
容量とストレージ利用料の推移をまとめると次のようになります。円換算の為替は150円/USDです。
サイズ | ストレージ利用料(USD/月) | ストレージ利用料(円/月) |
---|---|---|
100GB | 0.2 USD/月 | 30 円/月 |
500GB | 1 USD/月 | 150 円/月 |
1TB | 2 USD/月 | 300 円/月 |
2TB | 4 USD/月 | 600 円/月 |
4GB | 8 USD/月 | 1200 円/月 |
GoogleDriveが2TBプランで1,300円/月、DropBoxが2TBプランで1,500円/月なので、保存料だけ考えると結構安上がりです。
使い方
S3バケットの準備
マネジメントコンソール等により、任意の名前のバケットを作成しておきます。アクセス管理はしっかりしておく。
バックアップするとき
AWS CLIを使ってバックアップします。必要な権限は付与されているものとします。
以下のようなバッチファイルを作成し、ダブルクリックだけで実行できるようにしておくと楽になります。
sync
サブコマンドによりS3との差分を計算し、S3にないファイルのみ保存されるため、毎回全ファイルがアップロードされることはありません。
自分のNASはファイルを削除したとき、すぐに削除されず一定時間trashboxフォルダに残る設定となっています。trashboxフォルダの中はバックアップされなくてよいため、--exclude
オプションで対象外に設定しておきます。
また、--delete
オプションをつけておくことで、NASから削除されたファイルもS3から削除されるようになります。
自分のケースでは面倒くさくてやってないですが、バックアップしたいものによってはtarなどに固めてからバックアップすることで、リクエスト数が減りより料金が抑えられるようになると思います。
@echo off
aws s3 sync <バックアップ対象のフォルダ> s3://<バケット名> --exclude "*trashbox/*" --delete --storage-class DEEP_ARCHIVE
実際の請求額
保存した月
約65GB・10,000ファイルのデータをアップロードしました。まず理論値を確認します。
(ストレージ利用料)+(リクエスト料) = 0.002 USD/GB * 65GB + 0.065 USD/1,000リクエスト * 10,000リクエスト = 0.78 USD
当時の為替(150円/USD)で、約117円です。実際の料金をCost Explorerで確認すると……。
若干実績のほうが高いですが、少し実験していた分があるので、だいたい計算どおりです。
次の月
次の月に、約23GB・3,800ファイルを追加でアップロードしました。ストレージの合計使用料は88GBです。こちらもまず理論値を確認します。
(ストレージ利用料)+(リクエスト料) = 0.002 USD/GB * 88GB + 0.065 USD/1,000リクエスト * 3,800リクエスト = 0.42 USD
当時の為替(157円/USD)で、約63円です。実際の料金をCost Explorerで確認すると……。
こちらもだいたい計算どおりです。
おわりに
簡単に使用・運用できるわりに安くクラウドへバックアップできるため、S3 Glacier、おすすめです。コスト異常検出は設定しておきましょう。