Docs » Splunk Observability Cloud でサポートされているインテグレーション » オーケストレーションのためにアプリケーション・レシーバーを設定する » Kubernetesプロキシ

Kubernetesプロキシ 🔗

Splunk Distribution of OpenTelemetry Collector は、Smart Agent レシーバーkubernetes-proxy モニタータイプを使用して、kube-proxy メトリクスから Prometheus メトリクスを Prometheus 形式でエクスポートします。

パスが設定されていない場合、インテグレーションはデフォルトでパス /metrics をクエリし、Prometheus Exporter の説明に従って Prometheus メトリクスタイプを Splunk Observability Cloud メトリクスタイプに変換します。

このモニタータイプは、Kubernetes、Linux、Windowsで利用できます。

メリット 🔗

インテグレーションを設定すると、これらの機能にアクセスできるようになります:

インストール 🔗

このインテグレーションを導入するには、以下の手順に従ってください:

  1. Splunk Distribution of the OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:

  2. [設定] セクションの説明に従ってインテグレーションを設定します。

  3. Splunk Distribution of OpenTelemetry Collector を再起動します。

設定 🔗

Smart Agent モニターとCollector のインテグレーションを使用するには、以下の手順に従います:

  1. Smart Agent レシーバーを設定ファイルに含めます。

  2. レシーバーセクションおよびパイプラインセクションの両方で、Collector 構成にモニタータイプを追加します。

🔗

このインテグレーションを有効にするには、Collector構成に以下を追加します:

receivers:
  smartagent/kubernetes-proxy
    type: kubernetes-proxy
    ... # Additional config

次に、設定ファイルの service.pipelines.metrics.receivers セクションにモニターを追加します:

service:
   pipelines:
     metrics:
       receivers: [smartagent/kubernetes-proxy]

例Kubernetesオブザーバー 🔗

以下はYAMLコンフィギュレーションの例です:

receivers:
  smartagent/kubernetes-proxy:
    type: kubernetes-proxy
    host: localhost
    port: 10249
    extraDimensions:
      metric_source: kubernetes-proxy

OpenTelemetry Collector には Kubernetes observer ( k8sobserver ) があり、Kubernetes pod のようなネットワーク接続されたエンドポイントを発見するための拡張として実装することができます。このオブザーバーを使用することは、OpenTelemetry Collectorがホストモニタリング(エージェント)モードでデプロイされ、個々のノードやホストインスタンス上で動作していることを想定しています。

オブザーバーを使用するには、関連するルールを持つ Receiver Creator インスタンスを作成する必要があります。例:

extensions:
  # Configures the Kubernetes observer to watch for pod start and stop events.
  k8s_observer:
  host_observer:

receivers:
  receiver_creator/1:
    # Name of the extensions to watch for endpoints to start and stop.
    watch_observers: [k8s_observer]
    receivers:
      smartagent/kubernetes-kubeproxy:
        rule: type == "pod" && name matches "kube-proxy"
        type: kubernetes-proxy
        port: 10249
        extraDimensions:
          metric_source: kubernetes-proxy

      prometheus_simple:
        # Configure prometheus scraping if standard prometheus annotations are set on the pod.
        rule: type == "pod" && annotations["prometheus.io/scrape"] == "true"
        config:
          metrics_path: '`"prometheus.io/path" in annotations ? annotations["prometheus.io/path"] : "/metrics"`'
          endpoint: '`endpoint`:`"prometheus.io/port" in annotations ? annotations["prometheus.io/port"] : 9090`'

      redis/1:
        # If this rule matches an instance of this receiver will be started.
        rule: type == "port" && port == 6379
        config:
          # Static receiver-specific config.
          password: secret
          # Dynamic configuration value.
          collection_interval: `pod.annotations["collection_interval"]`
      resource_attributes:
          # Dynamic configuration value.
          service.name: `pod.labels["service_name"]`

      redis/2:
        # Set a resource attribute based on endpoint value.
        rule: type == "port" && port == 6379
        resource_attributes:
          # Dynamic value.
          app: `pod.labels["app"]`
          # Static value.
          source: redis

  receiver_creator/2:
    # Name of the extensions to watch for endpoints to start and stop.
    watch_observers: [host_observer]
    receivers:
      redis/on_host:
        # If this rule matches, an instance of this receiver is started.
        rule: type == "port" && port == 6379 && is_ipv6 == true
        resource_attributes:
          service.name: redis_on_host

