Cisco Cloud Observability Kubernetes コレクタ(appdynamics-collectors)チャートは、次のコレクタの展開に使用できます。

  • クラスタコレクタ
  • インフラストラクチャ コレクタ
  • ログ コレクタ
  • Cisco AppDynamics Distribution of OpenTelemetry Collector

appdynamics-collectors チャートには次のサブチャートが含まれます。

  • appdynamics-otel-collector には次の設定が含まれます。
    • Cisco AppDynamics Distribution of OpenTelemetry Collector
  • appdynamics-cloud-k8s-monitoring にはこれらのコレクタの設定が含まれます。
    • クラスタコレクタ
    • インフラストラクチャ コレクタ
    • ログ コレクタ

グローバル設定

collectors-values.yaml ファイル内で次のグローバルパラメータを指定できます。

名前タイプ説明必須

global

object

Cisco Cloud Observability Kubernetes コレクタのグローバル設定が含まれています。 

なし

global

↩ 親

collectors-values.yaml ファイル内の global キーの下に、次のグローバルパラメータを指定できます。

パラメータタイプ説明必須デフォルト再インストールが必要
tlsobjectコレクタの tls を有効にするために使用されます。「mTLS を構成する」を参照してください。いいえ
tls:
    appdCollectors:
      enabled: true
YML
いいえ
clusterNamestringUI に表示されるクラスタの名前。はいnullいいえ
clusterIdstring

クラスタの固有 ID。 

このパラメーターの値は、Kubernetes 名前空間の uid です。この値を取得するには、Kubernetes クラスターで次のコマンドを実行します。

kubectl get ns kube-system -o=jsonpath='{.metadata.uid}' 
CODE
  • Argo CD™ の使用時など、ヘルム検索がサポートされていない場合は、このパラメーターを指定する必要があります。helm templatehelm install --dry-run
  • Helm ルックアップ関数がサポートされている場合、clusterId は kube-system 名前空間から直接読み取られ、このパラメーターに指定された値は無視されます。
非対応nullはい
oauthobject

これは、エージェント管理用のコレクタをインストールするとき、および Cisco Cloud Observability への接続を確立するときに必要です。

oauth パラメータ内で次のパラメータを指定する必要があります。

  • clientId:Cisco Cloud Observability で認証するためのクライアント ID を定義する文字列値。
  • clientSecret:Cisco Cloud Observability で認証するためのシークレット文字列をプレーンテキストで定義する文字列値。
    または
    clientSecretEnvVar:Cisco Cloud Observability で認証するためのシークレット文字列を環境変数形式で定義するオブジェクトタイプ値。
  • endpoint:コレクタがデータを送信するエンドポイントを定義する文字列値。
  • tokenUrl:Cisco Cloud Observability から認証トークンを取得するための URL を定義する文字列値。
はい
oauth:
  clientId: ""
  clientSecret: ""
  endpoint: ""
  tokenUrl: ""
CODE
clientSecretEnvVar:
   valueFrom:
       secretKeyRef:
           name: ""
           key: "" 
CODE
はい
agentManagementProxyobject

これは、Cloud Observability Platform にデータを送信するプロキシがある場合にのみ必要です。

これは、エージェント管理がプロキシの背後にある場合に使用されます。


いいえ
agentManagementProxy:
    httpProxy: http://example-proxy.com
    httpsProxy: https://example-proxy.com
    noProxy:
     - http://example-dont-use-for-url1.com
     - https://example-dont-use-for-url2.com  
CODE

global.tls

↩ 親

global.tls には、Splunk AppDynamics コレクタと Cisco AppDynamics Distribution of OpenTelemetry Collector レシーバおよびエクスポータの TLS 設定が含まれます。

名前タイプ説明必須

appdCollectors

object

Splunk AppDynamics コレクタの TLS 設定(Cisco AppDynamics Distribution of OpenTelemetry Collector サービスと通信するため)。

