Cloud9でAWS CLI v2を使えるようにセットアップする

AWS CLI v2 がGAされました!私はブラウザで使えるシェルとして、Cloud9をよく利用しています。Cloud9でもAWS CLI v2を使いたかったので、インストール手順をまとめました。
2020.02.12

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

AWS CLI v2 がGAされました!

私はブラウザで使えるシェルとして、Cloud9をよく利用しています。

Cloud9でもAWS CLI v2を使いたかったので、インストール手順をまとめました。

Cloud9を構築する

まずはマネジメントコンソールからCloud9の環境を作りましょう。東京リージョンap-northeast-1)でも使えます。

名前は何でもよいので適当に決めてください。今回はawscli-v2という名前にしています。

設定はデフォルトのままでよいので次に進みます。

〜〜〜〜〜〜〜〜〜〜〜〜(省略)〜〜〜〜〜〜〜〜〜〜〜〜

設定を確認して、Cloud9環境を作成します。

〜〜〜〜〜〜〜〜〜〜〜〜(省略)〜〜〜〜〜〜〜〜〜〜〜〜

数分待つとCloud9環境が作成されます。
Cloud9のデフォルトの aws コマンドのバージョンはv1ですね。これをv2に変えていきます。

Cloud9ではデフォルトでAWS Managed Temporary Credentialsが有効になっていて、ログインユーザーと同等の権限でAWS CLIを利用できます。しかし、その場合、IAM等の一部のアクションが制限されます。そのため、Cloud9でIAMの操作をしたい場合は次のブログを参考に、Cloud9のEC2にIAM Roleを付与してください。

AWS CLI(v1)をアンインストールする

AWS CLI v2を使う上で不要ですので、既存のAWS CLIを次のコマンドを実行してアンインストールします。

$ sudo pip uninstall awscli -y

AWS CLI v2をインストールする

ドキュメントの手順を参考に、AWS CLI v2をインストールします。

次のコマンドを実行すると、AWS CLI v2がインストールできます。

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install

AWS CLI v2のタブ補完を有効にする

AWSのブログを参考に、タブ補完を有効にします。

次のコマンドを実効すると、タブ補完が有効になります。

$ complete -C aws_completer aws

ログインするたびにコマンドを実行して有効化するのは面倒くさいので、.bash_profile に書いて有効化しておくと便利です。

$ echo '# aws completer' >> ~/.bash_profile
$ echo complete -C \'$(which aws_completer)\' aws >> ~/.bash_profile

そうすると、こんな感じにCloud9でAWS CLIの補完ができるようになります。

終わりに

AWS CLI v2がGAされたので、ガンガン使い倒していきます!

Cloud9は統合開発環境ですが、ブラウザで動くシェルとして使うこともできるので、AWS CLIの実行環境としてもオススメです。