Docs » Splunk Distribution of the OpenTelemetry Collector の利用開始 » Collector for Linux を使い始める » デプロイツールを使用して Collector for Linuxをインストールする » Deploy the Collector for Linux with Ansible

Deploy the Collector for Linux with Ansible 🔗

Ansibleコレクションをインストールする 🔗

Collector は以下のLinuxディストリビューションとバージョンをサポートしています:

  • Amazon Linux: 2, 2023.Fluentdによるログ収集は、現在Amazon Linux 2023ではサポートされていません。

  • CentOS: 7, 8, 9

  • Red Hat: 7, 8, 9

  • Oracle: 8, 9

  • Debian: 11, 12

  • SUSE: 12, 15 バージョン 0.34.0 以上。Fluentd によるログ収集は現在サポートされていません。

  • Ubuntu:16.04、18.04、20.04、22.04、24.04

  • Rocky Linux: 8, 9

Ansibleコレクションをインストールする前に、以下を実行します:

Ansible Galaxyは、Ansibleのコンテンツを共有するためのAnsible公式ハブです。プレイブックの詳細については、Splunk Distribution of OpenTelemetry Collector用のAnsibleコレクション を参照してください。

以下のコマンドを実行して、Ansible GalaxyからAnsibleコレクションをインストールします:

ansible-galaxy collection install signalfx.splunk_otel_collector

このロールを使用するには、プレイブックに signalfx.splunk_otel_collector.collector role 呼び出しを含めます。この役割にはroot権限が必要であることに注意してください。以下の例では、必要最小限の構成を持ってプレイブック内でこのロールを使用する方法を示します:

- name: Install the Splunk Distribution of OpenTelemetry Collector
  hosts: all
  become: yes
  tasks:
    - name: "Include splunk_otel_collector"
      include_role:
        name: "signalfx.splunk_otel_collector.collector"
      vars:
        splunk_access_token: YOUR_ACCESS_TOKEN
        splunk_realm: SPLUNK_REALM

次の表は、このロールに設定できる変数について説明したものです:

変数

説明

gomemlimit

Collector バージョン 0.97.0 から splunk_ballast_size_mib に代わります。GO ランタイムのメモリ使用量を制限し、ガベージコレクションを強化して、メモリ不足を防ぎます。詳細については、設定でメモリバラストを更新する方法 を参照してください。デフォルト値は splunk_total_mem_mib の 90% です。

splunk_access_token

リクエストを認証する Splunk アクセストークン。この属性は必須です。

splunk_realm

データを送信するレルム。この変数はサービスに対してこの値が設定されます。デフォルト値は us0 です。Splunk レルムを検索するには、レルムについての注意 を参照してください。

splunk_ingest_url

Splunk インジェスト URL、例えば https://ingest.us0.signalfx.com 。この変数は、サービスに対してこの値が設定されます。デフォルト値は https://ingest.{{ splunk_realm }}.signalfx.com です。

splunk_api_url

Splunk API の URL、たとえば https://api.us0.signalfx.com 。この変数には、サービスのこの値が設定されます。デフォルト値は https://api.{{ splunk_realm }}.signalfx.com です。

splunk_trace_url

Splunk トレースエンドポイント URL、例えば https://ingest.us0.signalfx.com/v2/trace 。この変数は、サービスに対してこの値が設定されます。デフォルト値は {{ splunk_ingest_url }}/v2/trace です。

splunk_hec_url

Splunk HEC のエンドポイント URL、例えば https://ingest.us0.signalfx.com/v1/log 。この変数は、サービスに対してこの値が設定されます。デフォルト値は {{ splunk_ingest_url }}/v1/log です。

splunk_otel_collector_version

インストールするパッケージのバージョン。例えば、0.25.0 。デフォルト値は latest です。

splunk_otel_collector_config

YAML で作成された設定ファイル。この変数を /etc/otel/collector/gateway_config.yaml に設定することで、パッケージをデータ転送 (ゲートウェイ) モードでインストールできます。デフォルトの場所は /etc/otel/collector/agent_config.yaml です。

splunk_config_override

デフォルトのコンフィギュレーションにマージされるカスタムコンフィギュレーション。

splunk_config_override_list_merge

splunk_config_override のリストをデフォルト設定のリストとマージするための list_merge オプションを設定するために使用される変数。指定できるオプションは replacekeepappendprependappend_rp または prepend_rp です。デフォルト値は replace です。この変数に関する情報は、Ansibleドキュメンテーションサイト にあります。

splunk_otel_collector_config_source

これは、リモートホスト上で splunk_otel_collector_config で設定された値の代わりにアップロードされて設定される、コントロールホスト上の設定ファイルへのソースパスです。この変数を使用して、例えば ./custom_collector_config.yaml のようなカスタム設定を送信することができます。デフォルト値は "" で、何もコピーされず、 splunk_otel_collector_config で設定された設定ファイルが使用されます。

