3.3. 分散トレースデータ収集の設定およびデプロイ


Red Hat OpenShift 分散トレースデータ収集 Operator は、Red Hat OpenShift 分散トレースデータ収集リソースの作成およびデプロイ時に使用されるアーキテクチャーおよび設定を定義するカスタムリソース定義 (CRD) ファイルを使用します。デフォルト設定をインストールするか、またはビジネス要件に合わせてファイルを変更することができます。

3.3.1. OpenTelemetry Collector 設定オプション

重要

Red Hat OpenShift 分散トレースデータ収集 Operator は、テクノロジープレビュー機能としてのみご利用いただけます。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

OpenTelemetry Collector は、テレメトリーデータにアクセスする 3 つのコンポーネントで設定されます。

  • レシーバー: レシーバー (プッシュまたはプルベース) は、データが Collector に到達する方法です。通常、レシーバーは指定された形式のデータを受け入れ、これを内部形式に変換し、それを適用可能なパイプラインで定義されるプロセッサーおよびエクスポートャーに渡します。デフォルトでは、レシーバーは設定されていません。1 つまたは複数のレシーバーを設定する必要があります。レシーバーは 1 つまたは複数のデータソースをサポートする場合があります。
  • プロセッサー:(オプション) プロセッサーは、受信され、エクスポートされる間のデータで実行されます。デフォルトでは、プロセッサーは有効になっていません。プロセッサーは、すべてのデータソースに対して有効にする必要があります。すべてのプロセッサーがすべてのデータソースをサポートするわけではありません。データソースによっては、複数のプロセッサーを有効にすることが推奨される場合があります。さらに、プロセッサーの順序が重要である点に気を留めることが大切です。
  • エクスポーター: エクスポーター (プッシュまたはプルベース) は、データを 1 つまたは複数のバックエンド/宛先に送信する方法です。デフォルトでは、エクスポーターは設定されていません。1 つまたは複数のエクスポーターを設定する必要があります。エクスポーターは 1 つまたは複数のデータソースをサポートする場合があります。レポーターにはデフォルト設定が定義されている場合がありますが、多くの場合、少なくとも宛先およびセキュリティー設定を指定するための設定が必要になります。

カスタムリソース YAML ファイルで、コンポーネントのインスタンスを複数定義できます。これらのコンポーネントを設定したら、YAML ファイルの spec.config.service セクションで定義されたパイプラインで有効にする必要があります。ベストプラクティスとしては、必要なコンポーネントのみを有効にする必要があります。

OpenTelemetry コレクターカスタムリソースファイルの例

apiVersion: opentelemetry.io/v1alpha1
kind: OpenTelemetryCollector
metadata:
  name: cluster-collector
  namespace: tracing-system
spec:
  mode: deployment
  config: |
    receivers:
      otlp:
        protocols:
          grpc:
          http:
    processors:
    exporters:
      jaeger:
        endpoint: jaeger-production-collector-headless.tracing-system.svc:14250
        tls:
          ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt"
    service:
      pipelines:
        traces:
          receivers: [otlp]
          processors: []
          exporters: [jaeger]

注記

コンポーネントが設定されていても、service セクション内で定義されていない場合、有効になりません。

表3.17 Operator が OpenTelemetry Collector を定義するために使用するパラメーター
パラメーター説明デフォルト
receivers:

レシーバーは、データが Collector に到達する方法です。デフォルトでは、レシーバーは設定されていません。設定が有効とみなされるためには、少なくとも 1 つの有効なレシーバーが必要です。レシーバーは、パイプラインに追加して有効にされます。

otlpjaeger

なし

receivers:
  otlp:

oltp および jaeger レシーバーにはデフォルト設定が定義されていて、設定するにはレシーバーの名前を指定するだけで十分です。

  
processors:

プロセッサーは、受信され、エクスポートされる間のデータで実行されます。デフォルトでは、プロセッサーは有効になっていません。

 

なし

exporters:

エクスポーターは、データを 1 つまたは複数のバックエンド/宛先に送信します。デフォルトでは、エクスポーターは設定されていません。設定が有効とみなされるためには、少なくとも 1 つの有効なエクスポーターが必要です。エクスポーターは、パイプラインに追加して有効にされます。レポーターにはデフォルト設定が定義されている場合がありますが、多くの場合、少なくとも宛先およびセキュリティー設定を指定するための設定が必要になります。

loggingjaeger

なし

exporters:
 jaeger:
  endpoint:

セキュアな接続を確立するには、jaeger エクスポーターのエンドポイントは <name>-collector-headless.<namespace>.svc の形式にする必要があり、Jaeger デプロイメントの名前および namespace を指定します。

  
exporters:
 jaeger:
  tls:
   ca_file:

CA 証明書へのパス。クライアントの場合、サーバー証明書を検証します。サーバーの場合、クライアント証明書を検証します。空の場合、システムのルート CA が使用されます。

  
service:
  pipelines:

コンポーネントは、それらを services.pipeline セクションのパイプラインに追加して有効にされます。

  
service:
  pipelines:
    traces:
      receivers:

レシーバーは、それらを service.pipelines.traces セクションに追加してトレース用に有効にします。

 

なし

service:
  pipelines:
    traces:
      processors:

プロセッサーは、それらを service.pipelines.traces セクションに追加してトレース用に有効にします。

 

なし

service:
  pipelines:
    traces:
      exporters:

エクスポーターは、それらを service.pipelines.traces セクションに追加してトレース用に有効にします。

 

なし

3.3.2. デプロイメントの検証

3.3.3. Jaeger コンソールへのアクセス

Jaeger コンソールにアクセスするには、Red Hat OpenShift Service Mesh または Red Hat OpenShift 分散トレースがインストールされ、Red Hat OpenShift 分散トレースプラットフォームがインストール、設定、およびデプロイされている必要があります。

インストールプロセスにより、Jaeger コンソールにアクセスするためのルートが作成されます。

Jaeger コンソールの URL が分かっている場合は、これに直接アクセスできます。URL が分からない場合は、以下の指示を使用します。

OpenShift コンソールからの手順

  1. cluster-admin 権限を持つユーザーとして OpenShift Container Platform Web コンソールにログインします。(Red Hat OpenShift Dedicated を使用する場合) dedicated-admin ロールがあるアカウント。
  2. Networking Routes に移動します。
  3. Routes ページで、Namespace メニューからコントロールプレーンプロジェクトを選択します (例:tracing-system)。

    Location 列には、各ルートのリンク先アドレスが表示されます。

  4. 必要な場合は、フィルターを使用して jaeger ルートを検索します。ルートの Location をクリックしてコンソールを起動します。
  5. Log In With OpenShift をクリックします。

CLI からの手順

  1. cluster-admin ロールを持つユーザーとして OpenShift Container Platform CLI にログインします。(Red Hat OpenShift Dedicated を使用する場合) dedicated-admin ロールがあるアカウント。

    $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
  2. コマンドラインを使用してルートの詳細をクエリーするには、以下のコマンドを入力します。この例では、tracing-system がコントロールプレーン namespace です。

    $ export JAEGER_URL=$(oc get route -n tracing-system jaeger -o jsonpath='{.spec.host}')
  3. ブラウザーを起動し、https://<JAEGER_URL> に移動します。ここで、<JAEGER_URL> は直前の手順で検出されたルートです。
  4. OpenShift Container Platform コンソールへアクセスするときに使用するものと同じユーザー名とパスワードを使用してログインします。
  5. サービスメッシュにサービスを追加し、トレースを生成している場合は、フィルターと Find Traces ボタンを使用してトレースデータを検索します。

    コンソールインストールを検証すると、表示するトレースデータはありません。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.