Bitcasaの代わりにAmazon S3 + Glacierを使ってみた

読了まで:約6分


こんにちま!

という時間帯でもないのですが、皆様お久しぶりです。 にゃるらコト、岡村 直樹(25)です。皆様は新年はいかがお過ごしでしたでしょうか。

僕はまあ、新年から、

  1. 毎日自分のブログのどれかを更新する
  2. DayOne の日記を毎日きちんと書く

というような日課を課して、それを実践しておる訳ですが、 まあ今のところ順調に書けております。

で、それはまあ良いとして、この度僕は、

  • Bitcasa を解約し、Amazon S3 + Glacier を使う

というようなコトを、昨日から今日にかけて行っておりました。

で、Bitcasa! Bitcasa カイヤクナンデ! っていうと、

  1. Bitcasa は結局の所バックアップにしか使ってなかった
  2. $99.00/1TB/yrなBitcasaってマジで? $10/yr じゃなかったの?
  3. あと Amazon S3 + Glacier 使いたい!

というのが主な理由。

まあ変えたかったから変えた、ってのが本当の所ではあります。

で。

本日の記事としては、その、

  • Amazon S3 + Glacier

という組み合わせで、

  • ファイルの永久アーカイブ計画

をやってみたので、その辺りのコトを今日は書きたいと思います。

0. Amazon S3 + Glacier を使う前にやったこと

これは大体、

  1. いらないファイルの処分
  2. ファイル構造の整理
  3. あと暗号化周りの下調べ

という辺りです。

で、僕は今回、いにしえの Windows XP 時代から保持していた、ジャンクなプログラミングコードを 全部捨てました 。lol

それはなんでかって言うと、

  1. ぶっちゃけ参照することがここ数年無かった
  2. Amazon Glacier に保存するにはちょっと微妙だった
  3. あと整理がめんどくさい

というのが主な理由。

まあ後ほかにもアーカイブしてたけど、これって要らないよね? みたいなファイルも当然の要に消去しました。あんまり取っておいても仕方が無いので。

まあ要らないファイルを棚卸しした、というのが、Amazon S3 + Glacier を使う前にやったことです。

1. Amazon S3 + Glacier を使ってみる

で、次に Amazon S3 + Glacier を使う訳ですが、この辺りについては、先人の知恵の方がとっても分かりやすい! ので、

辺りを参照していただけたらな、と思います。

で、僕が実際上記リンク先を見て作業したのは、

  1. Amazon S3 に専用の Bucket を作る
  2. IAM で Amazon S3 + Glacier 専用のグループとアカウントを作る
  3. s3cmdの最新の開発版を使ってファイルをう p する

という辺りです。

まあ 1 と 2 に関してはセキュリティ関係の作業なのですが、3 番の s3cmd に関して言えば、実は最初は使ってませんでした。

が、僕が最初に使った、S3 クライアントの、

は、なんか 5GB 以上のファイルがう p できなかったため、 s3cmdを導入してその辺りをごまかしました。

で、 s3cmds3cmd で罠があって、

  1. OSX のシステムの Python の site-packages/sitecustomize.pysys.setdefaultencoding("utf-8") してないと日本語名ファイルで s3cmd が死ぬ
  2. s3cmd は最新の開発版じゃないと 5GB 以上のファイルのう p ができない
  3. ~/.s3cfg の設定が US に向いてるのを直さないとおかしな挙動になる
  4. --server-side-encryptionは最新の開発版じゃないと使えない

という辺りにハマりました。

なので、 s3cmd を使う際には、 s3cmd の最新の開発版を使いましょう。

ちなみに s3cmd の最新版の導入に関しては、Homebrew 使ってる場合であれば、

$ brew install s3cmd --devel

で、導入できます。

2. Amazon S3 + Glacier を使う実際の流れ

で、基本的に Amazon S3 + Glacier を使う場合の流れ、というのは、

  1. Amazon S3 に専用の Bucket を作る
  2. 専用の S3 Bucket の Lifecycle で、1 日後に Glacier 送りにするよう設定する
  3. S3 に対して s3cmd で実際にファイルをう p する
  4. 後はアーカイブされるのを松
  5. 取り出すときは、ゆっくりしていってね! で取りだす

という感じです。

で、僕が実際に S3 にう p する際に使った s3cmd のコマンドは、

$ s3cmd sync ~/Files/ColdSleep/ s3://coldsleep/ --server-encryption --exclude=".DS_Store" --continue-put

という感じです。

で、実際にう p するのにかかった時間ですが、これはまあ半日ぐらい? って感じでしょうか。

まあ実際には試行錯誤の時間もありましたし、色々と他にも作業をしていたので、実際にかかった時間は正確には分からんのですが、まあ大体まるっと一日はつぶれるかな、って感じです。

で、あと気になるお値段の方ですが、今 2014-01-08T19:23:00+09:00 現在、他の S3 とかの費用を含めて、

  • $ 0.31

と成っております。が、これさらに増えるんじゃね? とちょっとビビっておりますが、一応請求額が$10.00 を超えるとアラートがくるように設定しているので、多分大丈夫でしょう。明日か明後日には Glacier 行きになるし。まあちょっとこの辺り明日に成ってみないことには分かりません(><;)

3. そして、現在のファイルのバックアップ構成

基本的には今は、

  1. Dropbox は Dropbox 使用する iOS/Mac アプリのファイル置き場専用
  2. iTunes や iPhoto、あるいは開発系コードの同期は Google Drive + [[Insync https://www.insynchq.com/]] で保存
  3. 永久に保存したいファイルは Amazon S3 + Glacier に保存
  4. あとは上記三つをまるっと  Drobo SG にもバックアップ

という体制を取り、基本的に Amazon S3 + Glacier へのバックアップは、自宅サーバになってる Mac mini late 2012 上でやってます。

で、実はまだ s3cmd の定期実行のコマンドは仕込んどらんのですが、ま、これはまあこの記事を書き終わったら仕込もうと考えております。

で、費用についてはなんだろう、多分以前の体制より安くなってるとは思いますが、とりあえずもうしばらくは様子を見て、また価格的にアレとかなったら体制を変更したいなーと思ってます。

4. という訳で以上

つーことで、

  • Bitcasa を使うのをやめて、Amazon S3 + Glacier を使うようにした

という話でした。

まあ実際今日から使い始めたんで、今のところはまだ試行錯誤の段階ですが、またもうちょっとノウハウ等たまってきたら、その辺りのコトをまた書きたいと思います。

という訳で新年一発目の Nyadgets!の記事を終わります。

皆様、今年もどうかよろしくお願いします!

#FIXME

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。
次に備えて待機中。

今は趣味でプログラミングをして
生活しています。