この検証の内容について
Autorecovery非対応のインスタンスタイプで Autorecovery っぽい自動復帰を実現するという建設的な内容ではありませんのでご注意ください。
AWSが提供する --alarm-actions ec2:recover を、上記ページで謳っている対応インスタンス以外に設定したらどうなるのかというあまり実りのない検証です。
検証内容
i3タイプのインスタンス立てて以下AWS CLI投げ込んでみました。
aws cloudwatch put-metric-alarm \
--alarm-name ec2_auto-recovery_i-0473259c7788121c9
--alarm-description "EC2 Auto Recovery" \
--metric-name StatusCheckFailed \
--namespace AWS/EC2 \
--statistic Maximum \
--period 300 \
--threshold 1 \
--comparison-operator GreaterThanOrEqualToThreshold \
--dimensions Name=InstanceId,Value=i-0473259c7788121c9 \
--evaluation-periods 1 \
--alarm-actions arn:aws:automate:ap-northeast-1:ec2:recover
結果
ふつーに投入出来てしまいました。残念ながらCloudwatch側では設定時にvalidateしていないようです。
※Statusが terminatedですが、これは検証完了直後にチキって削除し、その後にキャプチャした為です。CLoudwatch設定投入はStatus Runningのタイミングで検証しています。