Docs » Splunk Distribution of the OpenTelemetry Collector の利用開始 » App とサービスのオートディスカバリー » Kubernetes用のオートディスカバリーとゼロコードインストルメンテーション » Kubernetes でのサードパーティアプリケーションのオートディスカバリー

Kubernetes でのサードパーティアプリケーションのオートディスカバリー 🔗

オートディスカバリーを使用して、Kubernetes 環境で実行されているサードパーティのアプリケーション (データベースや Web サーバーなど) を見つけることができます。オートディスカバリーは、これらのアプリケーションからテレメトリデータを収集し、Splunk Observability Cloud に送信します。

注釈

Collector をバージョン 0.94.0 以上に更新して、自動サービスディスカバリーを有効にします。

Collectorバージョン0.109.0以降を使用している場合、Splunk Observability Cloudにログインし、Data Management メニューの Discovered services タブに移動すると、Collectorが検出したサービスおよびサードパーティ製アプリケーションと自動的に監視できるものを確認できます。詳細は 自動ディスカバリーによるCollectorのデプロイ を参照してください。

自動ディスカバリーの仕組み 🔗

Collectorを自動検出で実行すると、オブザーバーエクステンションによってプラットフォーム上で検出されたエンドポイントに対して、サポートされているメトリクスレシーバーの組み込み設定をテストします。これは、Collectorサービスを開始する前に行われます。

成功基準に一致するメトリクスを取得する、動的にインスタンス化されたすべてのレシーバーについて、Collector はディスカバリー構成を、必要なオブザーバー拡張と同様に、既知の作業ルールを持つレシーバークリエーターインスタンスに変換します。詳細については、レシーバークリエーターレシーバー を参照してください。同時に、Collector は実行時に構成を metrics パイプラインに追加します。

サービスとの接続は確立できるが、期待されるメトリクスを受信できないレシーバーに対して、ディスカバリーモードは、どのプロパティを設定すべきか、またはどの拡張機能または設定をサービス上で構成して、正常にテレメトリを取得すべきかを提案します。ディスカバリー・プロセスを調整するために、ディスカバリー・プロパティを使用して、認証情報など、必要なターゲット固有の構成値を定義できます。

Kubernetesで実行する場合、ディスカバリーモードは k8s_observer オブザーバーによって発見されたエンドポイントに対して、バンドルされたメトリクスレシーバーの設定をテストします。ー発見されたインスタンスはー成功したインスタンスはー既存のー既存サービス構成に組み込まれます。

自動ディスカバリーによるCollectorのデプロイ 🔗

Splunk Distribution of OpenTelemetry Collector for KubernetesからDaemonSetをディスカバリーモードで実行するように設定できます。プロパティを編集して、必要な資格情報またはサービス固有の情報を追加します。

注釈

Collectorのバージョン0.109.0以降を使用している場合は、featureGates: splunk.continuousDiscovery を使用してUIで自動検出を有効にします。

次の例では、Helmチャートでディスカバリーモードを有効にし、PostgreSQLサービスディスカバリー用の認証プロパティを追加する方法を示します:

agent:

  #...

  discovery:
    enabled: true # Turned off by default
    properties:
      extensions:
        k8s_observer:
          config:
            auth_type: serviceAccount  # Default auth_type value
      receivers:
        postgres:
          config:
            # Environment variables populated by secret data
            username: '${env:POSTGRES_USER}'
            password: '${env:POSTGRES_PASSWORD}'
            tls:
              insecure: true
  # Activates auto discovery in UI. Only available for the Collector version 0.109.0 or higher
  featureGates: splunk.continuousDiscovery

# ...

extraEnvs:
   # Environment variables using a manually created secret
   - name: POSTGRES_USER
     valueFrom:
       secretKeyRef:
         name: postgres-monitoring
         key: username
   - name: POSTGRES_PASSWORD
     valueFrom:
       secretKeyRef:
         name: postgres-monitoring
         key: password

ディスカバリーの進行状況とステートメントの評価を確認するには、エージェントの起動ログを参照するか、kubectlを使用します。例:

$ kubectl -n monitoring logs splunk-otel-collector-agent | grep -i disco
Discovering for next 10s...
Successfully discovered "postgresql" using "k8s_observer" endpoint "k8s_observer/e8a10f52-4f2a-468c-be7b-7f3c673b1c8e/(5432)".
Discovery complete.

注釈

デフォルトでは、docker_observerhost_observer の拡張子は、Helmチャートでのディスカバリーではオフになっています。

このページは 2025年02月10日 に最終更新されました。