EC2 API ToolおよびPython版CLIインストール・設定手順まとめ
こんにちは。
父の日には靴とパジャマをプレゼントし、端から見ると「夜逃げセットですか!?」って突っ込まれそうなニイヌマです。
AWS認定試験に向けて準備していたのですが、気分転換に手を動かしながら
技術ブログでも書いて頭の整理することが今回の記事の目的です。
今回のテーマは、
「各API ToolとPython版のCLIのインストールから環境設定、動作確認までこれを見ればOK」って事で書いていきます。
■前提条件
- AMI:Amazon Linux AMI 2013.03.1 64bit
- Instance-Type:m1.small
- Reagion:ap-northeast-1
■各種API Toolのダウンロード
以下のコマンドをそれぞれ実行します。
wget http://ec2-downloads.s3.amazonaws.com/AutoScaling-2011-01-01.zip wget http://ec2-downloads.s3.amazonaws.com/CloudWatch-2010-08-01.zip wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip wget http://ec2-downloads.s3.amazonaws.com/ElasticLoadBalancing.zip wget http://awsiammedia.s3.amazonaws.com/public/tools/cli/latest/IAMCli.zip wget http://s3.amazonaws.com/rds-downloads/RDSCli.zip wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip
■環境変数へ追加&反映
echo 'export JAVA_HOME=/etc/alternatives/jre' >> ~/.bashrc echo 'export EC2_HOME=/home/ec2-user/tools/ec2api' >> ~/.bashrc echo 'export AWS_AUTO_SCALING_HOME=/home/ec2-user/tools/autoscaling' >> ~/.bashrc echo 'export AWS_CLOUDWATCH_HOME=/home/ec2-user/tools/cloudwatch' >> ~/.bashrc echo 'export AWS_ELB_HOME=/home/ec2-user/tools/elb' >> ~/.bashrc echo 'export AWS_IAM_HOME=/home/ec2-user/tools/iam' >> ~/.bashrc echo 'export AWS_RDS_HOME=/home/ec2-user/tools/rds' >> ~/.bashrc echo 'export AWS_S3_HOME=/home/ec2-user/tools/s3' >> ~/.bashrc echo 'export AWS_ACCESS_KEY=Input Your Access Key' >> ~/.bashrc echo 'export AWS_SECRET_KEY=Input Your Sercret Key' >> ~/.bashrc echo 'export EC2_URL=https://ec2.ap-northeast-1.amazonaws.com' >> ~/.bashrc echo 'export PATH=$PATH:$JAVA_HOME/bin:$EC2_HOME/bin/:$AWS_AUTO_SCALING_HOME/bin/:$AWS_CLOUDWATCH_HOME/bin/:$AWS_ELB_HOME/bin/:$AWS_IAM_HOME/bin/:$AWS_RDS_HOME/bin/:$AWS_S3_HOME/bin' >> ~/.bashrc
source ~/.bashrc
■Python版CLIインストール&環境変数へ追加&動作確認
sudo easy_install pip sudo pip install awscli sudo pip install awscli --upgrade echo 'export AWS_CONFIG_FILE=/home/ec2-user/config_file' >> ~/.bashrc echo 'complete -C aws_completer aws' >> ~/.bash_profile aws help
aws ec2 describe-instances
これで各API ToolとCLIが使えるようになりました。
ね、簡単ですよね。これをまとめるのに苦労したんですが・・・
では、それぞれの起動&停止コマンドを比較してみます。
# START INSTANCE aws ec2 start-instances --instance-ids i-8131ff83 ec2-start-instances i-8131ff83 # STOP INSTANCE aws ec2 stop-instances --instance-ids i-8131ff83 ec2-stop-instances i-8131ff83
実行コマンドは、ちょっとCLIのほうがシンプルですね。
詳しいコマンドについてはこちらで確認して下さい。
まとめ
今回は、Amazon Linuxを使っているのでこのような設定のまとめになりましたが他のOSの場合だと他の手順が必要になってきますが、特に制約がなければAmazon Linuxを使用することをオススメします。
調べていると以前はEC2 API Toolsの認証にX.509証明書を使っていたそうですが、現在はACCESS KEYとSERCRET KEYのみで利用できるので簡単になりました。
余談ですが、ソースコードの埋め込みにGistの貼り付けが可能みたいです。
このような感じになるそうです。
参考リンクはこちらです。