第5章 Web コンソールからの Jaeger ストリーミングストラテジーのデプロイ


streaming デプロイメントストラテジーは、実稼働環境向けのストラテジーであり、トレースデータの長期の保存が重要となり、より拡張性および高可用性のあるアーキテクチャーも必要になります。

streaming ストラテジーは、Collector とストレージ (Elasticsearch) 間に配置されるストリーミング機能を提供します。これにより、負荷の高い状況でストレージに加わる圧力を軽減し、他のトレースの後処理機能がストリーミングプラットフォーム (Kafka) から直接リアルタイムのスパンデータを利用できるようにします。

注記

ストリーミングストラテジーには、AMQ Streams 用の追加の Red Hat サブスクリプションが必要です。AMQ Streams サブスクリプションをお持ちでない場合は、営業担当者にお問い合わせください。

前提条件

  • AMQ Streams Operator がインストールされている必要があります。バージョン 1.4.0 以降を使用している場合は、セルフプロビジョニングを使用できます。それ以外の場合は、Kafka インスタンスを作成する必要があります。
  • Jaeger Operator がインストールされている必要があります。
  • Jaeger インストールのカスタマイズ方法についての手順を確認します。
  • cluster-admin ロールを持つアカウントが必要です。

手順

  1. cluster-admin ロールを持つユーザーとして OpenShift Container Platform Web コンソールにログインします。
  2. 新規プロジェクト (例: jaeger-system) を作成します。

    1. Home Projects に移動します。
    2. Create Project をクリックします。
    3. Name フィールドに jaeger-system を入力します。
    4. Create をクリックします。
  3. Operators Installed Operators に移動します。
  4. 必要な場合は、Project メニューから jaeger-system を選択します。Operator が新規プロジェクトにコピーされるまでに数分待機する必要がある場合があります。
  5. Jaeger Operator をクリックします。Overview タブの Provided APIs で、Operator は単一リンクを提供します。
  6. JaegerCreate Instance をクリックします。
  7. Create Jaeger ページで、デフォルトの all-in-one yaml テキストをストリーミング用の YAML 設定に置き換えます。以下は例になります。

例: jaeger-streaming.yaml ファイル

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: jaeger-streaming
spec:
  strategy: streaming
  collector:
    options:
      kafka:
        producer:
          topic: jaeger-spans
          #Note: If brokers are not defined,AMQStreams 1.4.0+ will self-provision Kafka.
          brokers: my-cluster-kafka-brokers.kafka:9092
  storage:
    type: elasticsearch
  ingester:
    options:
      kafka:
        consumer:
          topic: jaeger-spans
          brokers: my-cluster-kafka-brokers.kafka:9092
Copy to Clipboard Toggle word wrap

  1. Create をクリックして Jaeger インスタンスを作成します。
  2. Jaegers ページで、 Jaeger インスタンスの名前 (例: jaeger-streaming) をクリックします。
  3. Jaeger Details ページで、Resources タブをクリックします。すべての Pod のステータスが Running になるまで待機してから続行します。

5.1. CLI からの Jaeger ストリーミングのデプロイ

以下の手順に従って、コマンドラインから Jaeger のインスタンスを作成します。

前提条件

  • OpenShift Jaeger Operator がインストールされ、検証済みです。
  • OpenShift CLI (oc) へのアクセスが可能です。
  • cluster-admin ロールを持つアカウントが必要です。

