Skip to content

Kafka Load Generator for JSON, Avro and Protobuf, built on top of Aiven services leveraging AWS. Easily extensible with to add new data types. Swagger interface for easy testing and interface to most languages.

Notifications You must be signed in to change notification settings

JohnRTurner/kafka-executor

Repository files navigation

Kafka Executor

Description

This customizable load generator will create Kafka workload both with producers and/or consumers. Features include controllable parallel execution of different workloads, and adjustment of many Kafka parameters. There is a Swagger front end that can be used to integrate with many programming languages such as React, Angular, Python... JMeter or siege could be used to run and monitor via http calls.

Architecture

Architecture

Terraform

The easiest way to build everything is to use the terraform scripts. The documentation

Kafka

The star of the show; it's what we are testing to see how it performs with various producers and consumers.

Thanos

Store the performance statistics using Thanos so that we can measure the tests.

Grafana

displays dashboards to see the Thanos data. The dashboards are automatically pushed to Grafana. More Information here.

Cloud instance(s)

The project uses docker-compose to create dockers for the following components.

  • nginx - The nginx docker provides password protection and serves the React front-end web pages and proxies the JAVA Web Services.

  • executor - The executor docker is the JAVA Spring Boot application that executes the

  • node-exporter - The node-exporter captures the machines statistics and sends to prometheus.

  • prometheus - The prometheus docker pulls data from node-exporter and from the executor, forwarding the data to Thanos.

About

Kafka Load Generator for JSON, Avro and Protobuf, built on top of Aiven services leveraging AWS. Easily extensible with to add new data types. Swagger interface for easy testing and interface to most languages.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published