継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

AWS Config の変更記録を除外するリソース登録を Terraform でやってみた

タダです.

以前の記事で AWS Config でリソース変更履歴を追跡しないよう除外できるようになったのをまとめていきましたが,当時 Terraform の対応がされていませんでした.が,Terraform Provider AWS のバージョン 5.5.0 で対応されました.この記事ではリソース変更記録の除外を Terraform でやってみたので備忘録として書きます.

sadayoshi-tada.hatenablog.com

github.com

AWS::EC2::NetworkInterface を除外するコード

AWS Config の追跡対象から AWS::EC2::NetworkInterface で除外するコードを書くと以下のようになります.

resource "aws_config_configuration_recorder" "default" {
  name     = "default"
  role_arn = "arn:aws:iam::1234567891011:role/service-role/config-role-ap-northeast-1"
  recording_group {
    all_supported                 = false
    include_global_resource_types = false
    exclusion_by_resource_types {
      resource_types = ["AWS::EC2::NetworkInterface"]
    }
    recording_strategy {
      use_only = "EXCLUSION_BY_RESOURCE_TYPES"
    }
  }
}

terraform plan の結果イメージ

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # aws_config_configuration_recorder.default will be updated in-place
  ~ resource "aws_config_configuration_recorder" "default" {
        id       = "default"
        name     = "default"
        # (1 unchanged attribute hidden)

      ~ recording_group {
          ~ all_supported                 = true -> false
          ~ include_global_resource_types = true -> false
            # (1 unchanged attribute hidden)

          ~ exclusion_by_resource_types {
              ~ resource_types = [
                  + "AWS::EC2::NetworkInterface",
                ]
            }

          ~ recording_strategy {
              ~ use_only = "ALL_SUPPORTED_RESOURCE_TYPES" -> "EXCLUSION_BY_RESOURCE_TYPES"
            }
        }
    }

Plan: 0 to add, 1 to change, 0 to destroy.

関連情報

registry.terraform.io

適用後の確認

以前の記事を書いた時は東京リージョンではリソースの除外ができなかったのですが,この記事時点では対応したため東京リージョンで terraform apply 後の状況確認しました.意図通り AWS::EC2::NetworkInterface を除外できました.

まとめ

AWS Config の変更記録を除外するリソースの設定を Terraform で定義する場合の対応をまとめました.