手順

  1. cluster-admin ロールを持つユーザーとして OpenShift Container Platform CLI にログインします。

    $ oc login https://{HOSTNAME}:8443
    Copy to Clipboard Toggle word wrap
  2. jaeger-system という名前の新規プロジェクトを作成します。

    $ oc new-project jaeger-system
    Copy to Clipboard Toggle word wrap
  3. 直前の手順のサンプルファイルのテキストが含まれる jaeger-streaming.yaml という名前のカスタムリソースファイルを作成します。
  4. 以下のコマンドを実行して Jaeger をデプロイします。

    $ oc create -n jaeger-system -f jaeger-streaming.yaml
    Copy to Clipboard Toggle word wrap
  5. 以下のコマンドを実行して、インストールプロセス時の Pod の進捗を確認します。

    $ oc get pods -n jaeger-system -w
    Copy to Clipboard Toggle word wrap

    インストールプロセスが完了すると、以下のような出力が表示されるはずです。

    NAME                                                              READY   STATUS    RESTARTS   AGE
    elasticsearch-cdm-jaegersystemjaegerstreaming-1-697b66d6fcztcnn   2/2     Running   0          5m40s
    elasticsearch-cdm-jaegersystemjaegerstreaming-2-5f4b95c78b9gckz   2/2     Running   0          5m37s
    elasticsearch-cdm-jaegersystemjaegerstreaming-3-7b6d964576nnz97   2/2     Running   0          5m5s
    jaeger-streaming-collector-6f6db7f99f-rtcfm                       1/1     Running   0          80s
    jaeger-streaming-entity-operator-6b6d67cc99-4lm9q                 3/3     Running   2          2m18s
    jaeger-streaming-ingester-7d479847f8-5h8kc                        1/1     Running   0          80s
    jaeger-streaming-kafka-0                                          2/2     Running   0          3m1s
    jaeger-streaming-query-65bf5bb854-ncnc7                           3/3     Running   0          80s
    jaeger-streaming-zookeeper-0                                      2/2     Running   0          3m39s
    Copy to Clipboard Toggle word wrap

5.1.1. Jaeger デプロイメントのカスタマイズ

5.1.1.1. Jaeger のデフォルト設定オプション

Jaeger カスタムリソース (CR) は、Jaeger リソースの作成時に使用されるアーキテクチャーおよび設定を定義します。これらのパラメーターを変更して、Jaeger 実装をビジネスニーズに合わせてカスタマイズできます。

Jaeger 汎用 YAML の例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: name
spec:
  strategy: <deployment_strategy>
  allInOne:
    options: {}
    resources: {}
  agent:
    options: {}
    resources: {}
  collector:
    options: {}
    resources: {}
  sampling:
    options: {}
  storage:
    type:
    options: {}
  query:
    options: {}
    resources: {}
  ingester:
    options: {}
    resources: {}
  options: {}
Copy to Clipboard Toggle word wrap

Expand
表5.1 Jaeger パラメーター
パラメーター説明デフォルト値

apiVersion:

オブジェクトの作成時に使用する Application Program Interface のバージョン。

jaegertracing.io/v1

jaegertracing.io/v1

kind:

作成する Kubernetes オブジェクトの種類を定義します。

jaeger

 

metadata:

name 文字列、UID、およびオプションの namespace などのオブジェクトを一意に特定するのに役立つデータ。

 

OpenShift は UID を自動的に生成し、オブジェクトが作成されるプロジェクトの名前で namespace を完成します。

name:

オブジェクトの名前。

Jaeger インスタンスの名前。

jaeger-all-in-one-inmemory

spec:

作成するオブジェクトの仕様。

Jaeger インスタンスのすべての設定パラメーターが含まれます。(Jaeger コンポーネントすべてに) 共通する定義が必要な場合、これは仕様ノードで定義されます。定義が個別のコンポーネントに関連する場合、これは spec/<component> ノードの下に配置されます。

該当なし

strategy:

Jaeger デプロイメントストラテジー

allInOneproduction、または streaming

allInOne

allInOne:

allInOne イメージはエージェント、Collector、Query、Ingester, Jaeger UI を単一 Pod にデプロイするため、このデプロイメントの設定は、コンポーネント設定を allInOne パラメーターの下でネストする必要があります。

  

agent:

Jaeger エージェントを定義する設定オプション。

  

collector:

Jaeger Collector を定義する設定オプション。

  

sampling:

トレース用のサンプリングストラテジーを定義する設定オプション。

  

storage:

ストレージを定義する設定オプション。すべてのストレージ関連のオプションは、 allInOne または他のコンポーネントオプションではなく、storage に配置される必要があります。

  

query:

Query サービスを定義する設定オプション。

  

ingester:

Ingester サービスを定義する設定オプション。

  

以下の YAML サンプルは、デフォルト設定を使用して Jaeger インスタンスを作成するための最小要件です。

最小要件の jaeger-all-in-one.yaml の例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: jaeger-all-in-one-inmemory
Copy to Clipboard Toggle word wrap

5.1.1.2. Jaeger Collector 設定オプション

Jaeger Collector は、トレーサーによってキャプチャーされたスパンを受信し、production ストラテジーを使用する場合はそれらを永続ストレージ (Elasticsearch) に書き込み、streaming ストラテジーを使用する場合は AMQ Streams に書き込むコンポーネントです。