いいえ
otelReceiverobjectotlp 受信者の TLS 設定。いいえ
otelExporterobjectotlp エクスポータの TLS 設定。いいえ

global.tls.appdCollectors

↩ 親

global.tls.appdCollectors には、Splunk AppDynamics コレクタの TLS 設定が含まれます。

名前タイプ説明必須
secretobject

Splunk AppDynamics コレクタの TLS 証明書シークレット。

いいえ
enabledboolean

Splunk AppDynamics コレクタと Cisco AppDynamics Distribution of OpenTelemetry Collector(サービス)間の通信に対して TLS を有効にします。

いいえ

global.tls.appdCollectors.secret

↩ 親

global.tls.appdCollectors.secretSplunk AppDynamics コレクタの TLS 証明書シークレットを設定します。

名前タイプ説明必須
secretNamestring証明書を保持する Kubernetes シークレットの名前。はい
secretKeysobjectTLS 証明書、鍵、CA 証明書を指定するための秘密鍵。はい

global.tls.appdCollectors.secret.secretKeys

↩ 親

global.tls.appdCollectors.secret.secretKeysSplunk AppDynamics コレクタの TLS 証明書、鍵、および CA 証明書を指定するための秘密鍵を設定します。

名前タイプ説明必須
caCertstringCA 証明書を指す Kubernetes 秘密鍵の名前。はい
tlsCertstringTLS 証明書を指す Kubernetes 秘密鍵の名前。 はい
tlsKeystringTLS キーを指す Kubernetes 秘密鍵の名前。 はい

global.tls.otelExporter

↩ 親

global.tls.otelExporter には、otlp エクスポータの TLS 設定が含まれています。

名前タイプ説明必須
secretobjectotlp エクスポータの TLS 証明書シークレット。いいえ
settingsobject

Cisco AppDynamics Distribution of OpenTelemetry Collector のクライアント TLS 設定。

いいえ

global.tls.otelExporter.secret

↩ 親

global.tls.otelExporter.secret は otlp エクスポータの TLS 証明書シークレットを構成します。 

名前タイプ説明必須
secretNamestring証明書シークレットを保持する Kubernetes シークレットの名前。はい
secretKeysobjectTLS 証明書、鍵、および認証局(CA)を指定するための秘密鍵。はい

global.tls.otelExporter.secret.secretKeys

↩ 親

global.tls.otelExporter.secret.secretKeys は otlp エクスポータの TLS 証明書、キー、および CA を指定するための秘密鍵を構成します。

名前タイプ説明必須
caCertstringCA 証明書を指す Kubernetes 秘密鍵の名前。はい
tlsCertstringTLS 証明書を指す Kubernetes 秘密鍵の名前。 はい
tlsKeystringTLS キーを指す Kubernetes 秘密鍵の名前。 はい

global.tls.otelExporter.settings

↩ 親

global.tls.otelExporter.secret.settingsCisco AppDynamics Distribution of OpenTelemetry Collector のクライアント TLS 設定を定義します。

名前タイプ説明必須
ca_filestringCA 証明書へのパス。クライアントの場合、これはサーバー証明書を検証します。サーバーの場合、これはクライアント証明書を検証します。空の場合、システムのルート CA を使用します。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
cert_filestringTLS 必須接続に使用する TLS 証明書へのパス。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
insecureboolean(デフォルト = false):エクスポータの gRPC 接続に対してクライアント トランスポート セキュリティを有効にするかどうか。grpc.WithInsecure() を参照してください。いいえ
insecure_skip_verifyboolean(デフォルト = false):TLS が有効になるように構成しますが、サーバーの証明書チェーンの検証はスキップします。insecure は TLS をまったく使用しないため、これを insecure と組み合わせることはできません。いいえ
key_filestringTLS 必須接続に使用する TLS キーへのパス。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
max_versionstring

max_version(デフォルト = "1.2"):許容される最大の TLS バージョン。

いいえ
min_versionstring