processors:
  exampleprocessor:

exporters:
  exampleexporter:

service:
  pipelines:
    metrics:
      receivers: [receiver_creator/1, receiver_creator/2]
      processors: [exampleprocessor]
      exporters: [exampleexporter]
  extensions: [k8s_observer, host_observer]

詳しくは レシーバークリエーター を参照してください。

コンフィギュレーション設定 🔗

設定オプション

必須

タイプ

説明

httpTimeout

いいえ

int64

読み込みと書き込みの両方のHTTPタイムアウト時間。これは

https://golang.org/pkg/time/#ParseDuration が受け付ける継続時間文字列になる可能性があります デフォルト:は 10s です。

username

いいえ

string

各リクエストで使用される Basic Auth ユーザー名 (ある場合)。

password

いいえ

string

各リクエストで使用するBasic Authパスワード (ある場合)。

useHTTPS

いいえ

bool

trueの場合、エージェントはHTTPSを使用してサーバに接続します

プレーン HTTPの代わりに。デフォルトfalse です。

httpHeaders

いいえ

map of strings

HTTP ヘッダー名と値のマップ。 同じメッセージ・ヘッダーに対する

カンマ区切りの複数の値もサポートしています。

skipVerify

いいえ

bool

useHTTPSがtrueで、このオプションもtrueの場合、エクスポータ

TLS 証明書は検証されません。デフォルトfalse です。

sniServerName

いいえ

string

useHTTPSがtrueでskipVerifyがtrueの場合、sniServerNameは

返された証明書のホスト名を検証するために使用されます。また、IPアドレスでない限り、バーチャルホスティングをサポートするために、クライアントのハンドシェイクにも含まれます。

caCertPath

いいえ

string

TLS証明書に署名したCA証明書へのパス。

skipVerify がfalseに設定されています。

clientCertPath

いいえ

string

TLSが必要な接続に使用するクライアントTLS証明書へのパス。

clientKeyPath

いいえ

string

TLSが必要な接続に使用するクライアントTLSキーへのパス。

host

はい

string

エクスポーターのホスト。

port

はい

integer

エクスポーターのポート。

useServiceAccount

いいえ

bool

認証にはポッドサービスアカウントを使用します。デフォルト

false です。

metricPath

いいえ

string

エクスポーター・サーバーのメトリクス・エンドポイントへのパス。デフォルト

/metrics です。

sendAllMetrics

いいえ

bool

Prometheusエクスポーターから出力されるすべてのメトリクスを

フィルターリングなしです。このオプションは、Prometheus・エクスポーター・モニターを直接使用する場合には、ビルトインのフィルターリングがないため、効果がありません。デフォルトは false です。

メトリクス 🔗

このインテグレーションでは、以下のメトリクスを使用できます:

備考 🔗

  • To learn more about the available in Splunk Observability Cloud see メトリクスタイプ

  • In host-based subscription plans, default metrics are those metrics included in host-based subscriptions in Splunk Observability Cloud, such as host, container, or bundled metrics. Custom metrics are not provided by default and might be subject to charges. See メトリクスカテゴリ for more information.

  • MTSベースのサブスクリプションプランでは、すべてのメトリクスがカスタムです。

  • メトリクスを追加するには、その他のメトリクスの追加extraMetrics の設定方法を参照してください。

デフォルト以外のメトリクス(バージョン4.7.0以降) 🔗

デフォルト*ではないメトリクスを出力するには、一般的なモニター・レベルの extraMetrics 設定オプションでそれらのメトリクスを追加できます。上記のメトリクスのリストに表示されていない、特定の構成オプションに由来するメトリクスは、 extraMetrics に追加する必要はありません。

実行中のエージェントインスタンスでこのモニターを構成した後、agent-status monitors を実行すると、発行されるメトリクスのリストを見ることができます。

トラブルシューティング 🔗

Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。

Splunk Observability Cloudをご利用のお客様

見込み客および無料トライアルユーザー様

  • Splunk Answers のコミュニティサポートで質問し、回答を得る

  • Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。

This page was last updated on 2024年05月29日.