コレクターはステートレスであるため、Jaeger Collector のインスタンスの多くは並行して実行できます。Elasticsearch クラスターの場所を除き、Collector では設定がほとんど必要ありません。

Expand
表5.2 Operator によって使用される Jaeger Collector パラメーター
パラメーター説明
collector:
  num-workers:
Copy to Clipboard Toggle word wrap

キューからプルするワーカーの数。

整数 (例: 50)。

collector:
  queue-size:
Copy to Clipboard Toggle word wrap

Collector キューのサイズ。

整数 (例: 2000)。

collector:
  replicas:
Copy to Clipboard Toggle word wrap

作成する Collector レプリカの数を指定します。

整数 (例: 5)。

Expand
表5.3 Collector に渡される Jaeger パラメーター
パラメーター説明
spec:
 collector:
  options: {}
Copy to Clipboard Toggle word wrap

Jaeger Collector を定義する設定オプション。

 
options:
  kafka:
    producer:
      topic: jaeger-spans
Copy to Clipboard Toggle word wrap

topic パラメーターは、コレクターによってメッセージを生成するために使用され、Ingester によってメッセージを消費するために使用される Kafka 設定を特定します。

プロデューサーのラベル

options:
  kafka:
    producer:
      brokers: my-cluster-kafka-brokers.kafka:9092
Copy to Clipboard Toggle word wrap

メッセージを生成するために Collector によって使用される Kafka 設定を特定します。ブローカーが指定されていない場合で、AMQ Streams 1.4.0+ がインストールされている場合、Jaeger は Kafka をセルフプロビジョニングします。

 
options:
  log-level:
Copy to Clipboard Toggle word wrap

コレクターのロギングレベル。

tracedebuginfowarningerrorfatalpanic

5.1.1.3. Jaeger サンプリング設定オプション

この Operator は、リモートサンプラーを使用するように設定されているトレーサーに提供されるサンプリングストラテジーを定義するために使用できます。

すべてのトレースが生成される間に、それらの一部のみがサンプリングされます。トレースをサンプリングすると、追加の処理や保存のためにトレースにマークが付けられます。

注記

これは、トレースがサンプリングの意思決定が行われる際に Istio プロキシーによって開始されている場合には関連がありません。Jaeger サンプリングの意思決定は、トレースが Jaeger トレーサーを使用してアプリケーションによって開始される場合にのみ関連します。

サービスがトレースコンテキストが含まれていない要求を受信すると、Jaeger トレーサーは新しいトレースを開始し、これにランダムなトレース ID を割り当て、現在インストールされているサンプリングストラテジーに基づいてサンプリングの意思決定を行います。サンプリングの意思決定はトレース内の後続のすべての要求に伝播され、他のサービスが再度サンプリングの意思決定を行わないようにします。

Jaeger ライブラリーは以下のサンプラーをサポートします。

  • Constant: サンプラーは、すべてのトレースについて常に同じ意思決定を行います。これは、すべてのトレースをサンプリングするか (sampling.param=1)、またはそれらのいずれもサンプリングしません (sampling.param=0)。
  • Probabilistic: サンプラーは、sampling.param プロパティーの値と等しいサンプリングの確率で、ランダムなサンプリングの意思決定を行います。たとえば、sampling.param=0.1 の場合に、約 10 の内 1 のトレースがサンプリングされます。
  • Rate Limiting: サンプラーは、リーキーバケット (leaky bucket) レートリミッターを使用して、トレースが一定のレートでサンプリングされるようにします。たとえば、sampling.param=2.0 の場合、1 秒あたり 2 トレースの割合で要求がサンプリングされます。
  • Remote: サンプラーは Jaeger エージェントで現在のサービスで使用する適切なサンプリングストラテジーを参照します。これにより、Jaeger バックエンドの中央設定からサービス内のサンプリングストラテジーを制御できます。
Expand
表5.4 Jaeger サンプリングパラメーター
パラメーター説明デフォルト値
spec:
 sampling:
  options: {}
Copy to Clipboard Toggle word wrap

トレース用のサンプリングストラテジーを定義する設定オプション。

  
sampling:
  type:
Copy to Clipboard Toggle word wrap

使用するサンプリングストラテジー。(上記の説明を参照してください。)

