Confluent Cloud

Kpow works out of the box with Confluent Cloud, simply follow our Kafka cluster configuration documentation to get started.

Extra configuration is required to display disk information related to your clusters, or to monitor multiple Confluent Cloud clusters that share the same bootstrap url.

Confluent Cloud Metrics API integration

Kpow retrieves the following information via the Confluent Metrics API.

  • Broker disk information (io.confluent.kafka.server/retained_bytes)
  • Active connection count (io.confluent.kafka.server/active_connection_count)

Kpow requires this integration to show disk information (both topic and broker) as Confluent Cloud does not support the Kafka AdminClient function that normally returns this data.

Create a Cloud API Key

To enable this integration, first create a new API key in Confluent Cloud.

Please Note: From the Confluent Cloud Metrics documentation:

You must use a Cloud API Key to communicate with the Metrics API. Using the Cluster API Key that is used to communicate with Kafka causes an authentication error.

Next, add these additional environment variables to your Kpow's deployment:


Kpow will now collect telemetry about your Confluent Cloud cluster using the Metrics API. Once configured disk metrics/stats will start appearing in Kpow's UI.

Confluent Cloud metrics will also be available via Kpow's Prometheus integration.

API limitations

Confluent Cloud's metrics API has the following limitations:

  • Maximum of 50 requests per minute per IP address
  • Maximum of 1000 results returned per metrics query

By default, Kpow will scrape disk information for all topic partitions. Given Confluent Cloud's imposed limitations it may not be feasible to query at a topic-partition granularity. For example, if you have over 50, 000 partitions in your cluster, you will exceed the imposed rate limiting.

Because of these limitations, telemetry gathered using Confluent Cloud's metrics API will not be available when in Live mode.



To get around the API limitations imposed by Confluent Cloud's metrics API, Kpow has an additional environment variable: CONFLUENT_DISK_MODE.

Currently, two modes are supported:

  • COMPLETE (default): data is queried at a topic-partition granularity, all replica disk information is complete.
  • INFERRED: data is queried at a topic granularity. Topic-partition replica disk information is estimated based on other Kpow telemetry (number of messages in partition, average size of record, etc). Replica disk information at a topic granularity is complete.

If you are bumping up against any of the Confluent Cloud API limitations, it is recommended to set CONFLUENT_DISK_MODE=INFERRED if you are comfortable with the topic-partition replica disk data being estimated.


If you are using the self-managed Confluent Platform, you can set CONFLUENT_METRICS_URL=https://my-metrics-endpoint.

The default metrics endpoint is


Specifies the number of parallel HTTP requests made to the Metrics API when collecting disk telemetry. Defaults to 8.

Multi-tenant Confluent Cloud

To connect to two clusters that share the same BOOTSTRAP , but are accessed with different auth credentials, provide a unique CLUSTER_ID environment variable for each cluster definition, for example:
SASL_MECHANISM=PLAIN required username="user-1" password="pass-1";
SASL_MECHANISM_2=PLAIN required username="user-2" password="pass-2";

Note: the CLUSTER_ID environment variable must be unique across all clusters defined in Kpow, and can be any unique identifier (eg, the string confluent-cloud-stage)