監視の概要
API ゲートウェイは、アプリケーションを外部から隔離し、アップストリームサービスに対して重要な経路を保護します。API ゲートウェイシステムの状態を理解することは、信頼性の高い API ベースのシステムを提供するために重要です。
利用可能な監視および警告システムは多数あり、 Kong Gatewayは複数の解決策と統合されています。
- Prometheusは、オープンソースのシステム監視およびアラートツールキットです。Prometheus は、多次元の時系列データモデルとクエリ言語を提供します。Prometheus による監視ガイドでは、Kong Gateway Prometheusプラグインをインストールして構成する方法を説明します。
- Datadogは、人気の高いクラウドベースのインフラおよびアプリケーション監視サービスです。 Kong GatewayをDatadogと統合する情報の詳細については、 Datadogでメトリクスを収集するガイドを参照してください。追加の分析情報を得るために、DatadogプラグインKong Gatewayと統合することもできます。
- StatsDは、UDPまたはTCPでアプリケーションメトリクスをリッスンする軽量のネットワークデーモンで、集計された値を1つ以上のバックエンドサービスに送信します。Kong GatewayはStatsDプラグインでStatsDを直接サポートします。StatsDによるモニタリングで、StatsDを有効にするための詳細なガイドをご確認いただけます。
- 組み込みのノードレディネスエンドポイントを使用して、Kong Gatewayがリクエストを受け入れる準備ができたか監視します。
監視と密接に関連するのがトレーシングです。APIゲートウェイの計測に関する詳細については、Kong Gatewayトレーシングの参考資料を参照してください。
ヘルスチェックとは?
ヘルスチェックは、Kong Gateway ノードの状態を監視するためにインフラストラクチャコンポーネント(つまり、ロードバランサー)によって実行されるアクティビティです。これは、 Kong Gatewayノードが動作可能であり、受信要求を処理する準備ができているかどうかを判断するのに役立ちます。ヘルスチェック (「プローブ」とも呼ばれます) の詳細については、準備状況チェックガイドを参照してください。
ベストプラクティス
すべての環境は独特であり、それぞれに状況が異なるため、以下の一般的な推奨事項に従うことをおすすめします。
-
status_listen
構成パラメータを有効にします。 - 常にKong Gatewayのヘルスチェックを実行し、Datadog、Grafana、AppDynamicsなどの監視ダッシュボードでヘルスを追跡します。
- readiness probeを使用するには、Kong Gatewayのすぐ前にあるロードバランサ―またはその他のコンポーネントを構成します。
- Kubernetesの場合は、 Kong Gatewayのlivenessプローブとreadinessプローブの両方を構成して、ロードバランサーが正しいKubernetesエンドポイントを使用してトラフィックをKong Gatewayポッドに転送するようにします。 Kong Gateway readinessエンドポイントは、Kong Gatewayが最初の構成を読み込み、必要なすべてのデータ構造を構築するのに常に短時間でトラフィックを正常にプロキシできるようになるため、起動直後に
200 OK
で応答することを期待しないでください。 - インシデントが発生した場合に備えて積極的に対応できるように、ヘルスチェックのレスポンスに基づいてアラートを設定します。
-
kong health
CLIコマンドを使用してKong Gatewayの全体的なヘルスを検証しないでください。このコマンドはKongプロセスが実行されていることのみを確認し、構成の機能や有効性は確認しません。 - クラスタのすべてのノードが監視されていることを確認します。たとえば、クラスタ内のデータプレーンノードを1つだけチェックしても、同じクラスタのその他のデータプレーンノードの健全性について信頼性のあるインサイトを得ることはできません。