有効な値は constprobabilisticratelimiting、および remote です。

remote

sampling:
  options:
    type:
    param:
Copy to Clipboard Toggle word wrap

選択したサンプリングストラテジーのパラメーター(上記の例を参照してください。)

10 進値および整数値 (0、.1、1、10)

該当なし

この例では、トレースインスタンスをサンプリングする確率が 50% の、確率的なデフォルトサンプリングストラテジーを定義します。

確率的なサンプリングの例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: with-sampling
spec:
  strategy: allInOne
  sampling:
    options:
      default_strategy:
        type: probabilistic
        param: 50
Copy to Clipboard Toggle word wrap

5.1.1.4. Jaeger ストレージ設定オプション

spec:storage の下で Collector、Ingester、および Query サービスのストレージを設定します。これらの各コンポーネントの複数のインスタンスは、パフォーマンスと回復性を確保するために、必要に応じてプロビジョニングできます。

制限

  • namespace ごとにセルフプロビジョニングされた Elasticsearch インスタンスを持つ 1 つの Jaeger のみを使用できます。
  • namespace ごとに 1 つの Elasticsearch のみを使用できます。
  • Jaeger で OpenShift Jaeger ロギング Elasticsearch インスタンスを共有したり、再利用したりすることはできません。Elasticsearch クラスターは単一の Jaeger インスタンスの専用のクラスターになります。
注記

Elasticsearch を OpenShift ロギングの一部としてインストールしている場合、Jaeger Operator はインストールされた Elasticsearch Operator を使用してストレージをプロビジョニングできます。

Expand
表5.5 Jaeger の一般的なストレージパラメーター
パラメーター説明デフォルト値
spec:
 storage:
  options: {}
Copy to Clipboard Toggle word wrap

ストレージを定義する設定オプション。

  
storage:
  type:
Copy to Clipboard Toggle word wrap

デプロイメントに使用するストレージのタイプ。

memory または elasticsearchメモリーストレージは、Pod がシャットダウンした場合にデータが永続化されないため、開発、テスト、デモ、および概念検証用の環境にのみに適しています。実稼働環境については、Jaeger は永続ストレージの Elasticsearch をサポートします。

memory

Expand
表5.6 Elasticsearch 設定パラメーター
パラメーター説明デフォルト値
General Elasticsearch configuration settings
Copy to Clipboard Toggle word wrap
elasticsearch:
  server-urls:
Copy to Clipboard Toggle word wrap

Elasticsearch インスタンスの URL。

Elasticsearch サーバーの完全修飾ドメイン名。spec:storage:type= elasticsearch を指定しているが、server-urls パラメーターの値を指定していない場合、Jaeger Operator は Elasticsearch Operator を使用し、カスタムリソースファイルの spec:storage:elasticsearch セクションの設定を使用して Elasticsearch クラスターを作成します。

http://elasticsearch.<namespace>.svc:9200

es:
  max-num-spans:
Copy to Clipboard Toggle word wrap

Elasticsearch のクエリーごとに 1 度に取得するスパンの最大数。

 

10000

es:
  max-span-age:
Copy to Clipboard Toggle word wrap

Elasticsearch のスパンについての最大ルックバック。

 

72h0m0s

elasticsearch:
  secretname:
Copy to Clipboard Toggle word wrap

シークレットの名前 (例: jaeger-secret)

 

該当なし

es:
  sniffer:
Copy to Clipboard Toggle word wrap

Elasticsearch のスニファー設定。クライアントはスニッフィングプロセスを使用してすべてのノードを自動的に検索します。デフォルトでは無効にされています。

true/ false

false

es:
  timeout:
Copy to Clipboard Toggle word wrap

クエリーに使用されるタイムアウト。ゼロに設定するとタイムアウトはありません。

 

0s

es:
  username:
Copy to Clipboard Toggle word wrap

Elasticsearch で必要なユーザー名。Basic 認証は、指定されている場合に CA も読み込みます。es.password も参照してください。

  
es:
  password:
Copy to Clipboard Toggle word wrap

Elasticsearch で必要なパスワード。es.username も参照してください。

  
es:
  version:
Copy to Clipboard Toggle word wrap

主要な Elasticsearch バージョン。指定されていない場合、値は Elasticsearch から自動検出されます。

 

0

Elasticsearch resource configuration settings
Copy to Clipboard Toggle word wrap
elasticsearch:
  nodeCount:
Copy to Clipboard Toggle word wrap

Elasticsearch ノードの数。高可用性を確保するには、少なくとも 3 つのノードを使用します。スプリットブレインの問題が生じる可能性があるため、2 つのノードを使用しないでください。

整数値。例: 概念実証用 = 1、最小デプロイメント = 3

3

elasticsearch:
  resources:
    requests:
      cpu:
Copy to Clipboard Toggle word wrap

ご使用の環境設定に基づく、要求に対する中央処理単位の数。

コアまたはミリコアで指定されます (例: 200m、0.5、1)。例: 概念実証用 = 500m、最小デプロイメント = 1

1

elasticsearch:
  resources:
    requests:
      memory:
Copy to Clipboard Toggle word wrap

ご使用の環境設定に基づく、要求に使用できるメモリー。

バイト単位で指定されます (例: 200Ki、50Mi、5Gi)。例: 概念実証用 = 1Gi、最小デプロイメント = 16Gi*

16Gi

elasticsearch:
  resources:
    limits:
      cpu:
Copy to Clipboard Toggle word wrap

ご使用の環境設定に基づく、中央処理単位数の制限。

コアまたはミリコアで指定されます (例: 200m、0.5、1)。例: 概念実証用 = 500m、最小デプロイメント = 1

 
elasticsearch:
  resources:
    limits:
      memory:
Copy to Clipboard Toggle word wrap

ご使用の環境設定に基づく、利用可能なメモリー制限。

バイト単位で指定されます (例: 200Ki、50Mi、5Gi)。例: 概念実証用 = 1Gi、最小デプロイメント = 16Gi*

 
Copy to Clipboard Toggle word wrap

各 Elasticsearch ノードはこれより低い値のメモリー設定でも動作しますが、これは実稼働環境でのデプロイメントには推奨されません。実稼働環境で使用する場合、デフォルトで各 Pod に割り当てる設定を 16Gi 未満にすることはできず、Pod ごとに最大 64Gi を割り当てることを推奨します。

Elasticsearch data replication options
Copy to Clipboard Toggle word wrap
elasticsearch:
  redundancyPolicy:
Copy to Clipboard Toggle word wrap

データレプリケーションポリシーは、Elasticsearch シャードをクラスター内のデータノードにレプリケートする方法を定義します。指定されていない場合、Jaeger Operator はノード数に基づいて最も適切なレプリケーションを自動的に判別します。

ZeroRedundancy(レプリカシャードなし)、SingleRedundancy(レプリカシャード 1 つ)、MultipleRedundancy(各インデックスはデータノードの半分に分散される)、FullRedundancy (各インデックスはクラスター内のすべてのデータノードに完全にレプリケートされます)

 
es:
  num-replicas:
Copy to Clipboard Toggle word wrap

Elasticsearch のインデックスごとのレプリカ数。

 

1

es:
  num-shards:
Copy to Clipboard Toggle word wrap

Elasticsearch のインデックスごとのシャード数。

 

5

Elasticsearch index and index cleaner configuration options
Copy to Clipboard Toggle word wrap
es:
  create-index-templates:
Copy to Clipboard Toggle word wrap

true に設定されている場合、アプリケーションの起動時にインデックステンプレートを自動的に作成します。テンプレートが手動でインストールされる場合は、false に設定されます。

true/ false

true

es:
  index-prefix:
Copy to Clipboard Toggle word wrap

Jaeger インデックスのオプションの接頭辞。たとえば、これを production に設定すると、production-jaeger-*という名前のインデックスが作成されます。

  
esIndexCleaner:
  enabled:
Copy to Clipboard Toggle word wrap

Elasticsearch ストレージを使用する場合、デフォルトでジョブが作成され、古いトレースをインデックスからクリーンアップします。このパラメーターは、インデックスクリーナージョブを有効または無効にします。

true/ false

true

esIndexCleaner:
  numberOfDays:
Copy to Clipboard Toggle word wrap

インデックスの削除を待機する日数。

整数値

7

esIndexCleaner:
  schedule:
Copy to Clipboard Toggle word wrap

Elasticsearch インデックスを消去する頻度についてのスケジュールを定義します。

cron 式

"55 23 * * *"

esRollover:
  schedule:
