YAMLマニフェストを使用してCollector for Kubernetesをインストールする 🔗
Splunk Distribution of OpenTelemetry Collector for Kubernetesは、リソースYAMLマニフェストを使用してインストールすることもできます。
注釈
Helmを使用してCollector for Kubernetesをインストールする も参照してください。
前提条件 🔗
設定を指定するには、Splunk レルムとbase64エンコードされたアクセストークンを知っている必要があります。
設定ファイルは複数のリソースマニフェストを含むことができます。各マニフェストはKubernetesオブジェクトに特定の状態を適用します。マニフェストはSplunk Observability Cloud専用に設定する必要があり、エージェントのすべてのテレメトリタイプが有効になっている必要があります。Helmチャートを使用してインストールする場合、これがデフォルトです。
使用するマニフェストを決定する 🔗
example リポジトリ から必要なマニフェストファイルをダウンロードしてください。各例の詳細については、README
ファイルを参照してください。
エージェントとゲートウェイ、どちらの Collector のデプロイモード を使用するかを決定します。デフォルトでは、ホストモニタリング (エージェント) モードは Splunk SaaS エンドポイントに直接データを送信するように設定されています。ホストモニタリング (エージェント) モードは、ゲートウェイに送信するように再設定できます。
マニフェストを更新する 🔗
どのマニフェストが自分に合っているかが決まったら、以下のアップデートを行います:
secret.yaml マニフェストで、
splunk_observability_access_token
データフィールドを base64 エンコードされたアクセストークンで更新します。- 使用しているconfigmap-agent.yaml、configmap-gateway.yaml、configmap-cluster-receiver.yamlマニフェストファイルを更新します。「CHANGEME」を検索して、レンダリングされたマニフェストを直接使用するために更新しなければならない値を見つけます。
エクスポーター設定の「CHANGEME」を Splunk レルムの値に更新する必要があります。
属性プロセッサーのコンフィギュレーションの「CHANGEME」をクラスター名の値に更新する必要があります。
マニフェストを適用する 🔗
それらを更新したら、次の例に示すように、kubectl
を使用してマニフェストを適用します。
ホスト監視 (エージェント) モードでは、トークン、レルム情報、およびクラスター名で更新された後、kubectl apply
コマンドを使用して適用できるプリレンダリングされた Kubernetes リソースマニフェストのために、GitHub のagent-only manifest ディレクトリ をダウンロードします:
kubectl apply -f <agent-manifest-directory> --recursive
データ転送 (ゲートウェイ) モードの場合は、トークン、レルム情報、およびクラスター名で更新された後、 kubectl apply
コマンドを使用して適用できるプリレンダリングされた Kubernetes リソースマニフェストのために、GitHub のゲートウェイ専用マニフェストディレクトリ をダウンロードします:
kubectl apply -f <gateway-manifest-directory> --recursive
テンプレートを使用する 🔗
helm template
コマンドを使用して、パラメータをカスタマイズした独自のマニフェスト YAML ファイルを作成できます。
helm template --namespace default --set cloudProvider='aws' --set distribution='openshift' --set splunkObservability.accessToken='KUwtoXXXXXXXX' --set clusterName='my-openshift-EKS-dev-cluster' --set splunkObservability.realm='us1' --set gateway.enabled='false' --output-dir <rendered_manifests_dir> --generate-name splunk-otel-collector-chart/splunk-otel-collector
お望みなら、values.yamlファイルを先に更新することもできます。
helm template --namespace default --values values.yaml --output-dir <rendered_manifests_dir> --generate-name splunk-otel-collector-chart/splunk-otel-collector
マニフェスト・ファイルは、指定したフォルダ <rendered_manifests_dir>
に作成されます。
マニフェストの例 🔗
セキュリティ制約を設定するには、次のマニフェストを参照してください:
---
# Source: splunk-otel-collector/templates/securityContextConstraints.yaml
kind: SecurityContextConstraints
apiVersion: security.openshift.io/v1
metadata:
name: default-splunk-otel-collector
labels:
app.kubernetes.io/name: splunk-otel-collector
helm.sh/chart: splunk-otel-collector-0.122.0
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: default
app.kubernetes.io/version: "0.122.0"
app: splunk-otel-collector
chart: splunk-otel-collector-0.122.0
release: default
heritage: Helm
users:
- system:serviceaccount:default:default-splunk-otel-collector
allowHostDirVolumePlugin: true
allowHostIPC: false
allowHostNetwork: true
allowHostPID: true
allowHostPorts: true
allowPrivilegedContainer: false
allowedCapabilities: []
defaultAddCapabilities: []
fsGroup:
type: RunAsAny
priority: 10
readOnlyRootFilesystem: true
requiredDropCapabilities:
- ALL
runAsUser:
type: RunAsAny
seLinuxContext:
seLinuxOptions:
level: s0
role: system_r
type: spc_t
user: system_u
type: MustRunAs
supplementalGroups:
type: RunAsAny
volumes:
- configMap
- downwardAPI
- emptyDir
- hostPath
- secret
次のステップ 🔗
Collectorをインストールしたら、次のことができます: