lxyuma BLOG

開発関係のメモ

python製aws command line interfaceを使う

AWS command line interface (python)

をmacで使うまで。

これなに?

http://aws.amazon.com/jp/cli/

よくでてくる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