はじめに
AWSは管理コンソール(GUI)から操作している人が多いと思います。
GUIは直感的に様々な操作が実行できて便利ですが、CLIはCLIでスクリプトを組んだり、オートメーション化できたりするので非常に便利です。
AWSではAWS CLIというツールが用意されており、これを使ってローカルの(macなら)ターミナルからAWSをコマンド経由で操作することができます。
それでは、今回はそのCLIをセットアップしてみたいと思います。
AWS CLIとは
AWS CLI(AWS Command Line Interface)は、AWSの各種サービスをコマンドラインから制御・管理できるようにする統合インターフェースです。
現在はAWS CLI v2として、AWS SSO(AWS Single Sign-On)など、新たな機能の設定が可能となっています。
CLIのインストール
それでは早速インストールしてみましょう。環境はmacOSで行います。
公式ドキュメントにもあるようにpip
経由でインストールしていきます。
$ pip install --upgrade --user awscli
インストールが完了したら、awscli
へのPATH
を通しておきたいのでexport
します。
今回使う環境ではzsh
を使っているため~/.zshrc
に記述しますが、~/.bashrc
などで問題ありません。
# awscli
export PATH=~/Library/Python/2.7/bin/:$PATH
書き換えが完了できたら環境変数を読み込み直し、aws
コマンドを叩いてみましょう。
以下のようにバージョン情報が表示されたらインストール成功です。
source ~/.zshrc
aws --version
# aws-cli/1.11.76 Python/2.7.13 Darwin/15.6.0 botocore/1.5.39
CLIの設定
ローカルのターミナルからAWSのリソースを触るためにはAccess Key
とSecret
が必要です。
まずはIAMユーザー
を作ってキーを発行します(IAMユーザーについてはこちらをご確認ください)。aws configure
を実行することで対話的な入力ができます。
AWSコマンド実行
設定が終わったところで実際にコマンドを叩いてAWSの情報を取得してみましょう。
もちろん実行できるコマンドは、上のaws configure
で設定したIAMユーザー
が実行できるコマンドのみとなります。
それではIAMのユーザー一覧を取得するaws iam list-users
コマンドを実行してみましょう。
ユーザーが取得できていることが確認できます。
まとめ
このようにAWS CLIの設定を行っていれば、ローカルのターミナルからもAWSが操作できます。
更にスクリプトと組み合わせることで、強力なオートメーションの実現が可能になります。