SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

流行りのクラウドサービスを操ってみよう!Amazon EC2/S3環境構築のすべて

クラウドとサーバーを同期できる便利ツール「S3Sync」 ~Amazon EC2/S3環境構築のすべて~

第5回 付録

  • X ポスト
  • このエントリーをはてなブックマークに追加

「S3Sync」のインストール

 まずは、「S3Sync」をローカルマシンにインストールします。次のコマンドを上から順番に実行していきましょう。流れとしては「ダウンロード」~「解凍」~「ツールの配置」となります。

$ wget http://s3.amazonaws.com/ServEdge_pub/s3sync/s3sync.tar.gz
$ tar zxvf s3sync.tar.gz
$ sudo cp -pr s3sync/ /usr/local/

 この例では、「/usr/local/s3sync」に配置していますが、配置場所は任意ですので、必要に応じて変更してください。

環境変数の設定

 「Access Key ID」と「Secret Access Key」を次のように環境変数として設定します。「Access Key ID」と「Secret Access Key」の確認方法については、第2回を参考にしてください。

$ export AWS_ACCESS_KEY_ID='XXXXXXXXXXXXXXXXXXXX'
$ export AWS_SECRET_ACCESS_KEY='XXXXXXXXXXXXXXXXXXXXXXXXXXX'

 このように最低限、上記2つの環境変数を設定するとS3Sync.rbが実行可能となります。

 なお、環境変数ではなく付属している「s3config.yml.example」を参考にして、設定ファイル(/etc/s3conf/s3config.yml)に記載しておくのも良いでしょう。また、頻繁に「S3Sync」を利用する場合は、「S3Sync」の配置先にPATHを設定しておくと、使いやすくなります。

データを「Amazon S3」へアップロード

 同期させたい元データのあるディレクトリを「/path/to/data」、同期先のS3のバケット名を「bucketname」、そのバケット内の同期先となるディレクトリを「data」とすると、S3の同期先にデータをアップロードするコマンドは次のようになります。

$ ruby s3sync.rb -r --delete /path/to/data bucketname:data/

 -rオプションは、そのディレクトリ以下を再帰的に実行します。--deleteオプションは、同期先のディレクトリに存在するファイルのうち、同期元のディレクトリに存在しないファイルを削除します。

 また、-sオプションを付ける事で、「Amazon S3」への接続にHTTPS(暗号化通信)を利用します。その他のオプションについては-hオプションを付ける事で、確認できます。

データを「Amazon S3」からダウンロード

 ダウンロードする場合は、アップロード時と同様、次のコマンドとなります。

$ ruby s3sync.rb -r --delete bucketname:data/ /path/to/data

 基本的には、アップロード時と、引数の指定順序を逆にするだけです。

 このように「S3Sync」の使い方は、オプションの指定や引数の順序においてrsyncと類似しているので、rsyncを使っている方は違和感なく利用できると思います。「Amazon S3」のストレージへ、ちょっとしたデータのバックアップを行う際、非常に使えるツールと言えるでしょう。

次回予告

 今回は「Amazon EC2」のデータを「Amazon S3」と同期するツール「S3Sync」の概要や使い方を紹介しました。

 次回は、「Amazon EC2」のインスタンス上で「Windows Server」や「SQL Server」を動かす方法について紹介していく予定です。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
流行りのクラウドサービスを操ってみよう!Amazon EC2/S3環境構築のすべて連載記事一覧

もっと読む

この記事の著者

並河 祐貴(ナミカワ ユウキ)

TIS株式会社 / 社内ベンチャーカンパニー「SonicGarden」所属。オブジェクト指向開発、開発環境・ツール整備に従事した後、近年はRuby on Railsを中心としたオープンソース系ミドルウエアの検証 / 導入や、X...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3614 2009/03/10 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング