2.2. Red Hat OpenShift Service Mesh および Kiali


Kiali はオープンソースの Kiali プロジェクトに基づいています。Kiali プロジェクト を参照してください。Red Hat が提供する Kiali は、次の 3 つの部分で構成されています。

  • Red Hat が提供する Kiali Operator
  • Kiali Server
  • OpenShift Service Mesh Console (OSSMC) プラグイン

上記が連携して、OpenShift Service Mesh のユーザーインターフェイス (UI) を形成します。Kiali は、マイクロサービスとこのようなサービスの接続方法を表示することで、サービスメッシュの可視性を提供します。

Kiali は、Istio Service Mesh の定義、検証、および確認に役立ちます。トポロジーを推測することで Service Mesh の構造を理解するのに役立ち、Service Mesh の正常性に関する情報も提供します。

Kiali は、メッシュ namespace のインタラクティブなグラフビューをほぼリアルタイムで提供し、サーキットブレーカー、リクエストレート、レイテンシー、さらにはトラフィックフローのグラフなどの機能を可視化します。Kiali は、アプリケーション、サービス、ワークロードなど、さまざまなレベルのコンポーネントに関する分析情報を提供し、選択したグラフノードまたはエッジ上のコンテキスト情報とチャートとの相互作用を表示できます。

Kiali は、ゲートウェイ、宛先ルール、仮想サービス、メッシュポリシーなど、Istio 設定を検証する機能も提供します。Kiali は詳細なメトリクスを提供し、基本的な Grafana 統合は高度なクエリーに利用できます。分散トレーシングは、Red Hat OpenShift 分散トレーシングプラットフォーム (Tempo) と Red Hat OpenShift distributed tracing data collection を Kiali コンソールに統合することによって提供されます。

2.2.1. Kiali アーキテクチャー

Kiali サーバー (バックエンド)
このコンポーネントはコンテナーアプリケーションプラットフォームで実行され、サービスメッシュコンポーネントと通信し、データを取得して処理し、このデータをコンソールに公開します。Kiali サーバーにはストレージは必要ありません。サーバーをクラスターにデプロイする場合、設定は config map とシークレットに設定されます。
Kiali コンソール (フロントエンド)
Kiali コンソールは Web アプリケーションです。コンソールは Kiali サーバーにデータを照会し、ユーザーに提示します。

さらに Kiali は、コンテナーアプリケーションプラットフォームと Istio が提供する外部サービスとコンポーネントに依存します。

Red Hat Service Mesh (Istio)
Istio は Kiali の要件です。Istio は Service Mesh を提供し、制御するコンポーネントです。Kiali と Istio を個別にインストールすることはできますが、Kiali は Istio に依存し、Istio が存在しない場合は機能しません。Kiali は、Prometheus および Red Hat OpenShift Service Mesh クラスター API を通じて公開される Istio データと設定を取得する必要があります。
Prometheus
専用の Prometheus インスタンスはオプションです。Istio Telemetry が有効になっている場合、メトリクスデータは Prometheus に保存されます。Kiali はこの Prometheus データを使用して、メッシュトポロジーの判別、メトリクスの表示、健全性の算出、可能性のある問題の表示などを行います。Kiali は Prometheus と直接通信し、Istio Telemetry で使用されるデータスキーマを想定します。Prometheus は Istio に依存しており、Kiali と明示的な依存関係があるため、Kiali の機能の多くは Prometheus なしに機能しません。
OpenShift Container Platform API
Kiali は OpenShift Container Platform API を使用して、サービスメッシュ設定を取得および解決します。たとえば、Kiali はクラスター API に対してクエリーを実行し、namespace、サービス、デプロイメント、Pod、その他のエンティティーの定義を取得します。Kiali はクエリーを実行して、異なるクラスターエンティティー間の関係も解決します。クラスター API に対してもクエリーを実行し、仮想サービス、宛先ルール、ルートルール、ゲートウェイ、クォータなどの Istio 設定を取得します。
トレーシング
トレースはオプションですが、Red Hat OpenShift 分散トレーシングプラットフォームをインストールし、Kiali を設定すると、Kiali コンソールに分散トレーシングデータを表示するタブと、グラフ自体のトレースインテグレーションが含まれます。Istio の分散トレース機能を無効にした場合、トレースデータは利用できないことに注意してください。また、トレースデータの確認が必要は namespace にアクセスできなければならない点にも注意してください。
Grafana
Grafana はオプションです。使用可能な場合は、Kiali のメトリクスページに Grafana 内の同じメトリクスにユーザーを移動させるリンクが表示されます。Grafana は OpenShift Container Platform または OpenShift Service Mesh の一部としてサポートされていないことに注意してください。

2.2.2. Kiali の機能

Kiali コンソールは OpenShift Service Mesh に統合され、以下の機能を提供します。

ヘルス
アプリケーション、サービス、またはワークロードの問題を素早く特定します。
トポロジー
Kiali グラフを通じて、アプリケーション、サービス、またはワークロードがどのように通信するかを視覚化します。
メトリクス
定義済みのメトリクスダッシュボードを使用すると、Go、Node.js のサービスメッシュとアプリケーションのパフォーマンスをグラフ化できます。Quarkus、Spring Boot、Thorntail、および Vert.xまた、独自のカスタムダッシュボードを作成することもできます。
トレーシング
Red Hat OpenShift 分散トレーシングプラットフォーム (Tempo) との統合により、アプリケーションを設定するさまざまなマイクロサービスを通じてリクエストのパスを追跡できます。
検証
最も一般的な Istio オブジェクト (宛先ルール、サービスエントリー、仮想サービスなど) で高度な検証を実行します。
設定
ウィザードを使用するか、Kiali コンソールの YAML エディターを直接使用して、Istio ルーティング設定を作成し、更新し、削除できるオプションの機能です。

2.2.3. OpenShift Service Mesh Console (OSSMC) プラグイン

OpenShift Service Mesh Console (OSSMC) プラグインは、Red Hat OpenShift Service Mesh 用の OpenShift Container Platform プラグインです。これは、Red Hat インターフェイスによって提供される Kiali Operator の多くを OpenShift コンソールに統合し、専用画面を備えた Service Mesh メインメニューオプションを挿入するとともに、コンソール全体に Service Mesh タブを統合します。

OSSMC プラグインは、Red Hat が提供する Kiali Operator を使用してインストールされ、Kiali Server コンポーネントが必要です。OSSMC プラグインには独自のカスタムリソース (CR) 設定があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.