ネットワークでSplunk Observability Cloudサービスを許可する

プロキシ、URLとドメインの許可リストなど、実装を保護するためのオプション。

Splunk Observability Cloud は、さまざまなサービスで構成されています。サードパーティへのデータ送信に適用される厳格なネットワーク セキュリティ ポリシーが組織にある場合は、以下のいずれかの方法を使用して Splunk Observability Cloud サービスへのネットワークアクセスを確保してください。

注: http://domain/path に書き込む場合、要求はポート 80 で発生する必要があります。同様に、https://domain/path に書き込む場合、要求はポート 443 で発生する必要があります。別のポートを使用する場合は、http[s]://domain:port/path を使用する必要があります

シンプルなHTTP/HTTPSプロキシを使用する

プロキシを使ってインターネットに接続できる場合は、HTTP/HTTPSプロキシを使うのが最も簡単な方法です。

プロキシには、ネットワークの名前解決機能と、ネットワークで許可する URL リストの URL またはネットワークで許可するドメインリストのドメインに対してアウトバウンド HTTP/HTTPS ネットワーク接続を行う機能を必ず与えてください。

Splunk Distribution of OpenTelemetry Collectorの使用

データ転送(ゲートウェイ)モードで Splunk Distribution of OpenTelemetry Collector を使用します。メトリクスをローカルで Splunk Distribution of OpenTelemetry Collector に転送することができ、テレメトリのローカル ストアアンドフォワード サービスとして機能します。

Splunk Distribution of OpenTelemetry Collector には、ネットワークの名前解決機能と、ネットワークで許可する URL リストの URL またはネットワークで許可するドメインリストのドメインに対してアウトバウンド HTTPS ネットワーク接続を行う機能を必ず与えてください。公開されているポートとエンドポイントのリストも確認します。

Collectorのプロキシ設定を構成する

別の2つのアクションに対してプロキシ設定を行う必要がある場合があります:

  • インストーラスクリプトを使うか、手動で、Collectorファイルをダウンロードする

  • Collectorに、インラインプロキシ(透過プロキシ)を通したテレメトリの送信を許可する

プロキシ設定の構成にあたっては、ニーズに合わせて、またご利用の環境およびプラットフォームのベストプラクティスにしたがって、以下の環境変数のいずれかを設定してください:

  • HTTP_PROXY:HTTPプロキシアドレス

  • HTTPS_PROXY:HTTPSプロキシアドレス

  • NO_PROXY:プロキシを使用している場合、このオプションを選択すると、プロキシを使用しないアドレスが設定されます

以下の例は、ホストとコンテナに、HTTP_PROXYHTTPS_PROXY の環境変数を設定する方法を示したものです:

splunk-otel-collector.conf ファイル(Systemd)
# Edit the example systemd environment file in
# /etc/otel/collector/splunk-otel-collector.conf.example

NO_PROXY=<address,anotheraddress>
HTTP_PROXY=http://<proxy.address:port>
HTTPS_PROXY=http://<proxy.address:port>
Linux(Systemd)
# Add proxy settings to the environment for the installer script

cat <<EOF | sudo tee -a /etc/environment
NO_PROXY=<address,anotheraddress>
HTTP_PROXY=http://<proxy.address:port>
HTTPS_PROXY=http://<proxy.address:port>
EOF

# You might need to restart your shell session at this point.

# Add proxy configuration to the service-proxy.conf
# file in /etc/systemd/system/splunk-otel-collector.service.d/

sudo mkdir -p /etc/systemd/system/splunk-otel-collector.service.d/

cat <<EOF | sudo tee -a /etc/systemd/system/splunk-otel-collector.service.d/service-proxy.conf
[Service]
Environment="NO_PROXY=<address,anotheraddress>"
Environment="HTTP_PROXY=http://<proxy.address:port>"
Environment="HTTPS_PROXY=http://<proxy.address:port>"
EOF

# Reload systemd and splunk-otel-collector service afterwards

sudo systemctl daemon-reload
sudo systemctl restart splunk-otel-collector
Windows
# Set proxy settings for Collector communications

[Environment]::SetEnvironmentVariable("http_proxy","http://<proxy.address:port>","Machine")
[Environment]::SetEnvironmentVariable("https_proxy","http://<proxy.address:port>","Machine")
[Environment]::SetEnvironmentVariable("no_proxy","<address>","Machine")
netsh winhttp set proxy "http://<proxy.address:port>"