Copy to Clipboard Toggle word wrap

新規 Elasticsearch インデックスにロールオーバーする頻度についてのスケジュールを定義します。

cron 式

'*/30 * * * *'

Configuration settings for Elasticsearch bulk processor
Copy to Clipboard Toggle word wrap
es:
  bulk:
    actions:
Copy to Clipboard Toggle word wrap

バルクプロセッサーがディスクへの更新のコミットを決定する前にキューに追加できる要求の数。

 

1000

es:
  bulk:
    flush-interval:
Copy to Clipboard Toggle word wrap

time.Duration: この後に、他のしきい値に関係なく一括要求がコミットされます。バルクプロセッサーのフラッシュ間隔を無効にするには、これをゼロに設定します。

 

200ms

es:
  bulk:
    size:
Copy to Clipboard Toggle word wrap

バルクプロセッサーがディスクへの更新をコミットするまでに一括要求が発生する可能性のあるバイト数。

 

5000000

es:
  bulk:
    workers:
Copy to Clipboard Toggle word wrap

一括要求を受信し、Elasticsearch にコミットできるワーカーの数。

 

1

Elasticsearch TLS configuration settings
Copy to Clipboard Toggle word wrap
es:
  tls:
    ca:
Copy to Clipboard Toggle word wrap

リモートサーバーの検証に使用される TLS 認証局 (CA) ファイルへのパス。

 

デフォルトではシステムトラストストアを使用します。

es:
  tls:
    cert:
Copy to Clipboard Toggle word wrap

リモートサーバーに対するこのプロセスの特定に使用される TLS 証明書ファイルへのパス。

  
es:
  tls:
    enabled:
Copy to Clipboard Toggle word wrap

リモートサーバーと通信する際に、トランスポート層セキュリティー (TLS) を有効にします。デフォルトでは無効にされています。

true/ false

false

es:
  tls:
    key:
Copy to Clipboard Toggle word wrap

リモートサーバーに対するこのプロセスの特定に使用される TLS 秘密鍵ファイルへのパス。

  
es:
  tls:
    server-name:
Copy to Clipboard Toggle word wrap

リモートサーバーの証明書の予想される TLS サーバー名を上書きします。

  
es:
  token-file:
Copy to Clipboard Toggle word wrap

ベアラートークンが含まれるファイルへのパス。このフラグは、指定されている場合は認証局 (CA) ファイルも読み込みます。

  
Elasticsearch archive configuration settings
Copy to Clipboard Toggle word wrap
es-archive:
  bulk:
    actions:
Copy to Clipboard Toggle word wrap

バルクプロセッサーがディスクへの更新のコミットを決定する前にキューに追加できる要求の数。

 

0

es-archive:
  bulk:
    flush-interval:
Copy to Clipboard Toggle word wrap

time.Duration: この後に、他のしきい値に関係なく一括要求がコミットされます。バルクプロセッサーのフラッシュ間隔を無効にするには、これをゼロに設定します。

 

0s

es-archive:
  bulk:
    size:
Copy to Clipboard Toggle word wrap

バルクプロセッサーがディスクへの更新をコミットするまでに一括要求が発生する可能性のあるバイト数。

 

0

es-archive:
  bulk:
    workers:
Copy to Clipboard Toggle word wrap

一括要求を受信し、Elasticsearch にコミットできるワーカーの数。

 

0

es-archive:
  create-index-templates:
Copy to Clipboard Toggle word wrap

true に設定されている場合、アプリケーションの起動時にインデックステンプレートを自動的に作成します。テンプレートが手動でインストールされる場合は、false に設定されます。

true/ false

false

es-archive:
  enabled:
Copy to Clipboard Toggle word wrap

追加ストレージを有効にします。

true/ false

false

es-archive:
  index-prefix:
Copy to Clipboard Toggle word wrap

Jaeger インデックスのオプションの接頭辞。たとえば、これを production に設定すると、production-jaeger-*という名前のインデックスが作成されます。

  
es-archive:
  max-num-spans:
Copy to Clipboard Toggle word wrap

Elasticsearch のクエリーごとに 1 度に取得するスパンの最大数。

 

0

es-archive:
  max-span-age:
Copy to Clipboard Toggle word wrap

Elasticsearch のスパンについての最大ルックバック。

 

0s

es-archive:
  num-replicas:
