Docs » Splunk Distribution of the OpenTelemetry Collector の利用開始 » Other Collector deployment tools and options: ECS/EC2, Fargate, Nomad, PCF » Pivotal Cloud FoundryでCollectorをデプロイする

Pivotal Cloud FoundryでCollectorをデプロイする 🔗

Pivotal Cloud Foundry(PCF)を使用してCollectorをデプロイします。

デプロイオプションは3つあります:

  • BOSHリリース: Collector は、スタンドアロンのデプロイメントとしてPCF環境にデプロイされます。

  • Cloud Foundry Buildpack:このインテグレーションでは、アプリのサイドカーとしてCollectorをインストールして実行します。この構成では、Collectorはアプリと同じコンテナで実行されます。

  • Tanzu Tile:Tanzu Tileは、Pivotal Ops Managerに統合できるCollectorのパッケージリリースです。Tanzu Tileを使用すると、Ops ManagerからCollectorをダウンロード、インストール、実行、設定、および更新できます。

BOSHリリース 🔗

BOSHリリースを使用してデプロイされた場合、Collectorは、Loggregator Firehose へのノズルとして機能します。これは、Cloud Foundryがログとメトリクスを出力するために使用するアーキテクチャーの1つです。

依存関係 🔗

リリーススクリプトには、以下が必要です:

  • BOSH CLI これは、デプロイメント操作からソフトウェアリリース管理まで、BOSHのすべてに対応するコマンドラインツールです。

  • wget がウェブサーバーからコンテンツを取得します。

  • jq がJSONファイルを処理します。

Collector のリリースとデプロイ 🔗

Splunk Distribution of OpenTelemetry Collector の最新バージョンで新しいリリースを生成するには、リリーススクリプト を使用します。このスクリプトは Collector リポジトリの BOSH release ディレクトリで実行する必要があります。このリポジトリには、リリースに必要なコンポーネントが含まれるために必要な依存関係があります。

bosh -d splunk-otel-collector deploy deployment.yaml

スクリプトは、以下の表に示す変数を使用します:

変数 🔗

変数

説明

デフォルト

OTEL_VERSION

このリリースの一部としてデプロイする Collector のバージョン。

latest。有効なバージョンはバージョン0.48.0以上でなければなりません。

SMART_AGENT_VERSION

ダウンロードするSignalFx Smart Agentのバージョン。Collector SignalFxレシーバーの依存関係です。

latest

BOSH_RELEASE_VERSION

作成されるBOSHリリースのバージョン。

false (0) (指定されていない場合)。最初のリリースを除くすべてのリリースには、あらかじめ値が設定されているはずです。

IS_DEV_RELEASE

ブール値(int)。この変数が設定されている場合、このスクリプトはローカルでリリースを作成します。この変数が true に設定されている場合、スクリプトは開発で使用できます。

false (0)

UPLOAD_RELEASE

ブール値(int)。この変数が true に設定されている場合、スクリプトはリリースを BOSH Director にアップロードします。BOSH Director は、主にテスト用の GitHub ワークフローに使用されます。

true (1)

設定例 を参照してください。

YAMLファイルを使用してCollectorをデプロイする 🔗

次のコマンドを実行して、deployment.yaml ファイルを使用して Collector をデプロイします:

bosh -d splunk-otel-collector deploy deployment.yaml

以下は、deployment.yaml ファイルの例です:

name: splunk-otel-collector

releases:
  - name: splunk-otel-collector
    version: latest

stemcells:
  - alias: default
    os: ubuntu-bionic
    version: latest

update:
  canaries: 1
  max_in_flight: 1
  canary_watch_time: 1000-30000
  update_watch_time: 1000-30000

instance_groups:
  - name: splunk-otel-collector
    instances: 1
    azs: [z1, z2]
    jobs:
      - name: splunk-otel-collector
        release: splunk-otel-collector
        properties:
          cloudfoundry:
            rlp_gateway:
              endpoint: "https://log-stream.sys.<TAS environment name>.cf-app.com"
              shard_id: "otelcol"
              tls:
                insecure_skip_verify: false
            uaa:
              endpoint: "https://uaa.sys.<TAS environment name>.cf-app.com"
              username: "..."
              password: "..."
              tls:
                insecure_skip_verify: false
          splunk:
            access_token: "..."
            realm: "..."
    vm_type: default
    stemcell: default
    networks:
      - name: default

デプロイメントにカスタムCollector構成を含めるには、次の例に示すようにカスタム構成ファイルを使用します:

name: splunk-otel-collector

releases:
  - name: splunk-otel-collector
    version: latest

stemcells:
  - alias: default
    os: ubuntu-bionic
    version: latest

update:
  canaries: 1
  max_in_flight: 1
  canary_watch_time: 1000-30000
  update_watch_time: 1000-30000

instance_groups:
  - name: splunk-otel-collector
    instances: 1
    azs: [z1, z2]
    jobs:
      - name: splunk-otel-collector
        release: bosh
        properties:
          otel:
            config_yaml: |
              receivers:
                cloudfoundry:
                  rlp_gateway:
                    endpoint: "https://log-stream.sys.<TAS environment name>.cf-app.com"
                  uaa:
                    endpoint: "https://uaa.sys.<TAS environment name>.cf-app.com"
                    username: "..."
                    password: "..."

              exporters:
                signalfx:
                  access_token: "..."
                  realm: "..."

              processors:
                resourcedetection:
                  detectors: [ system ]

              service:
                pipelines:
                  metrics:
                    receivers: [ cloudfoundry ]
                    processors: [ resourcedetection ]
                    exporters: [ signalfx ]

    vm_type: default
    stemcell: default
    networks:
      - name: default

さらに詳しく 🔗

以下のGitHubリポジトリとファイルを参照してください:

Cloud Foundry Buildpack 🔗

Cloud Foundry Buildpackは、デプロイされる実際のアプリのサイドカーとしてCollectorをデプロイします。Collectorは、Loggregator Firehoseへのノズルとしてアプリを観察することができ、それが実行されている限り、Loggregator Firehoseに送信されるすべてのメトリクスとログを見ることができます。

依存関係 🔗

  • wget

  • jq

パックをインストールして Collector をデプロイする 🔗

Buildpackをインストールします:

  • Collector’s Buildpack GitHubリポジトリ をクローンします。

  • 新しく作成したレポにアクセスします。

  • 以下のコマンドを実行して、Collector 用の Buildpack を追加します:

cf create-buildpack otel_collector_buildpack . 99 --enable

さらに詳しく 🔗

以下のGitHubリポジトリとファイルを参照してください:

Tanzu Tile 🔗

Tanzuタイルは、BOSHリリース を使用して、Loggregator Firehose にノズルとしてCollectorをデプロイします。

なお、Tanzuタイルのバージョン0.81以上では、以下のサービスをサポートしています:

  • Tanzuアプリケーションサービス(TAS)バージョン3および4

  • VMware Tanzu Operations Manager バージョン3

  • Stemcells (Ubuntu Jammy) バージョン 1.148

タイルバージョン0.78.1はTASバージョン2のみをサポートしています。

依存関係 🔗

リリーススクリプトには、以下が必要です:

Collector のリリースとデプロイ 🔗

以下のコマンドを実行して、Tanzuタイルの依存関係としてパッケージ化されたBOSHリリースを作成し、タイルをビルドします。

./make-latest-tile

コマンドが成功すれば、./product/splunk-otel-collector-<VERSION>.pivotal でタイルを見つけることができます。

さらに詳しく 🔗

以下のGitHubリポジトリとファイルを参照してください:

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