0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Trusted Advisor】特定のレコメンデーションを除外したい

Last updated at Posted at 2025-02-26

前置き

AWSを使っているみなさん。Trusted Advisorを有効活用していますか?
「コスト最適化」や「セキュリティ」「耐障害性」などのAWSレイヤでの改善をアドバイスしてくれます。
ただ、アドバイスしてくれるのはいいけど、〇〇はワケあって無視で良いとか、そういうのあると思います。
そこで特定のレコメンデーションを抑止する方法が意外に不便だったので、以下に備忘として記載します。

特定のレコメンデーションを除外する方法

AWS CLIの「batch-update-recommendation-resource-exclusion」を使います。(AWS CLIv2推奨)
なぜならマネージメントコンソールからだと、除外したいレコメンデーションを選んでも「非表示&更新」の項目がグレーアウトしていて、除外できないものが数多くある仕様だからです。
image.png

手順①除外したいレコメンデーションのチェックIDを調べる。
各レコメンデーションごとに異なりますので以下を参照してください。
https://docs.aws.amazon.com/ja_jp/awssupport/latest/user/trusted-advisor-check-reference.html

手順②AWS CLIから以下のコマンドを実行
ちなみに以下1.の〇〇〇は①で調べた値を入力します。

1. 対象項目の Check ID を指定して、チェック項目の ARN 情報を取得
例)
$ aws trustedadvisor list-recommendations --region us-east-1 --query 'recommendationSummaries[?checkArn==`arn:aws:trustedadvisor:::check/〇〇〇`].arn' --output text

2. 1. で取得したチェック項目の ARN 情報を指定して、チェック項目の対象リソースの ARN 情報を取得
例)
$ aws trustedadvisor list-recommendation-resources --recommendation-identifier <1. で取得した ARN 情報を指定> --region us-east-1 --query 'recommendationResourceSummaries[].[arn,exclusionStatus,regionCode,status]' --output table

3. 2. で取得したチェック項目の対象リソースの ARN 情報を指定して、非表示操作を試行
例)
$ aws trustedadvisor batch-update-recommendation-resource-exclusion --recommendation-resource-exclusions arn=<2. で取得したチェック項目の対象リソースの ARN 情報を指定>,isExcluded=true --region us-east-1

除外するとこんな感じになります。
image.png

除外するレコメンデーションが多い場合の簡単なスクリプト

#!/bin/bash

# ARNのリスト
RESOURCE_ARNS=(
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx1"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx2"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx3"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx4"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx5"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx6"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx7"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx8"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx9"
    "arn:aws:trustedadvisor::AWSアカウント番号:recommendation-resource/xxxx10"
)

# 各ARNに対してループ処理
for ARN in "${RESOURCE_ARNS[@]}"; do
    aws trustedadvisor batch-update-recommendation-resource-exclusion \
        --recommendation-resource-exclusions arn=$ARN,isExcluded=true \
        --region us-east-1
    echo "Updated exclusion for: $ARN"
done

参考URL

Trusted Advisor Recommendations の開始方法 - 特定のチェックの表示 -
https://docs.aws.amazon.com/ja_jp/awssupport/latest/user/get-started-with-aws-trusted-advisor.html#view-specific-checks

BatchUpdateRecommendationResourceExclusion
https://docs.aws.amazon.com/ja_jp/trustedadvisor/latest/APIReference/API_BatchUpdateRecommendationResourceExclusion.html

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?