Skip to content

Latest commit

History

History

jmxexporter-prometheus-grafana

Prometheus and Grafana stack

  • Prometheus version: 2.47.2
  • Grafana version 10.2.0

List of provided dashboards:


Note

Consumer Group Lag

Starting with CP 7.5, brokers expose JMX tenant-metrics for consumer lags, see the documentation.

Consequently, you can either go with the kafka-lag-exporter or with the broker built-in tenant metrics. For the later one, you need to enable it by setting confluent.consumer.lag.emitter.enabled = true in the broker configuration, see the documentation.

This repository contains both options:

  • Dedicated Kafka lag exporter dashboard
  • Consumer lag visualizations within the consumer dashboard

Confluent Platform overview

Confluent Platform overview

Zookeeper cluster

Zookeeper cluster dashboard

Kafka cluster

Kafka cluster dashboard 0 Kafka cluster dashboard 1

As an alternative, it is also available a definition file to collect only metrics with value at 99th percentile.

Kafka topics

Kafka topics

Kafka clients

Kafka Producer

Kafka Consumer

As an alternative, it is also available a definition file to collect only a limited number of metrics for clients clients - reduced.

Kafka quotas

For Kafka to output quota metrics, at least one quota configuration is necessary.

A quota can be configured from the cp-demo folder using docker-compose:

docker-compose exec kafka1 kafka-configs --bootstrap-server kafka1:12091 --alter --add-config 'producer_byte_rate=10000,consumer_byte_rate=30000,request_percentage=0.2' --entity-type users --entity-name unknown --entity-type clients --entity-name unknown

Kafka quotas

Kafka Lag Exporter

kafkalagexporter

Kafka Transaction Coordinator

kafkalagexporter

Schema Registry cluster

Schema Registry cluster

Kafka Connect cluster

Kafka Connect cluster dashboard 0 Kafka Connect cluster dashboard 1

ksqlDB cluster

ksqlDB cluster dashboard 0 ksqlDB cluster dashboard 1

Kafka streams

Kafka streams dashboard 0

Kafka streams RocksDB

kafkastreams-rocksdb 0

Oracle CDC source Connector

Demo is based on https://github.com/vdesabou/kafka-docker-playground/tree/master/connect/connect-cdc-oracle19-source

To test run playground example using option --enable-jmx-grafana

oraclecdc

Cluster Linking

Demo is based on https://github.com/confluentinc/demo-scene/tree/master/cluster-linking-disaster-recovery

To test follow the next steps:

  1. Set env:
MONITORING_STACK=jmxexporter-prometheus-grafana
  1. Clone demo cluster linking disaster recovery from confluentinc/demo-scene:
   [[ -d "clink-demo" ]] || git clone [email protected]:confluentinc/demo-scene.git clink-demo
   (cd clink-demo && git fetch && git pull)
  1. Start the monitoring solution with the STACK selected. This command also starts clink-demo, you do not need to start clink-demo separately.
${MONITORING_STACK}/cluster-linking/start.sh
  1. Stop the monitoring solution. This command also stops clink-demo, you do not need to stop clink-demo separately.
${MONITORING_STACK}/cluster-linking/stop.sh

clusterlinking

Rest Proxy

restproxy

KRaft

To test follow the next steps:

  1. Start dev-toolkit with
$ cd dev-toolkit
$ start.sh

kraft1 kraft2

Confluent RBAC

rbac

Replicator

To test follow the next steps:

  1. Start dev-toolkit with replicator profile
$ cd dev-toolkit
$ start.sh --profile replicator

replicator replicator

Tiered Storage

tiered-storage