python製aws command line interfaceを使う
AWS command line interface (python)
をmacで使うまで。
これなに?
よくでてくるbash製のclientより使い易い。
出力もjsonで整理されてて綺麗。
準備
AWSの画面からSecurity Credentialsを探して
Access Key ID
Secret Access Key
を手に入れる(http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html)
ダウンロード
easy_install awscli
環境変数
~/.bash_profileに以下を書く
export AWS_ACCESS_KEY_ID=xxxxxxxxxxxxxxxxx export AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx export AWS_REGION=ap-northeast-1
これで使える
微調整
これで使えるはずだが、、、
もし、全角の名前のタグを入れていると、
$ aws ec2 describe-instances 'ascii' codec can't encode characters in position 6387-6394: ordinal not in range(128)
なんかエラー言われる。
ここ(http://www.yshnb.jp/389/)を参考に
以下、改修する
/usr/local/bin/aws
#!/usr/bin/python # EASY-INSTALL-SCRIPT: 'awscli==0.12.0','aws' __requires__ = 'awscli==0.12.0' import pkg_resources import sys reload(sys) sys.setdefaultencoding("UTF-8") pkg_resources.run_script('awscli==0.12.0', 'aws')
API一覧
aws ec2 help