概要
やりたいこと
AWS Config にかかる費用が高い。
原因は AWS リソースの設定変更が多いため。
AWS Config をなるべく安く使いたい。
AWS Config と AWS Config Rules の関係
AWS Config と AWS Config Rules の簡単紹介。
- AWS Config : AWS リソースの設定変更を記録する
- AWS Config Rules : 設定不備の監視を行う
この AWS Config Rules を利用するためには AWS Config を有効化する必要がある。
ただし、AWS Config による記録をしなくても、限定的に AWS Config Rules を利用することができる。
まず、 AWS Config Rules のトリガータイプには2種類ある。
- 設定変更 : 設定変更時にルール評価
- 定期的 : 指定した間隔でルール評価
Config の設定レコーダーがオフになっている場合、 AWS Config Rules は以下のように挙動となる。
- 設定変更 : ルール評価が実行されない
- 定期的 : 引き続き指定した間隔で評価が実行される
しかし、 AWS Config では記録する AWS リソースを選択することができる。
ルール評価したい AWS リソースのみを記録しておけばいい。
AWS Config で記録するリソースを選択する
AWS Config が記録するリソースを選択することができる。
CloudFormation では RecordingGroup で指定できる
Config Rules が何のリソースを監視しているかは、公式ドキュメントから確認する。
CloudFormation
AWS Config
ホワイトリスト形式なので、記録に残すリソースは下記より選択しないといけない。
今回は S3 Bucket のみを記録するよう設定。
ConfigRecorder:
Type: AWS::Config::ConfigurationRecorder
DependsOn: ConfigRecorderRole
DeletionPolicy: Delete
Properties:
RoleARN: !GetAtt ConfigRecorderRole.Arn
Name: !Sub "configuration-recorder-${AWS::Region}"
RecordingGroup:
AllSupported: false
IncludeGlobalResourceTypes: false
ResourceTypes:
- AWS::S3::Bucket
修正前。すべてのリソースが記録されるようになっている。
修正後。記録するものが S3 Bucket のみとなっている。
この状態で AWS Config Rules が設定変更時に検知ができることも確認。
コメント