ブログ

s3fsを使ってAmazon S3に簡単にデータをバックアップする

こんにちは、へっぽこプログラマーのYanchiです。

最近、AmazonのEC2を利用しているのですが、EC2はインスタンスを停止してしまうと、全てのデータが消滅してしまいます。
そのため、必要なデータをAmazon S3などの、バックアップストレージに保存する必要があります。
S3へのデータの転送方法はいろいろありますが、一番お手軽な(たぶん)s3fsを利用する方法を紹介します。



s3fsというのは、Amazon S3のバケットをマウントしてファイルシステムとして扱うことができるようにするツールです。
つまり、s3fsでマウントしたサーバー上のディレクトリに、保存しておきたいデータを移動したりコピーするだけでS3にバックアップできるのです。

まずはs3fsをインストールしましょう。
作業はEC2の仮想サーバーで行います。

まずはソースをゲットして解凍します。
[shell]
$ wget http://s3fs.googlecode.com/files/s3fs-r177-source.tar.gz
$ tar xvzf s3fs-r177-source.tar.gz
[/shell]

依存パッケージをインストール。もともと入っている場合はとばしてください。
[shell]
$ yum install fuse-devel
$ yum install gcc-c++
$ yum install curl-devel
$ yum install libxml2-devel
[/shell]

インストール実行
[shell]
$ cd s3fs
$ make install
[/shell]

インストールが完了したところで、実際使ってみましょう。
マウント先となる任意のディレクトリを作成します。
今回はテスト用にs3_testというディレクトリをマウントすることにします。
[shell]
$ mkdir /s3_test
[/shell]
初めてs3fsでマウントする場合は、まず以下のコマンドを実行します。
[shell]
$ modprobe fuse
[/shell]
次のコマンドでマウントします(S3にバケットがあることが前提です)。
[shell]
$ s3fs {バケット名} -o accessKeyId={アクセスキー} -o secretAccessKey={シークレットキー} /s3_test
[/shell]
なにもメッセージが出ませんがこれでマウントできているはずです。
あとはサーバー上でs3_testディレクトリにファイルを入れたり、コピーしたりするだけでS3上にファイルをバックアップしたことになります。
もちろん削除もできます。

僕でも出来たので誰でもできます(たぶん)。

2010年02月17日  投稿者:yano  

▲ PAGE TOP