Container Service for Kubernetes (ACK) の Ingress コントローラーは、すべての HTTP リクエストログを標準出力にストリーミングします。ACK は Ingress のアクセスログを Simple Log Service にも統合しており、分析とモニタリングのためのダッシュボードをすばやく作成できます。このトピックでは、トラブルシューティングのために Ingress ダッシュボードを Application Real-Time Monitoring Service (ARMS) と併用する方法について説明します。
前提条件
-
ログ収集コンポーネントがインストールされていること。
-
Nginx Ingress のログ収集が有効になっていること。
手順 1:Ingress ログとレポートの確認
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[クラスター情報] をクリックします。
-
基本情報 タブをクリックします。クラスターリソース セクションで、Log Service プロジェクト のプロジェクト ID をクリックします。
-
左側のナビゲーションウィンドウで
アイコンをクリックします。[Dashboard List] で、Nginx Ingress の分析レポートを確認します。Ingress ダッシュボードは、5 つのプリセットダッシュボードを提供しています。このトピックでは、そのうち 2 つ (Ingress Overview と、ブルー/グリーンデプロイ向け Ingress Monitoring Center) を詳しく説明します。その他のプリセットダッシュボードの詳細については、「Collect and analyze Nginx Ingress access logs」をご参照ください。
-
Ingress Overview
Ingressの概要ダッシュボードには、Webサイトのnginx-ingress-controllerを流れるネットワークトラフィックに関する情報が表示されます。 以下の情報を表示できます。
ページビュー (PV) の数、ユニークビジター (UV) の数、インバウンドとアウトバウンドトラフィック、平均レイテンシ、モバイルユーザーの割合、5xxエラーと404エラーの割合など、過去24時間のWebサイトデータ。
PVの数、UVの数、リクエストの成功率、平均レイテンシ、P95レイテンシ、およびP99レイテンシを含む、過去1分間のWebサイトデータ。
過去24時間のPVトレンド (過去24時間のPVに基づく) 、過去7日間のPVトレンド (過去7日間のPVに基づく) 、リクエストソースの地域分布、上位Nのソースエリアと都市、モバイルユーザーの割合、androidユーザーとiOSユーザーの比率。
過去1時間以内の上位N個のURL。PVが最も高い10個のURL、レイテンシーが最も高い10個のURL、5xxエラーが最も多い10個のURL、404エラーが最も多い10個のURLが含まれます。
-
ブルー/グリーンデプロイ向け Ingress Monitoring Center
blue-greenデプロイメントのIngressモニタリングセンターダッシュボードには、古いバージョンと新しいバージョンのアプリケーションを公開するために使用されるサービスのリアルタイムモニタリングデータが表示されます。 ダッシュボードは、サービスのモニタリングデータも比較します。 これにより、例外を特定し、できるだけ早い機会にアプリケーションバージョンをロールバックできます。 モニタリングデータの比較には、ServiceAとServiceBを指定する必要があります。 ダッシュボードには、各サービスの次の動的モニタリングデータが表示されます。PVの数、5xxエラーの割合、リクエストの成功率、平均レイテンシ、P95レイテンシ、P99レイテンシ、P999レイテンシ、およびリクエスト数。
-
手順 2:Java アプリケーションの ARMS モニタリングの有効化
Java アプリケーションで ARMS モニタリングを有効にする方法については、「Java application monitoring」をご参照ください。
手順 3:サンプル Service の Ingress の設定
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、 を選択します。
-
Ingress ページで、Ingress の作成 をクリックします。Ingress を設定してから、OK をクリックします。
Ingress の設定方法の詳細については、「Create and use an Nginx Ingress to expose services」をご参照ください。
手順 4:Ingress ダッシュボードと ARMS を使用したトラブルシューティング
にログインします。Simple Log Serviceコンソール.
-
[プロジェクト] セクションで、ACKクラスターの作成時に指定したプロジェクトの名前をクリックします。 プロジェクトの詳細ページが表示されます。 デフォルトでは、k8s-log-{cluster-id} という形式で名前が付けられたプロジェクトがACKクラスター用に作成されます。
-
左側のナビゲーションウィンドウで
アイコンをクリックします。[Dashboard List] で、Ingress Overview V1.2 ダッシュボードを確認します。たとえば、Top 10 Request URLs by Latency セクションで、URL(ARMS Troubleshooting) フィールドを確認します。URL をクリックすると、該当する Service の ARMS トレースクエリページが開き、詳細なトレース情報を確認できます。