💈

[TIPS]AWS Well-Architected tool の各種件数カウントする方法

1 min read

こんにちは。@hirosys_ です。
今回は、Well-Architected(W-A) tool を活用されている皆様で重要となる各種件数について、今回は AWS CLI でサクッと取得できるようにしました。

事前準備

AWS CLI を使うのであれば、 jq をインストールしておきます。AWS CloudShell を使用すればインストール済みなので楽です。
実行する IAM ユーザーや IAM Role には WellArchitectedConsoleReadOnlyAccess に準じたポリシーが割り当たっていればよいです。

もちろん、W-A Tool によるレビューを実施しておいてくださいね!

AWS CLIでの件数カウント方法

使用するコマンドは以下の通りです。取りたい情報が他にもあるといった場合は適宜、コマンドリファレンスを確認して対応いただけたらと思います。

  • aws wellarchitected list-workloads
  • aws wellarchitected get-lens-review

上記のコマンドを利用して、ワークロードの柱毎の各リスクの件数を出力するシェルスクリプトは以下の通りです。使いやすいように出力の仕方を適宜変えるのもよいでしょう。

#!/bin/bash

WORKLOADS=`aws wellarchitected list-workloads | jq -r '.WorkloadSummaries[].WorkloadId'`

for WORKLOAD in $WORKLOADS
do
  echo WorkloadId: $WORKLOAD
  echo Pillar,HIGH,MIDIUM,NONE,NOT_APPLICABLE,UNANSWERED
  aws wellarchitected get-lens-review --workload-id $WORKLOAD \
  --lens-alias wellarchitected \
  | jq -r '.LensReview.PillarReviewSummaries[]|[.PillarName,.RiskCounts.HIGH,.RiskCounts.MEDIUM,.RiskCounts.NONE,.RiskCounts.NOT_APPLICABLE,.RiskCounts.UNANSWERED]|@csv'

  echo 
done

実行するとこんな感じに出力されます。不要な行は適宜シェルスクリプト側で調整してみてください。

WorkloadId: dc35cef637cc8d2f53daf0f*********
Pillar,HIGH,MIDIUM,NONE,NOT_APPLICABLE,UNANSWERED
"Security",8,1,1,0,0
"Performance Efficiency",4,2,1,1,0
"Reliability",7,3,2,1,0
"Cost Optimization",8,1,1,0,0
"Operational Excellence",3,0,7,1,0

Discussion

ログインするとコメントできます