# Set proxy settings to download Collector files

Set-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings' -name ProxyServer -Value "http://<proxy.address:port>"
Set-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings' -name ProxyEnable -Value 1
Docker 構成
services:
   otelcol:
      environment:
         - HTTP_PROXY='<proxy.address:port>'
         - HTTPS_PROXY='<proxy.address:port>'
Docker ラン
-e HTTP_PROXY=<proxy.address:port>
-e HTTPS_PROXY=<proxy.address:port>
Kubernetes
env:
   - name: HTTP_PROXY
     value: '<proxy.address:port>'
   - name: HTTPS_PROXY
     value: '<proxy.address:port>'
Ansible
- name: Install Splunk 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
        # Set the proxy address, respectively for http_proxy and https_proxy environment variables
        # It must be a full URL like http://user:pass@10.0.0.42. Not used by Ansible itself.
        splunk_otel_collector_proxy_http: proxy.address:<port>
        splunk_otel_collector_proxy_https: proxy.address:<port>
        # Set the ip or hosts that don't use proxy settings. Only used if splunk_otel_collector_proxy_http
        # or splunk_otel_collector_proxy_https is defined. Default is localhost,127.0.0.1,::1)
        splunk_otel_collector_no_proxy): 127.0.0.1

これらの環境変数を設定に追加した後、Collectorを再起動します。

ネットワークで許可するURL

注: レルムとは、組織をホストする Splunk Observability Cloud の自己完結型のデプロイメントです。レルムが異なると、API エンドポイントも異なります。たとえば、us1 レルムでのデータ送信のエンドポイントは https://ingest.us1.signalfx.com で、eu0 レルムでのデータ送信のエンドポイントは https://ingest.eu0.signalfx.com です。<YOUR_REALM> などのドキュメントにプレースホルダレルム名が示されている場合は、それを実際のレルム名に置き換えます。レルム名を確認するには、Splunk Observability Cloud のナビゲーションメニューを開いて [Settings] を選択後、ユーザー名を選択します。 [Organizations] セクションでレルム名を特定する エンドポイントの指定時にレルム名を含めない場合、Splunk Observability Cloud はデフォルトで us0 レルムになります。

組織のネットワーク セキュリティ ポリシーに基づいて、インターネット経由で配信されるサービスを個別に許可する必要がある場合は、ネットワーク上で以下のサービス URL を許可するようにしてください。

\*.signalfx.com

\*.<YOUR_REALM>.signalfx.com

また、以下のURLも許可する必要があります:

  • packages.treasuredata.com

  • splunk.jfrog.io

  • jfrog-prod-use1-shared-virginia-main.s3.amazonaws.com

  • github.com

このセクションに記載されているすべての URL を許可できない場合は、「ネットワークで許可するドメイン」を参照してください。

ネットワークで許可するドメイン

ネットワークで許可する URL」に記載されているすべての URL を許可できない場合は、必ずネットワーク上で以下のドメインを許可してください。

# Splunk Observability Cloud API base URL (https://dev.splunk.com/observability/docs/apibasics/api_list)
api.<YOUR_REALM>.signalfx.com

# Splunk Observability Cloud user interface
app.<YOUR_REALM>.signalfx.com
customer-api.<YOUR_REALM>.signalfx.com

# CDN for Splunk Observability Cloud files and installers
dl.signalfx.com
github.com

# Backfill API base URL (https://dev.splunk.com/observability/reference/api/backfill/latest)
backfill.<YOUR_REALM>.signalfx.com

# Data ingest API base URL (https://dev.splunk.com/observability/docs/datamodel/ingest/)
ingest.<YOUR_REALM>.signalfx.com

# SignalFlow API base URL (https://dev.splunk.com/observability/reference/api/signalflow/latest)
stream.<YOUR_REALM>.signalfx.com

# RUM ingest endpoint
rum-ingest.<YOUR_REALM>.signalfx.com/v1/rum

# For DEB/RPM collector packages
splunk.jfrog.io
jfrog-prod-use1-shared-virginia-main.s3.amazonaws.com
注: 詳細については、『Splunk Observability Cloud 開発者ガイド』の「Endpoint Summary」トピックを参照してください。