Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon グローバルアクセラレータで健康チェックを構成するためのベストプラクティスは何ですか


グローバルアクセラレータで健康チェックを構成するためのベストプラクティスは何ですか


AWS Global Acceleratorの健康チェックを構成するためのベストプラクティスは、高可用性と最適なトラフィックルーティングを維持するために、エンドポイントの健康を正確で安全で効率的な監視を確保することに焦点を当てています。以下は、AWSドキュメントと関連するベストプラクティスに基づいた詳細なガイドラインです。

##グローバルアクセラレータで健康チェックを構成するための重要なベストプラクティス

1。適切な健康チェックプロトコルとポートを使用

- アプリケーションの性質とエンドポイントの応答能力を最もよく反映するヘルスチェックプロトコル(TCP、HTTP、またはHTTPS)を選択します。 TCPヘルスチェックは、Synパケットを送信してネットワークレベルの接続を検証し、HTTP/HTTPSチェックは実際のHTTP GETリクエストをアプリケーションエンドポイント[6] [9]にシミュレートします。
- 一貫性のためにアクセルのリスナーポートを一致させるように、ヘルスチェックポートを構成します。ヘルスチェックに別のポートを使用する場合は、ファイアウォールとセキュリティグループのルールが、ルート53の健康チェッカーが使用するIP範囲のみへのアクセスを制限して、ポートを公に露出させるのを防ぐことを確認してください[1] [4]。
-EC2インスタンスまたはUDPリスナーを使用した弾性IPエンドポイントの場合、Global AcceleratorはリスナーポートでTCPヘルスチェックを実行するため、TCPサーバーがそのポートで実行されていることを確認してください。それ以外の場合、エンドポイントは不健康にマークされます[1]。

** 2。健康チェックのセキュリティとアクセスを確保*

- ファイアウォールおよびルーター構成のAmazon Route 53の健康チェッカーに関連付けられたIPアドレスからのインバウンドトラフィックを許可します。これは、特にEC2インスタンスまたは弾性IPエンドポイント[1] [4]、特にEC2インスタンスまたは弾力性のあるIPエンドポイントで成功するために重要です。
- 非デフォルトヘルスチェックポートを使用する場合、セキュリティリスクを回避するために、ルート53ヘルスチェックIP範囲へのみのポートへのアクセスを制限します[1]。
- ルート53の健康チェッカーが使用するIPアドレス範囲の変更に対応するために、セキュリティグループのルールを定期的に確認および更新します。

3。ヘルスチェックタイミングパラメーターを思慮深く構成

- ダウンタイムに対するアプリケーションの許容度とエンドポイントの重要性に基づいて、ヘルスチェック間隔(チェック間の時間)を設定します。より短い間隔は障害をより速く検出しますが、負荷とコストを増加させますが、より長い間隔は負荷を減らしますが、遅延障害検出を減らします[5]。
- 感度と安定性のバランスをとるように、しきい値カウント(エンドポイントの健康状態を変更する前に連続した成功または障害の数)を構成します。一般的なデフォルトは3で、これは誤検知と検出速度の間の良いトレードオフを提供します[1] [9]。
- それらを調整する特定の理由がない限り、デフォルトのタイムアウト値を使用します。たとえば、TCPヘルスチェックタイムアウトは、グローバルアクセラレータで3秒に固定されています[6]。

4。ヘルスチェックをエンドポイントタイプに合わせる

- グローバルアクセラレータがロードバランサーの健康状態を使用してエンドポイントの健康を決定するため、ネットワークロードバランサー(NLB)またはアプリケーションロードバランサー(ALB)エンドポイントの場合、グローバルアクセラレータではなく、ロードバランサー自体のヘルスチェックを構成します[1]。
-EC2インスタンスまたは弾性IPアドレスの場合、グローバルアクセラレータでヘルスチェックを直接構成し、実際のサービスの可用性を反映する適切なポートとプロトコルを指定します[1]。

5。 http/httpsの意味のある健康チェックパスを使用

-HTTPまたはHTTPSの健康チェックを使用する場合、アプリケーションの健康を正確に表すURIパス(たとえば、ホームページではなく専用のヘルスチェックエンドポイント)を指定します。これにより、ヘルスチェックは、ネットワークの可用性だけでなく、アプリケーションレベルの準備を反映します[6]。
- URIパスを簡潔で有効に保ち、フォワードスラッシュから始めて、許可された文字を含む[6]。

6。ヘルスチェックメトリックとログを監視

- 定期的にヘルスチェック結果とクラウドウォッチメトリックを確認して、パターンまたは繰り返し障害を特定します。これは、プロアクティブなトラブルシューティングと容量計画に役立ちます[5]。
-CloudWatchアラームを設定して、エンドポイントが不健康になったり回復したりしたときにすぐにチームに通知し、インシデントへの迅速な対応を可能にします[5]。

7。フェイルオーバーと回復戦略を実装

- インスタントフェールオーバーのために、健康的なエンドポイントにのみトラフィックをルーティングするグローバルアクセラレータの能力を活用します。
- エンドポイントの停止と回復中にスムーズなトラフィックの移行を確保するために、フェイルオーバーとフェールバックシナリオをテストします[5] [8]。

8。健康チェックを更新し続ける

- ポート、プロトコル、またはヘルスチェックパスの変更など、アプリケーションが進化するにつれて、健康チェック構成を定期的に確認および更新します。
- 不必要な監視と潜在的なセキュリティエクスポージャーを回避するために、エンドポイントの健康チェックを使用しなくなりました[5]。

これらのベストプラクティスに従うことにより、グローバルアクセラレータの健康チェックがエンドポイントの健康に関する正確で安全な、タイムリーな情報を提供し、信頼性の高いトラフィックルーティングとアプリケーションの高可用性を可能にします。

引用:
[1] https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoint-groups-health-check-options.html
[2] https://aws.amazon.com/blogs/networking-and-content-delivery/best-practics-for-deployment-with-aws-global-accelerator/
[3] https://docs.aws.amazon.com/global-accelerator/latest/dg/introduction-how-it-works.html
[4] https://repost.aws/knowledge-center/global-accelerator-unhealthy-endpoints
[5] https://docs.aws.amazon.com/route53/latest/developerguide/best-practics-healthchecks.html
[6] https://www.alibabacloud.com/help/en/ga/user-guide/enable-and-manage-health-checks
[7] https://support.huaweicloud.com/intl/en-us/usermanual-ga/ga_03_5002.html
[8] https://tutorialsdojo.com/aws-global-accelerator/
[9] https://boto3.amazonaws.com/v1/documentation/api/1.16.27/reference/services/globalaccelerator.html