min_version(デフォルト = "1.2"):許容される最小の TLS バージョン。最小バージョンとして少なくとも 1.2 を使用することをお勧めします。

いいえ
reload_intervalstring証明書がリロードされるまでの期間を指定します。設定されていない場合、リロードされません。いいえ

global.tls.otelReceiver

↩ 親

global.tls.otelReceiver には、otlp 受信者の TLS 設定が含まれています。

名前タイプ説明必須
secretobjectotlp 受信者の TLS 証明書シークレット。いいえ
settingsobject

Cisco AppDynamics Distribution of OpenTelemetry Collector サービスのサーバー TLS 設定。

いいえ
mtlsEnabledbooleanotlp 受信者の mTLS を有効にするショートカット。true の場合、受信者はクライアントとの認証に appdynamics-otel-collector.global.tls.otelReceiver.secret.secretKeys.caCert を使用します。mTLS の有効化は、appdynamics-otel-collector.global.tls.otelReceiver.settings を直接構成して有効にすることもできます。いいえ

global.tls.otelReceiver.secret

↩ 親

global.tls.otelReceiver.secret は otlp 受信者の TLS 証明書シークレットを構成します。 

名前タイプ説明必須
secretNamestring証明書を保持する Kubernetes シークレットの名前。はい
secretKeysobjectTLS 証明書、鍵、および CA を指定するための秘密鍵。はい

global.tls.otelReceiver.secret.secretKeys

↩ 親

global.tls.otelReceiver.secret.secretKeys は otlp 受信者の TLS 証明書、鍵、および CA を指定するための秘密鍵を構成します。

名前タイプ説明必須
caCertstringCA 証明書を指す Kubernetes 秘密鍵の名前。はい
tlsCertstringTLS 証明書を指す Kubernetes 秘密鍵の名前。 はい
tlsKeystringTLS キーを指す Kubernetes 秘密鍵の名前。 はい

global.tls.otelReceiver.settings

↩ 親

global.tls.otelReceiver.secret.settingsCisco AppDynamics Distribution of OpenTelemetry Collector サービスのサーバー TLS 設定を定義します。

名前タイプ説明必須
ca_filestringCA へのパス。クライアントの場合、これはサーバー証明書を検証します。サーバーの場合、これはクライアント証明書を検証します。空の場合、システムのルート CA を使用します。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
cert_filestringTLS 必須接続に使用する TLS 証明書へのパス。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
client_ca_filestringサーバーがクライアント証明書を検証するために使用する TLS 証明書へのパス。(オプション)これにより、TLSConfig で ClientCA と ClientAuth が RequireAndVerifyClientCert に設定されます。詳細については、https://godoc.org/crypto/tls#Config を参照してくださいいいえ
key_filestringTLS 必須接続に使用する TLS キーへのパス。[insecure] が false に設定されている場合にのみ使用する必要があります。いいえ
max_versionstring

max_version(デフォルト = "1.2"):許容される最大の TLS バージョン。

いいえ
min_versionstring

min_version(デフォルト = "1.2"):許容される最小の TLS バージョン。最小バージョンとして少なくとも 1.2 を使用することをお勧めします。

いいえ
reload_intervalstring証明書がリロードされるまでの期間を指定します。設定されていない場合、リロードされません。いいえ

mTLS を構成する

appdynamics-otel-collectormTLS がクラスタ内の appdynamics-collectors と通信するように設定できます。cert-manager を使用して、必要な証明書秘密を作成できます。

