SysOps管理者が、ある企業のWebアプリケーションのパフォーマンス問題を調査しています。このアプリケーションは、Auto Scalingグループに属するAmazon EC2インスタンスで実行されている。アプリケーションは1日を通して不定期に大きなトラフィックの増加を受けます。トラフィックが急増する時間帯に、Auto Scalingグループは十分な速さで容量を追加していません。その結果、ユーザーはパフォーマンスの低下を経験している。同社は、Webトラフィックが増加したときに、ユーザーエクスペリエンスに悪影響を与えずにコストを最小限に抑えたいと考えている。
A. セキュリティグループが変更されたときにAWS Lambda関数を呼び出すAmazon EventBridge(Amazon CloudWatch Events)ルールを作成する。セキュリティグループのコンプライアンスを評価し、すべてのポートのすべてのインバウンドセキュリティグループルールを削除し、セキュリティグループがコンプライアンスに違反している場合はSysOpsチームに通知するようにLambda関数を構成する。
B. セキュリティグループの変更に対してAWS CloudTrailメトリックフィルタを作成する。Amazon CloudWatchアラームを作成し、メトリックが0より大きくなったときにAmazon Simple Notification Service (Amazon SNS)トピックを通じてSysOpsチームに通知する。 AWS Lambda関数をSNSトピックにサブスクライブし、セキュリティグループルールを削除して修復する。
C. AWS Config の restricted-ssh 管理ルールを有効にします。AWS Systems Manager Automation AWS-DisablePublicAccessForSecurityGroup ランブックを使用して、AWS Config ルールに自動修復を追加します。Amazon EventBridge(Amazon CloudWatch Events)ルールを作成して、ルールがコンプライアンス違反の場合にSysOpsチームに通知する。
D. セキュリティグループの変更に対してAWS CloudTrailメトリックフィルタを作成する。CloudWatchアラームにAWS Systems Managerアクションを追加して、アラームがALARM状態のときにSystems Manager Automation AWS-DisablePublicAccessForSecurityGroupランブックを使用してセキュリティグループを一時停止する。Amazon Simple Notification Service (Amazon SNS) トピックを 2 番目のターゲットとして追加して、SysOps チームに通知する。