AWSのCLIを使う
AWSはマネージメントコンソールのGUIがちゃんとしてるけどやっぱりCLIからも操作したいよねー。
というわけでAWSのCLIを使ってみた。
- CLIのインストール
公式サイトは以下にあり、Mac/Linuxはpythonのpip経由でインストール。Windowsはインストーラが配布されてます。
AWS コマンドラインインターフェイス(CLI - AWS サービスの制御・管理)|AWS
今回インストール先の環境は手元のMac OSX 10.9 (Marvericks)です。
$ sudo easy_install pip $ sudo pip install awscli $ aws --version aws-cli/1.3.24 Python/2.7.5 Darwin/13.3.0
- アクセスキーなど環境変数の設定
AWSのアクセスキーなどの設定は適当な別ファイル(awscli.conf)などに分けて.bashrcなどでファイルパスを指定しておくことができるのアクセスキーのファイルの権限を400とかに絞れる。
$ vi ~/work/aws/awscli.conf [default] aws_access_key_id=(アクセスキーID) aws_secret_access_key=(シークレットアクセスキー) region=(リージョン) $ chmod 400 awscli.conf $ vi ~/.bashrc export AWS_CONFIG_FILE=~/work/aws/awscli.conf $ . ~/.bashrc
アクセスキーIDとシークレットアクセスキーはマネージメントコンソールにログインして以下のURLで確認できます。
"Your Security Credentials"
リージョンはap-northeast-1とかの使ってるリージョン名を指定する。
- CLIの実行
お試しでEC2のインスタンス情報を取得してみる。
$ aws ec2 describe-instances
JSON形式で情報が取得できれば問題なし。
- 補完の設定
CLIのコマンドが覚えられないので以下の補完の設定をしておくとタブキー連打で候補の補完が効くようになるので幸せになれる。
$ complete -C aws_completer aws
コマンドの引数がわからない場合は引数にhelpとか渡すと引数の説明が出る。
$ aws ec2 describe-instances help
CLIのコマンドやら引数やらの仕様を眺めてると何ができるかがなんとなく推測できてよいよね。
細かいことは公式のCLIのリファレンス参照。
aws — AWS CLI 1.16.81 Command Reference