はじめに
AWSのRoute53でヘルスチェックの機能を使用して、サービスを監視するということを実践してみる。
環境
AWS
Route53
監視対象について
監視する対象は、 k-bushi.com とする。
※監視対象のドメインについてはRoute53で管理しているものでなくてもOK
費用について
- AWS Route53 ヘルスチェック
https://aws.amazon.com/jp/route53/pricing/
を参照する。
DNS フェイルオーバーを追加料金なしでお試しください* 新規および既存のお客様は、同じ AWS アカウント内にあるか、同じ AWS アカウントにリンクされた AWS エンドポイント**に対して最大 50 件のヘルスチェックを作成できます。
と記載がある。
今回対象とするサービスは、AWS以外のエンドポイントのため、 0.75USD ヘルスチェックごと / 月
となる。
手順
項目 | 設定値 |
---|---|
名前 | k-bushi.com |
モニタリングの対象 | エンドポイント |
エンドポイントの指定 | ドメイン名 |
プロトコル | HTTPS |
ドメイン名 | k-bushi.com |
ポート | 443 |
パス | / |
リクエスト間隔 | 30秒 |
失敗しきい値 | 3 |
レイテンシーグラフ | なし |
SNIの有効化 | あり |
ヘルスチェックステータスを反転 | なし |
ヘルスチェックの無効化 | なし |
ヘルスチェッカーのリージョン | 推奨を使用する |
注意点
エンドポイントについて
エンドポイントにインデックスページを指定すると、インデックスページで重い処理をしている場合にヘルスチェックの分だけ負荷がかかってしまう。
そのため、エンドポイント用のページを用意しておくのが良い。ヘルスチェッカーのリージョンについて
ヘルスチェッカーのリージョンは「推奨を使用する」指定すると、8つのリージョンからのヘルスチェックが行われる。 この場合、8つのリージョン分のリクエストがサーバに送られるため、不要であればリージョン数を減らすと良い。
ただし、最低3つのリージョンは選ぶ必要がある。
監視対象に異常があった場合に通知を行うことができるので設定をする。
項目 | 設定値 |
---|---|
アラームの作成 | はい |
通知の送信先 | 新しいSNSトピック |
トピック名 | monitoringk-bushi |
Eメール受取人のアドレス | [監視用のメールアドレス] |
SNSトピックとして登録したメールアドレスにサブスクライブのメールが来ているので確認をする。
8. 「ヘルスチェックの作成」を行う。
9. Route53のコンソールに移動するので確認をする。
設定したばかりだと、ヘルスチェックがまだ実施されていないのでデータ不足となる。
参考
AWS Route53
https://aws.amazon.com/jp/route53/Amazon Route 53 ヘルスチェックの作成と DNS フェイルオーバーの設定 https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/dns-failover.html
Amazon Route 53 ヘルスチェックの種類 https://docs.aws.amazon.com/ja_jp/Route53/latest/DeveloperGuide/health-checks-types.html
おわりに
AWS Route53でヘルスチェックを利用する方法を書いた。
昔に、Route53でドメインを管理していた頃は使っていたのだが、今回どこかで使えるかなと思って改めて手順として記載した。
k-bushi.comはVercelでデプロイしているので別に監視しなくてもよいので後で外す予定。
別のドメインで自分のサーバで管理する場合は使うかも。