やりたいこと
awsに環境構築を行い、そのアウトプットとしてアカウント上に構築した各種リソースの設定値を出力したい。
必要な物
aws cliの実行環境
各種リソースの読み取り権限を持ったIAMユーザー
aws cliの実行環境
まずはaws cliの実行環境の準備です。
Windowsは以下URLからaws cliのインストーラーをダウンロードしてPCに実行環境をインストールします。
https://awscli.amazonaws.com/AWSCLIV2.msi
コマンドプロンプトからawsコマンドを実行できるようになったかと思います。
IAMユーザーの作成
次に作成するツールからAWSにアクセスするためのIAMユーザの作成です。
AWSコンソールにアクセスします。
IAMの管理画面からユーザの追加を行います。
設定値は以下画面の通りです。
アクセス権は「ReadOnlyAccess」(全読み取り権限)を付与
※本来なら取得したいサービスの読み取り権限のみ付与するのが良し
これでユーザー作成します。
ユーザー作成後に表示されるアクセスキーとシークレットキーは後で使うので控えておきましょう
コマンドラインで情報を取得してみる
これでaws上から情報取得をできるので試してみます。
コマンドプロンプトを開いてaws configureを実行します。
#aws configure
対話形式で入力を求められますので以下入力します。
AWS Access Key ID [None]: 事前に取得したアクセスキー
AWS Secret Access Key [None]: 事前に取得したシークレットキー
Default region name [None]: ap-northeast-1
Default output format [None]: json
実際にアカウント上の情報をJSON形式で取得します。
例としてec2の仮想マシン情報を取得
aws ec2 describe-instances
コマンドのオプションでインスタンスIDの指定で特定インスタンスのみ取得なども可能。
アカウント上にあるEC2インスタンスの情報を取得できます。
awsコマンドについては公式の下記サイトに詳しく載ってるので参考になります。
https://docs.aws.amazon.com/cli/latest/index.html