Citrix ADC ingress controller

ConfigMap を使用した分析設定のサポート

Citrix Observability Exporterを使用して 、Citrix ADC CPX、MPX、またはVPXからメトリックとトランザクションをエクスポートし、エクスポートされたデータを分析して意味のあるインサイトを得ることができます。Citrix 監視性エクスポーターのサポートは、Citrix Ingress Controller 構成でで有効になっています。ConfigMap を使用して、Citrix Ingress Controllerでの Citrix オブザーバビリティエクスポーターの構成を有効にできるようになりました

ConfigMap を使用した分析構成でサポートされる環境変数

ConfigMapの使用では、NS_ANALYTICS_CONFIGの次のパラメータを設定できます。

  • distributed_tracing:この変数は、Citrix ADC でOpenTracingを有効または無効にし、次の属性を持ちます。

    • enable: OpenTracingを有効にするには、 この値をtrueに設定します。デフォルト値はfalseです。
    • samplingrate: OpenTracing のサンプリングレートをパーセンテージで指定します。デフォルト値は 100 です。
  • endpoint:分析サーバの IP アドレスまたは DNS アドレスを指定します。

    • server:この値をサーバの IP アドレスまたは DNS アドレスとして設定します。
    • service:サービスが仮想マシンで実行されているか、Kubernetesサービスとして実行されているかに応じて、Citrix ADC監視可能性エクスポータサービスのIPアドレスまたはサービス名を指定します。 Citrix ADC Observability Exporterインスタンスが仮想マシンで実行されている場合、このパラメータはIPアドレスを指定します。Citrix ADC Observability ExporterインスタンスがKubernetesクラスターでサービスとして実行されている場合、このパラメーターはインスタンスを名前空間/サービス名として指定します。
  • timeseries:Citrix ADC からの時系列データのエクスポートを有効にします。時系列構成には、次の属性を指定できます。

    • port:分析サーバーの時系列エンドポイントのポート番号を指定します。デフォルト値は5563です。
    • metrics:Citrix ADC からのメトリックのエクスポートを有効にします。
      • enable:メトリクスの送信を有効にするには、この値をtrueに設定します。デフォルト値はfalseです。
      • mode: メトリックエンドポイントのモードを指定します。デフォルト値は avroです。
    • auditlogs:Citrix ADC からの監査ログデータのエクスポートを有効にします。
      • enable: 監査ログデータを有効にするには、この値をtrueに設定します。デフォルト値はfalseです。
    • events:Citrix ADC からのイベントのエクスポートを有効にします。
      • enable: イベントのエクスポートを有効にするには、この値をtrueに設定します。デフォルト値はfalseです。
  • transactions:Citrix ADC からのトランザクションのエクスポートを有効にします。

    • enable: トランザクションの送信を有効にするには、この値をtrueに設定します。デフォルト値はfalseです。
    • port:Analytics Server のトランザクションエンドポイントのポート番号を指定します。デフォルト値は 5557 です。

Citrix Ingress Controller 実行中は次の構成を変更できないため、これらの設定を適用するにはCitrix Ingress Controller を再起動する必要があります。

  • サーバー構成 (エンドポイント)
  • ポート構成 (時系列)
  • ポート構成 (トランザクション)

Citrix Ingress Controller 実行中に、実行時に他の ConfigMap 設定を変更できます。

注:

ユーザーがサービスの値をnamespace/service nameとして指定すると、Citrix Ingress Controllerはそのサービスに関連付けられたエンドポイントを取得し、Citrix Tier-1 ADCのトランザクションサービスグループに動的にバインドします。ユーザーがサービスの値を IP アドレスとして指定すると、その IP アドレスはトランザクションサービスグループに直接バインドされます。Citrix Ingress Controllerは、デフォルトのWebまたはTCPベースの分析プロファイルを作成し、それらをロギング仮想サーバーにバインドするように拡張されました。Citrix ADC Observability Exporterがクラスターで有効になっている場合、デフォルトの分析プロファイルはアプリケーションのすべての負荷分散仮想サーバーにバインドされます。ユーザーが分析プロファイルを変更する場合は、 analyticsprofile 注釈を使用できます。

NS_ANALYTICS_CONFIGの属性は、明確に定義されたスキーマに従う必要があります。指定された値のいずれかがスキーマと一致しない場合、設定全体が拒否されます。詳細については、スキーマファイル ns_analytics_config_schema.yamlを参照してください。

アナリティクス用の ConfigMap 設定を作成する

このトピックでは、ConfigMap for Analytics 設定の作成方法について説明します。

ConfigMapに必要なキーと値のペアを含む YAML ファイルcic-configmap.yamlを作成します。

  apiVersion: v1
  kind: ConfigMap
  metadata:
    name: cic-configmap
    labels:
      app: citrix-ingress-controller
  data:
    LOGLEVEL: 'info'
    NS_PROTOCOL: 'http'
    NS_PORT: '80'
    NS_HTTP2_SERVER_SIDE: 'ON'
    NS_ANALYTICS_CONFIG: |
      distributed_tracing:
        enable: 'false'
        samplingrate: 100
      endpoint:
        server: '1.1.1.1'
        service: 'default/coe-kafka'
      timeseries:
        port: 5563
        metrics:
          enable: 'false'
          mode: 'avro'
        auditlogs:
          enable: 'false'
        events:
          enable: 'false'
      transactions:
        enable: 'true'
        port: 5557

Citrix Ingress Controllerで ConfigMap サポートを構成する方法について詳しくは、「Citrix Ingress Controller の ConfigMap サポートの構成」を参照してください

NS_ANALYTICS のスキーマ

NS_ANALYTICS_CONFIGのスキーマを次に示します。属性はこのスキーマで確認する必要があります。

type: map
mapping:
  NS_ANALYTICS_CONFIG:
    required: no
    type: map
    mapping:
      endpoint:
        required: yes
        type: map
        mapping:
          server:
            required: yes
            type: str
      distributed_tracing:
        required: no
        type: map
        mapping:
          enable:
            required: yes
            type: str
            enum:
              - 'true'
              - 'false'
          samplingrate:
            required: no
            type: int
            range:
              max: 100
              min: 0
      timeseries:
        required: no
        type: map
        mapping:
          port:
            required: no
            type: int
          metrics:
            required: no
            type: map
            mapping:
              enable:
                required: yes
                type: str
                enum:
                  - 'true'
                  - 'false'
              mode:
                required: yes
                type: str
                enum:
                  - prometheus
                  - avro
                  - influx
          auditlogs:
            required: no
            type: map
            mapping:
              enable:
                required: yes
                type: str
                enum:
                  - 'true'
                  - 'false'
          events:
            required: no
            type: map
            mapping:
              enable:
                required: yes
                type: str
                enum:
                  - 'true'
                  - 'false'
      transactions:
        required: no
        type: map
        mapping:
          enable:
            required: yes
            type: str
            enum:
              - 'true'
              - 'false'
          port:
            required: no
            type: int
ConfigMap を使用した分析設定のサポート