LoginSignup
0
0

特定のEC2インスタンスが含まれているターゲットグループを確認する

Posted at

目的

特定のEC2インスタンスが含まれているALBのターゲットグループ一覧を確認したいが、ターゲットグループの数が多く目視で確認するのが大変。
AWS CLIを使ってEC2インスタンスIDからターゲットグループ名の一覧を取得するスクリプトを作成したので備忘録として残しておく。

実行環境

AWS CLI
Windows PowerShell

スクリプト

# 変数をセット
$REGION = "REGION"
$INSTANCE_ID = "INSTANCE_ID"
$FILEPATH = "FILE PATH"

# 全てのターゲットグループを取得
$targetGroups = aws elbv2 describe-target-groups --region $REGION | ConvertFrom-Json

$targetGroupNames = @()

foreach($tg in $targetGroups.TargetGroups){
    # ターゲットグループのヘルスチェック情報から紐づいているEC2インスタンスを取得
    $targetHealthDescs = aws elbv2 describe-target-health --target-group-arn $tg.TargetGroupArn --region $REGION | ConvertFrom-Json

    # 指定したEC2インスタンスIDが含まれているものをフィルタリング
    if ($null -ne ($targetHealthDescs.TargetHealthDescriptions | Where-Object {$_.Target.Id -eq $INSTANCE_ID})){
        $targetGroupNames += $tg.TargetGroupName
    }
}

# 結果をファイルに出力
$targetGroupNames | Out-File -FilePath $FILEPATH

※ChatGPTにベースを作成してもらいました。

実行方法

スクリプト内のREGION, INSTANCE_ID, FILEPATHに適切な値を入力したうえでスクリプトを実行。
実行結果はFILEPATHに指定したファイルに出力される。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0