第4章 Red Hat が提供する Kiali Operator


4.1. Red Hat 提供の Kiali Operator の使用

アプリケーションをメッシュに追加したら、Red Hat が提供する Kiali Operator を使用して、アプリケーションを通るデータフローを表示できます。

4.1.1. Kiali について

Red Hat 提供の Kiali Operator を使用すると、単一のコンソールでの設定表示、トラフィックの監視、トレースの分析が可能になります。これはオープンソースの Kiali プロジェクトに基づいています。

Red Hat が提供する Kiali Operator は、Red Hat OpenShift Service Mesh の管理コンソールです。ダッシュボード、可観測性、および堅牢な設定、ならびに検証機能を提供します。これは、トラフィックトポロジーを推測して Service Mesh の構造を示し、メッシュの正常性を表示します。Kiali は、詳細なメトリクス、強力な検証、Grafana へのアクセス、Red Hat OpenShift 分散トレーシングプラットフォーム (Tempo) とシームレスに統合できます。

4.1.2. Red Hat が提供する Kiali Operator のインストール

以下の手順では、Red Hat が提供する Kiali Operator をインストールする方法を説明します。

警告

Operator のコミュニティーバージョンはインストールしないでください。コミュニティーバージョンはサポートされていません。

前提条件

  • Red Hat OpenShift Service Mesh Web コンソールにアクセスできる。

手順

  1. Red Hat OpenShift Service Mesh Web コンソールにログインします。
  2. Operators OperatorHub に移動します。
  3. フィルターボックスに Kiali と入力して、Red Hat が提供する Kiali Operator を検索します。
  4. Red Hat が提供する Kiali Operator をクリックし、Operator に関する情報を表示します。
  5. Install をクリックします。
  6. Operator Installation ページで、stable 更新チャネルを選択します。
  7. All namespaces on the cluster(default) を選択します。これにより、Operator がデフォルトの openshift-operators プロジェクトにインストールされ、Operator はクラスター内のすべてのプロジェクトで利用可能になります。
  8. Automatic Approval Strategy を選択します。

    注記

    手動の承認ストラテジーには、Operator のインストールおよびサブスクリプションプロセスを承認するための適切な認証情報を持つユーザーが必要です。

  9. Install をクリックします。
  10. Installed Operators ページには、Kiali Operator のインストールの進捗状況が表示されます。

4.1.3. Kiali を使用した OpenShift モニタリングの設定

次の手順は、Red Hat が提供する Kiali Operator をユーザーワークロード監視と統合する方法を示しています。

前提条件

  • Red Hat OpenShift Service Mesh がインストールされている。
  • ユーザーのワークロードの監視が有効になっている。ユーザー定義プロジェクトのモニタリングの有効化 を参照してください。
  • OpenShift Monitoring が Service Mesh で設定されている。「サービスメッシュを使用した OpenShift Monitoring の設定」を参照してください。
  • Red Hat が提供する Kiali Operator 1.89 がインストールされている。

手順

  1. Kiali の ClusterRoleBinding リソースを作成します。

    ClusterRoleBinding の設定例

    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: kiali-monitoring-rbac
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: cluster-monitoring-view
    subjects:
    - kind: ServiceAccount
      name: kiali-service-account
      namespace: istio-system

  2. Kiali リソースを作成し、それを Istio インスタンスにポイントします。

    Kiali リソース設定の例

    apiVersion: kiali.io/v1alpha1
    kind: Kiali
    metadata:
      name: kiali-user-workload-monitoring
      namespace: istio-system
    spec:
      external_services:
        prometheus:
          auth:
            type: bearer
            use_kiali_token: true
          thanos_proxy:
            enabled: true
          url: https://thanos-querier.openshift-monitoring.svc.cluster.local:9091

  3. Kiali リソースの準備ができたら、以下のコマンドを実行してルートから Kiali URL を取得します。

    $ echo "https://$(oc get routes -n istio-system kiali -o jsonpath='{.spec.host}')"
  4. URL に従い、Web ブラウザーで Kiali を開きます。

4.1.4. Red Hat OpenShift 分散トレースプラットフォームと Red Hat が提供する Kiali Operator の統合

Red Hat OpenShift 分散トレーシングプラットフォームを Red Hat が提供する Kiali Operator と統合すると、次の機能が有効になります。

  • トレースオーバーレイとグラフの詳細を表示します。
  • 詳細ページに散布図チャートと詳細なトレース/スパン情報を表示します。
  • ログとメトリックチャートにスパン情報を統合します。
  • 外部トレース UI へのリンクを提供します。

4.1.4.1. Red Hat が提供する Kiali Operator を使用した Red Hat OpenShift 分散トレーシングプラットフォームの設定

Red Hat が提供する Kiali Operator を Red Hat OpenShift 分散トレーシングプラットフォームと統合すると、Kiali コンソールで分散トレースを表示できるようになります。これらのトレースを表示すると、サービスメッシュ内のサービス間の通信に関するインサイトが得られ、リクエストがシステム内をどのように流れているか、発生する可能性のある問題はなにかを理解するのに役立ちます。

前提条件

  • Red Hat OpenShift Service Mesh をインストールしている。
  • 分散トレースプラットフォームを Red Hat OpenShift Service Mesh で設定している。

手順

  1. トレース用に Kiali リソース spec 設定を更新します。

    トレース用の Kiali リソース 仕様 の設定例

    spec:
      external_services:
        tracing:
          enabled: true 1
          provider: tempo
          use_grpc: false
          in_cluster_url: http://tempo-sample-query-frontend.tempo:3200
          url: https://tempo-sample-query-frontend-tempo.apps-crc.testing 2

    1
    トレースを有効にします。
    2
    Jaeger UI の OpenShift ルートは、Tempo namespace に作成する必要があります。tempo-sample-query-frontend サービス用に手動で作成するか、.spec.template.queryFrontend.jaegerQuery.ingress.type: route を使用して Tempo カスタムリソースを更新できます。
  2. 更新された speckiali_cr.yaml に保存します。
  3. 設定を適用するには、次のコマンドを実行します。

    $ oc patch -n istio-system kiali kiali --type merge -p "$(cat kiali_cr.yaml)"

    出力例:

     kiali.kiali.io/kiali patched

検証

  1. 以下のコマンドを実行して Kiali ルートを取得します。

    $ oc get route kiali ns istio-system
  2. Kiali UI に移動します。
  3. Workload Traces タブに移動し、Kiali UI でトレースを確認します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.