AWS CLIを使ってAWSリソースを操作する際、プロファイルの切り替えやSSMへの接続が面倒に感じること、ありますよね? 特に複数のAWSアカウントやリージョンを扱う場合、毎回コマンドを打つのが手間です。
設定が面倒な理由
毎回aws configureコマンドで設定するのは時間がかかりますし、タイプミスも起こりやすいです。SSM接続も同様で、aws ssm start-sessionコマンドにインスタンスIDを指定する必要があり、これもまた面倒な作業です。設定ファイルも複数管理すると、どれが最新かわからなくなることも。
# プロファイルの切り替え
aws configure --profile my-profile
# SSM接続
aws ssm start-session --target i-xxxxxxxxxxxxxxxxx
これらの問題を解決するために、シェルスクリプトを作成しました。このスクリプトを使うことで、プロファイルの切り替えやSSM接続が簡単になります。名付けてaws-login。
シェルスクリプトで解決!
今回作成したaws-loginスクリプトは、以下の機能を提供します。
- プロファイルの選択と設定
- SSMへの接続
- 環境変数への反映
使い方
- GitHubリポジトリからスクリプトをダウンロードします。
- スクリプトに実行権限を与えます。
chmod +x aws-login - スクリプトを実行します。
./aws-login
スクリプトは、対話形式でプロファイルの選択やSSM接続に必要な情報を尋ねてきます。指示に従って入力するだけで、設定が完了します。
スクリプトの中身
スクリプトは、aws configureコマンドやaws ssm start-sessionコマンドをラップしています。また、環境変数を設定することで、AWS CLIが利用する認証情報を自動的に切り替えます。
#!/bin/bash
# プロファイルを選択
read -p "Enter profile name: " profile
# 環境変数を設定
export AWS_PROFILE=$profile
# SSM接続
read -p "Enter instance ID: " instance_id
aws ssm start-session --target $instance_id
ちょっとした工夫:
スクリプトは、設定ファイルを自動的にバックアップする機能も備えています。これにより、設定を間違えてもすぐに元に戻すことができます。また、スクリプトは、AWS CLIのバージョンをチェックし、最新バージョンでない場合は警告を表示します。お陰で私はいつも最新のAWS CLIを利用できています。
ロードバイク中のひらめき:
先日、ロードバイクで多摩川沿いを走っていたら、ふとこのスクリプトのアイデアが浮かびました。AWS CLIの設定が面倒で、もっと簡単にできないかと思っていたんです。🚴
まずは形に!
このスクリプトは、まだ完璧ではありませんが、日々の作業を効率化するのに役立つはずです。「完璧を目指さず、まずは形にする」という私のモットーを体現しています。
AWS CLIの設定を簡単にするaws-loginスクリプトをご紹介しました。このスクリプトを活用して、AWSの利用をより快適にしてくださいね!



コメント