splunk_bundle_dir

バンドルディレクトリへのパス。デフォルトのパスはパッケージによって提供されます。指定されたパスがデフォルト値から変更された場合、パスはノード上の既存のディレクトリでなければなりません。この変数はサービスに対してこの値が設定されます。デフォルトの場所は /usr/lib/splunk-otel-collector/agent-bundle です。

splunk_collectd_dir

バンドルの collectd 設定ディレクトリへのパス。デフォルトのパスはパッケージによって提供されます。指定されたパスがデフォルト値から変更された場合、パスはノード上の既存のディレクトリでなければなりません。この変数はサービスに対してこの値が設定されます。デフォルトの場所は /usr/lib/splunk-otel-collector/agent-bundle です。

splunk_service_usersplunk_service_group

サービスのユーザーまたはグループの所有権。ユーザーまたはグループが存在しない場合は作成されます。デフォルト値は splunk-otel-collector です。

splunk_otel_collector_proxy_httpsplunk_otel_collector_proxy_https

http_proxyhttps_proxy 環境変数の少なくとも一方が空でない場合に、 サービスが使用するプロキシアドレス。この値は、例えば http://user:pass@10.0.0.42 のように、完全なURLでなければなりません。このプロキシは、デプロイ時にAnsible自体では使用されないことに注意してください。デフォルト値は "" です。

splunk_memory_total_mib

割り当てられたメモリの量(MiB)。デフォルト値は 512 、つまり 500 x 2^20 バイトのメモリです。

splunk_ballast_size_mib

splunk_ballast_size_mib は Collector バージョン 0.97.0 から非推奨です。使用している場合は、設定の更新方法 を参照してください。

install_fluentd

ログ収集のための Fluentd と依存関係をインストールまたは管理するオプション。依存関係には、Linux の機能を有効にするための capng_c、systemd ジャーナルログ収集のための fluent-plugin-systemd、必要なライブラリや開発ツールが含まれます。デフォルト値は false です。

td_agent_version

インストールされている td-agent (Fluentd パッケージ) のバージョン。デフォルト値は、Debian jessie では 3.3.0 、Debian stretch では 3.7.1 、その他のディストロでは 4.3.0 です。

splunk_fluentd_config

リモートホスト上の Fluentd 設定ファイルへのパス。デフォルトの場所は /etc/otel/collector/fluentd/fluent.conf です。

splunk_fluentd_config_source

リモートホストで splunk_fluentd_config で設定された値の代わりにアップロードされて設定される、コントロールホスト上の Fluentd 設定ファイルへのソースパス。この変数を、たとえば ./custom_fluentd_config.conf のように、カスタムの Fluentd 設定を送信するために使います。デフォルト値は "" で、何もコピーされず、splunk_otel_collector_config で設定された設定ファイルが使われます。

バックエンドアプリケーションのゼロコードインストルメンテーションでオートディスカバリーを設定する(Linuxのみ) 🔗

Collectorのインストールと同時に、バックエンドアプリケーションを自動的に検出し、インストルメンテーションできます。自動ディスカバリー(以前のゼロコンフィギュレーション自動インストルメンテーション)により、SDKを個別にインストールして設定する必要がなくなります。詳細については、バックエンドアプリケーションの自動ディスカバリーを設定する を参照してください。

次の表は、この Ansible ロールに設定できる変数を示しています:

変数

説明

デフォルト値

install_splunk_otel_auto_instrumentation

Java、Node.js、および/または.NETバックエンドアプリケーションの自動ディスカバリーをインストールまたは管理します。true に設定すると、splunk-otel-auto-instrumentation DebianまたはRPMパッケージがCollectorリポジトリからダウンロードされ、インストールされます。自動ディスカバリーまたは設定変更を有効にするには、インストール後にノード上のアプリケーションを個別に起動または再起動する必要があります。

false

splunk_otel_auto_instrumentation_sdks

インストールおよび有効化する自動ディスカバリー SDK。注: dotnet は現在 x86_64/amd64 でのみサポートされています。

['java', 'nodejs', 'dotnet']

splunk_otel_auto_instrumentation_version

インストールする splunk-otel-auto-instrumentation パッケージのバージョンを決定します(例: 0.50.0 )。サポートされる最小バージョンは、Javaの場合は 0.48.0、Node.jsの場合は 0.87.0、.NETの場合は 0.99.0 です。

latest

splunk_otel_auto_instrumentation_systemd