cert-manager を使用している場合は、次の手順を実行します。

  1. まだインストールされていない場合は、cert-manager をインストールします。

    kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.8.0/cert-manager.yaml
    CODE
  2. 以下の例に従って cert.yaml を作成します。このファイルは、コレクタの構成中に指定された server-cert 証明書と client-cert 証明書を作成するための構成を提供します。

    cert.yaml

    apiVersion: cert-manager.io/v1
    kind: ClusterIssuer
    metadata:
      name: selfsigned-issuer
    spec:
      selfSigned: {}
    ---
    apiVersion: cert-manager.io/v1
    kind: Certificate
    metadata:
      name: my-selfsigned-ca
      namespace: appdynamics
    spec:
      isCA: true
      commonName: my-selfsigned-ca
      secretName: root-secret
      privateKey:
        algorithm: ECDSA
        size: 256
      issuerRef:
        name: selfsigned-issuer
        kind: ClusterIssuer
        group: cert-manager.io
    ---
    apiVersion: cert-manager.io/v1
    kind: Issuer
    metadata:
      name: ca-cert
      namespace: appdynamics
    spec:
      ca:
        secretName: root-secret
    ---
    apiVersion: cert-manager.io/v1
    kind: Certificate
    metadata:
      name: server-cert
      namespace: appdynamics
    spec:
      secretName: server-secret
      issuerRef:
        name: ca-cert
        kind: Issuer
      commonName: clustermon-service
      dnsNames:
        - appdynamics-otel-collector-service
        - appdynamics-otel-collector-service.appdynamics.svc.cluster.local
    ---
    apiVersion: cert-manager.io/v1
    kind: Certificate
    metadata:
      name: client-cert
      namespace: appdynamics
    spec:
      secretName: client-secret
      issuerRef:
        name: ca-cert
        kind: Issuer
      commonName: client
    YML
  3. cert-manager リソースをデプロイします。

    create certs

    kubectl apply -f cert.yaml
    BASH

    これにより、サーバーとクライアントの Kubernetes® 秘密として、秘密名 server-secretclient-secret を使用して appdynamics 名前空間に証明書が作成されます。

  4. collectors-values.yaml でこれらの値を構成として使用して証明書をマウントし、mTLS に使用します。

    tls configuration

    global:
      clusterName: <cluster-name>
      tls:
        appdCollectors:
          enabled: true
          secret:
            secretName: client-secret
            secretKeys:
              caCert: ca.crt
              tlsCert: tls.crt
              tlsKey: tls.key
        otelReceiver:
          mtlsEnabled: true
          secret:
            secretName: server-secret
            secretKeys:
              caCert: ca.crt
              tlsCert: tls.crt
              tlsKey: tls.key
          settings:
            min_version: 1.2
            max_version: 1.3
    
    YML

    TLS のみを使用している場合は、otelReceiver パラメータから mtlsEnabled: true を削除します。

    以下は、アクセスキー情報を含むサンプル collectors-values.yaml ファイルです。

    collectors-values.yaml

    global:
      clusterName: <cluster-name>
      tls:
        appdCollectors:
          enabled: true
          secret:
            secretName: client-secret
            secretKeys:
              caCert: ca.crt
              tlsCert: tls.crt
              tlsKey: tls.key
        otelReceiver:
          mtlsEnabled: true
          secret:
            secretName: server-secret
            secretKeys:
              caCert: ca.crt
              tlsCert: tls.crt
              tlsKey: tls.key
          settings:
            min_version: 1.2
            max_version: 1.3  
    
    # can be obtained from the onboarding page
    appdynamics-otel-collector:
      clientId: <id>
      clientSecret: <oauth-client-secret>
      tokenUrl: <token-url>
      endpoint: <endpoint>
    
    YML
  5. 上記の collectors-values.yaml ファイルを使用して Splunk AppDynamics コレクタをインストールしますInstall Kubernetes and App Service Monitoring」を参照してください。


Trademark Disclaimer for OpenTelemetry and Kubernetes

This page has not yet been translated to Japanese.

これらの資料で使用されているサードパーティの名前、ロゴ、マーク、および一般的な参照情報は、米国および/またはその他の国のそれぞれの所有者またはその関係会社の所有物です。このような参照情報の記載は、情報提供のみを目的としており、Splunk AppDynamics とサードパーティの関係を促進または示唆することを意図したものではありません。