Istioを使用したモニタリング

マイクロサービスアーキテクチャへの移行をサポートするには、監視が不可欠です。

Istioを使用すると、マイクロサービス間のトラフィックの監視をデフォルトで利用できます。Istioダッシュボードを使用して、マイクロサービスをリアルタイムで監視できます。

Istioは、Prometheus時系列データベースと監視システムとすぐに統合されています。Prometheusは、さまざまなトラフィック関連のメトリクスを収集し、それらに対して豊富なクエリ言語を提供します。

PrometheusのIstio関連クエリについて、いくつかの例を以下に示します。

  1. http://my-istio-logs-database.ioでPrometheus UIにアクセスします。(my-istio-logs-database.io URLは、/etc/hostsファイルに存在する必要があります。これは以前設定しました)。

    Prometheus Query UI
    PrometheusクエリUI
  2. 次の例クエリを入力ボックスに入力します。実行ボタンを押して、コンソールタブにクエリ結果を表示します。クエリでは、アプリケーションのネームスペース名としてtutorialを使用していますが、ご自身のネームスペース名に置き換えてください。最適な結果を得るには、データのクエリ時に、前の手順で説明したリアルタイムトラフィックシミュレーターを実行してください。

    1. ネームスペース内のすべてのリクエストを取得する

      istio_requests_total{destination_service_namespace="tutorial", reporter="destination"}
      
    2. ネームスペース内のすべてのリクエストの合計を取得する

      sum(istio_requests_total{destination_service_namespace="tutorial", reporter="destination"})
      
    3. reviewsマイクロサービスへのリクエストを取得する

      istio_requests_total{destination_service_namespace="tutorial", reporter="destination",destination_service_name="reviews"}
      
    4. 過去5分間のreviewsマイクロサービスのすべてのインスタンスへのリクエストのレート

      rate(istio_requests_total{destination_service_namespace="tutorial", reporter="destination",destination_service_name="reviews"}[5m])
      

上記のクエリは、標準的なIstioメトリクスであるistio_requests_totalメトリクスを使用しています。他のメトリクス、特にEnvoy(EnvoyはIstioのサイドカープロキシです)のメトリクスを観察できます。収集されたメトリクスは、カーソルにメトリクスを挿入ドロップダウンメニューで確認できます。

次のステップ

チュートリアルの完了おめでとうございます!

これらのタスクは、初心者の方々がこのdemoインストールを使用してIstioの機能をさらに評価するのに最適な場所です。

本番環境でIstioをカスタマイズする前に、次のリソースを参照してください。

Istioコミュニティに参加する

Istioコミュニティに参加して、質問やフィードバックをお寄せください。

この情報は役に立ちましたか?
改善のための提案はありますか?

ご意見ありがとうございます!