NetScaler Observability Exporter と Splunk Enterprise をエンドポイントとして

最終公開日 : Oct 02, 2026
NetScaler Observability Exporter は、NetScaler からメトリクスとトランザクションを収集し、さまざまなエンドポイントにデータを送信するコンテナです。NetScaler Observability Exporter は、Splunk Enterprise をエンドポイントとしてサポートしています。
Splunk Enterprise は、機械生成されたビッグデータを検索、監視、分析するためのデータプラットフォームです。Splunk Enterprise は、リポジトリ内のリアルタイムデータをキャプチャ、インデックス化、関連付けし、そこからレポート、グラフ、ダッシュボード、視覚化を生成できます。
分析のために、NetScaler からの監査ログ、イベント、トランザクションを受信するエンドポイントとして Splunk Enterprise を追加できます。Splunk Enterprise は、これらのデータのグラフィカルな表現を提供します。Splunk Enterprise に送信するトランザクション、イベント、監査ログの種類を有効または無効にできます。

NetScaler Observability Exporter を展開する

YAML ファイルを使用して NetScaler Observability Exporter を展開できます。NetScaler の展開に応じて、NetScaler Observability Exporter を Kubernetes クラスターの外部または内部に展開できます。NetScaler Observability Exporter を Kubernetes クラスター内のポッドとして、またはクラスター外の NetScaler MPX または VPX アプライアンスに展開できます。
次の図は、NetScaler を Ingress Gateway として、NetScaler Ingress Controller と NetScaler Observability Exporter をサイドカーとして示しています。NetScaler Observability Exporter は、NetScaler アプリケーションのメトリクスとトランザクションデータを Splunk Enterprise に送信します。Splunk Enterprise は、データのグラフィカルな表現を提供します。
COE Splunk Enterprise アーキテクチャ

前提条件

  • kube-dns または CoreDNS アドオンが有効になっている Kubernetes クラスターがあることを確認してください。
注:
以下の手順では、YAML ファイルを使用して Kubernetes の defauIt 名前空間に NetScaler Observability Exporter を展開します。default 以外のプライベート名前空間に展開する場合は、YAML ファイルを編集して名前空間を指定してください。
NetScaler Observability Exporter を展開するには、次の手順を実行します。
注:
Web アプリケーションがすでに展開されている場合は、手順 1 と 2 をスキップしてください。
  1. 独自の証明書とキーを使用して、シークレットingress.crtとキーingress.keyを作成します。
    この例では、デフォルトの名前空間でingという名前のシークレットが作成されます。
    kubectl create secret tls ing --cert=ingress.crt --key=ingress.key
  2. webserver-splunk.yamlからYAMLファイルにアクセスして、アプリケーションをデプロイします。
    kubectl create -f webserver-splunk.yaml
  3. アプリケーションのYAMLファイルのイングレスアノテーションで指定することにより、イングレスのスマートアノテーションを使用して、インポートする必要がある特定のパラメーターを定義します。
    ingress.citrix.com/analyticsprofile: '{"webinsight": {"httpurl":"ENABLED", "httpuseragent":"ENABLED", "httpHost":"ENABLED","httpMethod":"ENABLED","httpContentType":"ENABLED"}}'
    注:
    パラメーターはwebserver-splunk.yamlファイルで事前定義されています。
    アノテーションの詳細については、Ingress annotations documentationを参照してください。

NetScaler Observability Exporterのサポートを使用してNetScaler CPXをデプロイする

NetScaler Ingress ControllerとともにNetScaler Observability Exporterのサポートを有効にして、NetScaler CPXをサイドカーとしてデプロイできます。NetScaler Observability Exporterのサポートに必要な構成情報を含めるように、NetScaler CPX YAMLファイルcpx-ingress-splunk.yamlを変更できます。
以下は、アプリケーションのデプロイ手順の例です。
  1. cpx-ingress-splunk.yamlとcic-configmap.yamlファイルをダウンロードします。
  2. 必要なキーと値のペアを持つConfigMapを作成し、ConfigMapをデプロイします。特定のエンドポイントに対してdirectoryで利用可能なcic-configmap.yamlファイルを使用できます。
  3. 必要に応じて、NetScaler CPX関連のパラメーターを変更します。
  4. cic-configmap.yamlファイルを編集し、NS_ANALYTICS_CONFIGエンドポイント構成でNetScaler Observability Exporterの以下の変数を指定します。
    server: 'coe-splunk.default.svc.cluster.local' # COE service FQDN
    注:
    default 以外の名前空間を使用している場合は、coe-splunk.default.svc.cluster.local to を coe-splunk.<desired-namespace>.svc.cluster.local に変更します。NetScaler が Kubernetes クラスターの外部にある場合は、NetScaler Observability Exporter の IP アドレスとノードポートアドレスを指定する必要があります。
  5. 以下のコマンドを使用して、NetScaler Observability Exporter をサポートする NetScaler CPX を展開します。
    kubectl create -f cpx-ingress-splunk.yaml
    kubectl create -f cic-configmap.yaml

YAML ファイルを使用して NetScaler Observability Exporter を展開する

YAML ファイルを使用して NetScaler Observability Exporter を展開できます。coe-splunk.yaml から YAML ファイルをダウンロードします。coe-splunk.yaml ファイルを編集して、適切な名前空間の Splunk サーバーアドレスを指定してください。
以下は、coe-splunk.yaml ファイルの lstreamd_default.conf セクションで ServerUrl を指定する方法の例です。ここで、ServerUrl は Splunk サーバーのアドレスを意味します。
lstreamd_default.conf: |
{
  "Endpoints": {
    "SPLUNK": {
      "ServerUrl": "http://10.102.34.155:8088",
      "AuthToken": "",
      "Index": "",
      "RecordType": {
        "HTTP": "all",
        "TCP": "all",
        "SWG": "all",
        "VPN": "all",
        "NGS": "all",
        "ICA®": "all",
        "APPFW": "none",
        "BOT": "all",
        "VIDEOOPT": "none",
        "BURST_CQA": "none",
        "SLA": "none",
        "MONGO": "none"
      },
      "TimeSeries": {
        "EVENTS": "yes",
        "AUDITLOGS": "yes"
      },
      "ProcessAlways": "no",
      "ProcessYieldTimeOut": "500",
      "MaxConnections": "512",
      "JsonFileDump": "no"
    }
  }
}
注:
YAML ファイルを使用して NetScaler Observability Exporter を展開する際、Splunk サーバーアドレスに加えて、Splunk Enterprise でデータを送信する Index 名を指定できます。デフォルトでは、この IndexPrefix オプションは空であり、データは Splunk Enterprise のデフォルトインデックスである main にアップロードされます。
Kubernetes YAML を使用して NetScaler Observability Exporter を展開するには、Splunk Enterprise エンドポイントで次のコマンドを実行します。
kubectl create -f coe-splunk.yaml
注:
カスタム名前空間を使用している場合は、NetScaler Observability Exporter の YAML ファイルを変更してください。

NetScaler Observability Exporter の展開を検証する

NetScaler Observability Exporter、Web アプリケーション、NetScaler CPX、および NetScaler Ingress Controller を展開した後、展開を検証できます。
展開を検証するには、次の手順を実行します。
  1. 以下のコマンドを使用して展開を検証します。
    kubectl get deployment,pods,svc -o wide
  2. URL を使用してブラウザでアプリケーションにアクセスします。 例:
    https://kubernetes-node-IP:cpx-ingress-splunk nodeport/
  3. URLを使用してブラウザでSplunkサーバーにアクセスします。 例:
    https://splunk-node-IP:splunk nodeport/検証出力

Splunk 用の事前構築済みダッシュボードをインポートする

NetScaler が提供する事前構築済みの Splunk ダッシュボードをインポートできます。ダッシュボードをインポートするための JSON ファイルは、GitHub リポジトリ で入手できます。これらのダッシュボードでは、インスタンス IP アドレス、アプリケーション名、クライアントおよびサーバー IP アドレスなどのパラメータに基づいてトランザクションをフィルタリングするオプションが提供されます。
以下はHTTPダッシュボードのサンプルです。このダッシュボードには、HTTPヘッダーベースのチャート、トランザクション遅延、応答タイプ分布などのデータが表示されます。
HTTPダッシュボード
以下は、Splunk用のTCPダッシュボードの例です。このダッシュボードには、アプリケーションごとの帯域幅分布、TCPジッター、クライアントおよびサーバーのRTTなどのデータが表示されます。
TCPダッシュボード(/en-us/netscaler-observability-exporter/media/splunk-tcp-dashboard.jpeg)