デフォルトでは、ノード上の /etc/ld.so.preload ファイルは /usr/lib/splunk-instrumentation/libsplunk.so splunk-otel-auto-instrumentation パッケージが提供する ` 共有オブジェクトライブラリ用に設定されており、サポートされるすべてのアプリケーションに対してシステム全体でオートディスカバリーを有効化し設定します。あるいは、このオプションを ``true` に設定すると、systemd サービスとして動作しているサポートアプリケーションに対してのみオートディスカバリーを有効にして設定できます。このオプションを true に設定すると、 /usr/lib/splunk-instrumentation/libsplunk.so /etc/ld.so.preload` に ` が追加されません。代わりに、/usr/lib/systemd/system.conf.d/00-splunk-otel-auto-instrumentation.conf systemd ドロップインファイルが作成され、デフォルトと指定されたオプションに基づいて環境変数が設定されます。

false

splunk_otel_auto_instrumentation_ld_so_preload

デフォルトでは、ノード上の /etc/ld.so.preload ファイルは /usr/lib/splunk-instrumentation/libsplunk.so 共有オブジェクトライブラリ用に設定されています。これは splunk-otel-auto-instrumentation パッケージによって提供され、自動ディスカバリーに必要です。この変数を設定して、追加のライブラリパス、例えば /path/to/my.library.so を含めることができます。このオプションは、/usr/lib/splunk-instrumentation/libsplunk.so ファイルに加えて、アプリケーション用にプリロードするカスタムまたはその他の共有オブジェクトライブラリファイルを含める必要がある場合に使用します。

なし

splunk_otel_auto_instrumentation_java_agent_jar

Splunk OpenTelemetry Javaエージェントへのパスを決定します。デフォルトのパスは splunk-otel-auto-instrumentation パッケージによって提供されます。パスをデフォルト値から変更する場合は、ノード上の既存のファイルでなければなりません。

/usr/lib/splunk-instrumentation/splunk-otel-javaagent.jar

splunk_otel_auto_instrumentation_npm_path

Node.js SDKをインストールするために必要な、プリインストールされた npm コマンドへのパス。例えば、/my/custom/path/to/npm

npm

splunk_otel_auto_instrumentation_resource_attributes

OpenTelemetry インストルメンテーションのリソース属性、例えば deployment.environment=prod を設定します。リソース属性は、ユーザー定義のカンマ区切り key=value ペアです。詳細は JavaNode.js および .NET を参照してください。

なし

splunk_otel_auto_instrumentation_service_name

例えば、my.service のように、インストルメンテーションされたアプリケーションのサービス名を明示的に設定します。デフォルトでは、サービス名はノード上の実行可能ファイルの引数から自動的に導出されます。詳細については、JavaNode.js.NET を参照してください。

なし

splunk_otel_auto_instrumentation_enable_profiler

AlwaysOn CPU プロファイリングを有効または無効にします。

false

splunk_otel_auto_instrumentation_enable_profiler_memory

AlwaysOn Memory Profiling を有効または無効にします。

false

splunk_otel_auto_instrumentation_enable_metrics

JVM メトリクスをアクティブまたは非アクティブにします。

false

splunk_otel_auto_instrumentation_otlp_endpoint

すべてのアクティブ化されたSDKによって収集されたメトリクス、トレース、ログにOTLPエンドポイントを設定します。splunk_otel_auto_instrumentation_versionlatest または 0.87.0 以上の場合のみ適用されます。

'' で、それぞれのアクティブにれたSDKについてデフォルトに延期します。

splunk_otel_auto_instrumentation_otlp_protocol_protocol

すべてのアクティブ化されたSDK、たとえば、grpc または http/protobuf によって収集されたメトリクス、トレース、ログにOTLPエンドポイントプロトコルを設定します。splunk_otel_auto_instrumentation_versionlatest または 0.104.0 以上の場合のみ適用されます。

'' で、それぞれのアクティブにれたSDKについてデフォルトに延期します。

splunk_otel_auto_instrumentation_metrics_exporter

すべての有効化されたSDK、たとえば otlp,prometheus によって収集されたメトリックのエクスポーターのコマ区切りリスト。値を none に設定すると、メトリクスの収集とエクスポートが無効になります。splunk_otel_auto_instrumentation_versionlatest または 0.104.0 以上の場合のみ適用されます。

'' で、それぞれのアクティブにれたSDKについてデフォルトに延期します。

splunk_otel_auto_instrumentation_logs_exporter

アクティブ化されたすべてのSDK、たとえば otlp によって収集されたログのエクスポー ターを設定します。値を none に設定すると、メトリクスの収集とエクスポートが無効になります。splunk_otel_auto_instrumentation_versionlatest または 0.108.0 以上の場合のみ適用されます。

'' で、それぞれのアクティブにれたSDKについてデフォルトに延期します。

次のステップ 🔗

パッケージをインストールしたら、以下を参照してください:

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