以下のようなスクリプトを作って
#!/bin/bash
export AWS_ACCESS_KEY_ID=your_access_key
export AWS_SECRET_ACCESS_KEY=your_secret_access_key
export AWS_DEFAULT_REGION=your_region
aws ec2 describe-vpn-connections \
| jq -r ".VpnConnections[].VgwTelemetry[].Status" \
| tr -d '\n' \
| grep 'UPUP'
if [ $? -gt 0 ]; then
exit 2
fi
mackerel-agent で
[plugin.checks.vpn-status]
command = "/path/to/check_vpn_status.sh"
とでもして、監視用インスタンスに突っ込むと監視出来る。便利。Internet Gateway が複数ある場合は UPUPUPUP とかすればいいと思う。これ、uniq して /^UP$/
とか、とりあえず 1 本繋がっていればいいじゃんということなら UP だけ grep って感じで様子見。
Internet Gateway じゃなくて Virtual Private Gateway?
Internet Gateway は間違いなので VPN ステータスにした!