Copy to Clipboard Toggle word wrap

Elasticsearch のインデックスごとのレプリカ数。

 

0

es-archive:
  num-shards:
Copy to Clipboard Toggle word wrap

Elasticsearch のインデックスごとのシャード数。

 

0

es-archive:
  password:
Copy to Clipboard Toggle word wrap

Elasticsearch で必要なパスワード。es.username も参照してください。

  
es-archive:
  server-urls:
Copy to Clipboard Toggle word wrap

Elasticsearch サーバーのコンマ区切りの一覧。完全修飾 URL(例: http://localhost:9200) として指定される必要があります。

  
es-archive:
  sniffer:
Copy to Clipboard Toggle word wrap

Elasticsearch のスニファー設定。クライアントはスニッフィングプロセスを使用してすべてのノードを自動的に検索します。デフォルトでは無効にされています。

true/ false

false

es-archive:
  timeout:
Copy to Clipboard Toggle word wrap

クエリーに使用されるタイムアウト。ゼロに設定するとタイムアウトはありません。

 

0s

es-archive:
  tls:
    ca:
Copy to Clipboard Toggle word wrap

リモートサーバーの検証に使用される TLS 認証局 (CA) ファイルへのパス。

 

デフォルトではシステムトラストストアを使用します。

es-archive:
  tls:
    cert:
Copy to Clipboard Toggle word wrap

リモートサーバーに対するこのプロセスの特定に使用される TLS 証明書ファイルへのパス。

  
es-archive:
  tls:
    enabled:
Copy to Clipboard Toggle word wrap

リモートサーバーと通信する際に、トランスポート層セキュリティー (TLS) を有効にします。デフォルトでは無効にされています。

true/ false

false

es-archive:
  tls:
    key:
Copy to Clipboard Toggle word wrap

リモートサーバーに対するこのプロセスの特定に使用される TLS 秘密鍵ファイルへのパス。

  
es-archive:
  tls:
    server-name:
Copy to Clipboard Toggle word wrap

リモートサーバーの証明書の予想される TLS サーバー名を上書きします。

  
es-archive:
  token-file:
Copy to Clipboard Toggle word wrap

ベアラートークンが含まれるファイルへのパス。このフラグは、指定されている場合は認証局 (CA) ファイルも読み込みます。

  
es-archive:
  username:
Copy to Clipboard Toggle word wrap

Elasticsearch で必要なユーザー名。Basic 認証は、指定されている場合に CA も読み込みます。es-archive.password も参照してください。

  
es-archive:
  version:
Copy to Clipboard Toggle word wrap

主要な Elasticsearch バージョン。指定されていない場合、値は Elasticsearch から自動検出されます。

 

0

実稼働ストレージの例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: simple-prod
spec:
  strategy: production
  storage:
    type: elasticsearch
    elasticsearch:
      nodeCount: 3
      resources:
        requests:
          cpu: 1
          memory: 16Gi
        limits:
          memory: 16Gi
Copy to Clipboard Toggle word wrap

ボリュームマウントを含むストレージの例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: simple-prod
spec:
  strategy: production
  storage:
    type: elasticsearch
    options:
      es:
        server-urls: https://quickstart-es-http.default.svc:9200
        index-prefix: my-prefix
        tls:
          ca: /es/certificates/ca.crt
    secretName: jaeger-secret
  volumeMounts:
    - name: certificates
      mountPath: /es/certificates/
      readOnly: true
  volumes:
    - name: certificates
      secret:
        secretName: quickstart-es-http-certs-public
Copy to Clipboard Toggle word wrap

永続ストレージを含むストレージの例:

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: simple-prod
spec:
  strategy: production
  storage:
    type: elasticsearch
    elasticsearch:
      nodeCount: 1
      storage: 
1

        storageClassName: gp2
        size: 5Gi
      resources:
        requests:
          cpu: 200m
          memory: 4Gi
        limits:
          memory: 4Gi
      redundancyPolicy: ZeroRedundancy
Copy to Clipboard Toggle word wrap

1
永続ストレージの設定。この場合、AWS gp2 のサイズは 5Gi です。値の指定がない場合、Jaeger は emptyDir を使用します。Elasticsearch Operator は、Jaeger インスタンスで削除されない PersistentVolumeClaim および PersistentVolume をプロビジョニングします。同じ名前および namespace で Jaeger インスタンスを作成する場合は、同じボリュームをマウントできます。

5.1.1.5. Jaeger Query 設定オプション

Query とは、ストレージからトレースを取得し、ユーザーインターフェイスをホストしてそれらを表示するサービスです。

Expand
表5.7 Jaeger Query パラメーター
パラメーター説明デフォルト値
spec:
  query:
   options: {}
   resources: {}
Copy to Clipboard Toggle word wrap

Query サービスを定義する設定オプション。

  
query:
  additional-headers:
Copy to Clipboard Toggle word wrap

追加の HTTP 応答ヘッダー。複数回指定できます。

形式: "Key: Value"

 
query:
  base-path:
Copy to Clipboard Toggle word wrap

すべての jaeger-query HTTP ルートのベースパスは、root 以外の値に設定できます。たとえば、/jaeger ではすべての UI URL が /jaeger で開始するようになります。これは、リバースプロキシーの背後で jaeger-query を実行する場合に役立ちます。

/{path}

 
query:
  port:
Copy to Clipboard Toggle word wrap

クエリーサービスのポート。

 

16686

options:
  log-level:
Copy to Clipboard Toggle word wrap

Query のロギングレベル。

使用できる値は、tracedebuginfowarningerrorfatalpanic です。

 

Query 設定の例

apiVersion: jaegertracing.io/v1
kind: "Jaeger"
metadata:
  name: "my-jaeger"
spec:
  strategy: allInOne
  allInOne:
    options:
      log-level: debug
      query:
        base-path: /jaeger
Copy to Clipboard Toggle word wrap

5.1.1.6. Jaeger Ingester 設定オプション

Ingester は、Kafka トピックから読み取り、別のストレージバックエンド (Elasticsearch) に書き込むサービスです。allInOne または production デプロイメントストラテジーを使用している場合は、Ingester サービスを設定する必要はありません。

Expand
表5.8 Operator で使用される Jaeger Ingester パラメーター
パラメーター説明
ingester:
  deadlockInterval:
Copy to Clipboard Toggle word wrap

Ingester が終了するまでメッセージを待機する間隔 (秒単位または分単位) を指定します。システムの初期化中にメッセージが到達されない場合に Ingester が終了しないようにするため、デッドロック間隔はデフォルトで無効に (0 に設定) されます。

分と秒 (例: 1m0s)デフォルト値は 0 です。

Expand
表5.9 Ingester に渡される Jaeger パラメーター
パラメーター説明
spec:
  strategy: streaming
  ingester:
    options: {}
Copy to Clipboard Toggle word wrap

Ingester サービスを定義する設定オプション。

 
options:
  kafka:
    consumer:
      topic:
Copy to Clipboard Toggle word wrap

topic パラメーターは、コレクターによってメッセージを生成するために使用され、Ingester によってメッセージを消費するために使用される Kafka 設定を特定します。

コンシューマーのラベル例: jaeger-spans

options:
  kafka:
    consumer:
      brokers:
Copy to Clipboard Toggle word wrap

メッセージを消費するために Ingester によって使用される Kafka 設定を特定します。

ブローカーのラベル (例: my-cluster-kafka-brokers.kafka:9092)

options:
  log-level:
Copy to Clipboard Toggle word wrap

Ingester のロギングレベル。

使用できる値は、tracedebuginfowarningerrorfatalpanic です。

ストリーミング Collector および Ingester の例

apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
  name: simple-streaming
spec:
  strategy: streaming
  collector:
    options:
      kafka:
        producer:
          topic: jaeger-spans
          brokers: my-cluster-kafka-brokers.kafka:9092
  ingester:
    options:
      kafka:
        consumer:
          topic: jaeger-spans
          brokers: my-cluster-kafka-brokers.kafka:9092
      ingester:
        deadlockInterval: 5
  storage:
    type: elasticsearch
    options:
      es:
        server-urls: http://elasticsearch:9200
Copy to Clipboard Toggle word wrap

5.1.2. サイドカーコンテナーの挿入

OpenShift Jaeger は、アプリケーションの Pod 内のプロキシーサイドカーコンテナーを使用してエージェントを提供します。Jaeger Operator は Jaeger Agent サイドカーを Deployment ワークロードに挿入できます。自動のサイドカーコンテナー挿入を有効にしたり、手動で管理したりできます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat