第3章 Collector の設定


3.1. Collector の設定

Red Hat build of OpenTelemetry Operator は、Red Hat build of OpenTelemetry リソースを作成およびデプロイするときに使用されるアーキテクチャーと設定を定義するカスタムリソース定義 (CRD) ファイルを使用します。デフォルト設定をインストールするか、ファイルを変更できます。

3.1.1. OpenTelemetry Collector 設定オプション

OpenTelemetry Collector は、テレメトリーデータにアクセスする 5 種類のコンポーネントで構成されます。

  • レシーバー
  • プロセッサー
  • エクスポーター
  • コネクター
  • 拡張機能

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

OpenTelemetry Collector カスタムリソースファイルの例

apiVersion: opentelemetry.io/v1beta1
kind: OpenTelemetryCollector
metadata:
  name: cluster-collector
  namespace: tracing-system
spec:
  mode: deployment
  observability:
    metrics:
      enableMetrics: true
  config:
    receivers:
      otlp:
        protocols:
          grpc: {}
          http: {}
    processors: {}
    exporters:
      otlp:
        endpoint: otel-collector-headless.tracing-system.svc:4317
        tls:
          ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt"
      prometheus:
        endpoint: 0.0.0.0:8889
        resource_to_telemetry_conversion:
          enabled: true # by default resource attributes are dropped
    service: 1
      pipelines:
        traces:
          receivers: [otlp]
          processors: []
          exporters: [otlp]
        metrics:
          receivers: [otlp]
          processors: []
          exporters: [prometheus]

1
コンポーネントが設定されていても、service セクションで定義されていない場合、そのコンポーネントは有効になりません。
表3.1 Operator が OpenTelemetry Collector を定義するために使用するパラメーター
パラメーター説明デフォルト
receivers:

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

otlpjaegerprometheuszipkinkafkaopencensus

なし

processors:

プロセッサーは、受信したデータをエクスポートする前に処理します。デフォルトでは、プロセッサーは有効になっていません。

batchmemory_limiterresourcedetectionattributesspank8sattributesfilterrouting

なし

exporters:

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

otlpotlphttpdebugprometheuskafka

なし

connectors:

コネクターはパイプラインのペアを結合します。つまり、パイプラインの終わりのエクスポーターとしてデータを消費し、パイプラインの始まりのレシーバーとしてデータを出力します。コネクターを使用して、消費されたデータを要約、複製、またはルーティングできます。

spanmetrics

なし

extensions:

テレメトリーデータの処理を含まないタスク用のオプションのコンポーネント。

bearertokenauthoauth2clientjaegerremotesamplingpprofhealth_checkmemory_ballastzpages

なし

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 セクションに追加してトレース用に有効にします。

 

なし

service:
  pipelines:
    metrics:
      receivers:

メトリクスのレシーバーを有効にするには、service.pipelines.metrics の下に追加します。

 

なし

service:
  pipelines:
    metrics:
      processors:

メトリクスのプロセッサーを有効にするには、service.pipelines.metrics の下に追加します。

 

なし

service:
  pipelines:
    metrics:
      exporters:

メトリクスのエクスポーターを有効にするには、service.pipelines.metrics の下に追加します。

 

なし

3.1.2. 必要な RBAC リソースの自動作成

一部の Collector コンポーネントは、RBAC リソースの設定を必要とします。

手順

  • Red Hat build of OpenTelemetry Operator が権限を自動的に作成できるように、opentelemetry-operator-controller-manage サービスアカウントに次の権限を追加します。

    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      name: generate-processors-rbac
    rules:
    - apiGroups:
      - rbac.authorization.k8s.io
      resources:
      - clusterrolebindings
      - clusterroles
      verbs:
      - create
      - delete
      - get
      - list
      - patch
      - update
      - watch
    ---
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: generate-processors-rbac
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: generate-processors-rbac
    subjects:
    - kind: ServiceAccount
      name: opentelemetry-operator-controller-manager
      namespace: openshift-opentelemetry-operator
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.