CentOSでec2-api-tools, ec2-ami-toolsを使えるようにする
CentOS5.0(x86_64)でAPI ToolsとAMI Toolsを動かすまでのメモ。まだインストールして、コマンドの起動とヘルプ確認した程度なので、以下の内容で完動しなかったらごめんなさい。
http://aws.amazon.com/のResources > Other Developer Tools > Amazon Elastic Compute Cloudから
をそれぞれダウンロード。
API Tools
API Toolsを利用するにはJDKが必要です。軽くググると「yumだとうまくいかなくて、Sunのサイトから落としてきた」なんてエントリも見ましたが、手元の環境では
sudo yum install java-1.6.0-openjdk.x86_64
するだけですんなり入りました。
あとはダウンロードしたzipを展開して、中身をそのまま/opt/ec2-api-tools/に移動。このへんは好みでご自由に。
AMI Tools
AMI Toolsを利用するにはrubyが必要です。ふつうは入ってるだろうから割愛。
RPMとzipが提供されてます。今回はCentOSに入れるので、RPMを落として入れればOK。
コマンド群は/usr/local/ec2にインストールされて、/usr/local/binにsymlinkを置くようになってるみたいです。
環境変数の設定
export JAVA_HOME=/usr export EC2_HOME=/opt/ec2-api-tools export EC2_CERT=~/work/ec2/cert-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem export EC2_PRIVATE_KEY=~/work/ec2/pk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.pem
API ToolsとAMI Toolsが別々のディレクトリにインストールされた状態で、EC2_HOMEをどう設定すればいいのか迷ったけど、API Toolsのディレクトリを指定しておけば大丈夫っぽい。AMI Toolsのzipに入ってるreadme-install.txtを見ると、「そういう時はEC2_AMITOOL_HOMEを指定すればいいよ」と書いてあるけど、RPMで入れた場合は特に指定しなくても動くみたいです。
AMI Toolsのコマンドは別の所に入ってるrubyスクリプトを呼んでいるだけで、zipに入ってるコマンドはそこで環境変数を参照してるけど、RPMの方はインストール先が決まってるからか、直接ディレクトリ指定しているので動くらしい。rubyスクリプトの方も軽く覗いてみたら、中でも使ってるように見えなかったので不要なのかなーと今のところ思ってます。心配ならEC2_AMITOOL_HOMEも指定しておくといいでしょう。
EC2_CERTとEC2_PRIVATE_KEYは特に説明不要ですね。Access KeyとかUser IDとかも環境変数に突っ込んでおけると楽なんだけど、そのへんの設定はないのかな。