EC2 Auto Scalingグループで動作する機密データ処理アプリケーションがあります。スケールインイベント発生時、インスタンス上で実行中のジョブが完全に終了してからインスタンスを終了させる必要があります(ジョブは最大15分かかる場合があります)。ジョブ完了後にはSNSトピックへの通知も必要です。最も運用負荷の低い設計はどれですか?
Auto Scalingライフサイクルフックは、インスタンス終了前にTerminating:Wait状態で最大数時間の保留が可能です。EventBridgeでLambdaをトリガーしジョブ完了確認後にCompleteLifecycleActionを呼ぶことで、AWSネイティブな完全自動化が実現できます。 選択肢A: CloudWatch+SSMの組み合わせは連携が複雑。 選択肢C: UserDataはOSレベル操作でAuto Scalingと非連携。 選択肢D: インスタンス保護方式はアプリがAWS APIを直接呼ぶ必要があり疎結合になりません。