Enabling Analytics ingestion-only on Kubernetes

Enable the ingestion-only configuration by redeploying the IBM® API Connect Analytics subsystem with the ingestion-only configuration setting.

Before you begin

Only complete this task if you want to offload all analytics data and disable the Analytics feature in the user interface. If you want to retain the data or allow users to access the Analytics user interface, skip this task and instead see Configuring analytics offload for API Connect.

About this task

If you choose to offload all analytics data to third-party services and have no need to retain the data in API Connect, you can configure the Analytics service with the ingestion-only setting. If you offload data and then separately disable the Analytics UI, the associated components are still deployed and require system resources. Configuring Analytics for ingestion-only removes unused Analytics components (such as analytics-storage and analytics-client) from the topology and only deploys the components required for offloading data (such as analytics-ingestion and analytics-mq-kafka). The reduced topology requires less CPU, memory, and storage.

Procedure

  1. Remove the Analytics service from your API Connect deployment by completing the following steps.
    1. Unassociate the Analytics service from all gateway services as explained in step 7 in the topic, Associating an analytics service with a gateway service.
    2. Unregister the Analytics service from Cloud Manager.

      You can unregister the service from the Topology page: click the Options menu next to the service name and select Delete. For information on registering services, see Registering an analytics service.

  2. Create an extra values file to specify the URL of the offload endpoint where all analytics data will be routed.

    You can choose the name for the file, but you must use .yaml as the file-name extension. Format the file as shown in the following example, making sure to include required settings for the third-party system.

    apic-analytics-ingestion:
      outputOffload: |-
          elasticsearch {
            hosts => "http://offload_endpoint:port"
            index => "api-call"
          }
    

    For information about configuring analytics offloading, see Configuring analytics offload for API Connect.

  3. Run the following apicup commands to reinstall the Analytics subsystem using the configuration settings in the extra values file:
    apicup subsys set analyt ingestion-only=true
    apicup subsys set analyt extra-values-file=extra-values.yaml
    apicup subsys install analyt
  4. Add the new Analytics service to your API Connect deployment by completing the following steps.
    1. Register the new Analytics service with the Cloud Manager.
      Attention: When you register an Analytics service that is configured for ingestion-only, you must use the ingestion endpoint and the ingestion TLS profile instead of the client endpoint and TLS profile.

      For information on registering a service with the Cloud Manager, see Registering an analytics service.

    2. Associate the Analytics service with a gateway service as explained in Associating an analytics service with a gateway service.

Results

All analytics data is routed directly to the offloading endpoint, the Analytics UI is disabled, and no data is retained in API Connect.

In addition, the following Analytics configuration settings will not be validated or used when ingestion-only is set to enabled:

  • coordinating-max-memory-gb
  • data-max-memory-gb
  • data-storage-size-gb
  • master-max-memory-gb
  • master-storage-size-gb
  • analytics-client
  • es-storage-class