Como as verificações de status já garantem que o kernel esteja ativo, é suficiente usar o módulo do kernel softdog . Embora este seja um temporizador de watchdog de software, o fato de ser um módulo de kernel significa que qualquer instância na qual o watchdog se torne indiferente também seria detectada pelo Verificação de status da instância executada pela AWS, que, por sua vez, encerraria a instância do EC2.
Aqui está o que eu fiz no meu script de configuração (este foi um AMI do Ubuntu):
cat >>/etc/modules <<EOF
softdog
EOF
apt-get install watchdog
cat >>/etc/watchdog.conf <<EOF
interval = 10
logtick = 60
max-load-1 = 24
max-load-5 = 18
max-load-15 = 12
min-memory = 65536
watchdog-device = /dev/watchdog0
ping = 8.8.8.8
interface = eth0
test-binary = /path/to/my/health/check/script.sh
test-timeout = 30
realtime = yes
priority = 1
EOF
...other setup stuff...
reboot
# If you don't want to reboot, you can instead do:
modprobe softdog
service watchdog restart