Giter Site home page Giter Site logo

kafka-single-node-cluster-docker's Introduction

Kafka Cluster on Docker

This is an automated solution for Kafka Single-Node Cluster (docker container) + Prometheus monitoring created through Vagrant and Ansible. Follow the steps below:

  • clone the repository;
  • open the directory in terminal;
  • execute the command vagrant up;
  • wait until the environment is ready.

Requirements:

Cluster Details

The architecture of the cluster looks like: general setup

You can find detailed information about the boxes that I have used here - https://app.vagrantup.com/merev.

Environment Information

The operating system installed on the hosts is Debian 11. Each VM has 2 GB RAM, 2 CPUs, and 60 GB disk space. The hardware parameters can be adjusted before provisioning in the config.vm.provider block of the Vagrantfile. The firewall is disabled. Every node has 2 network interfaces:

  • 1 NIC in NAT Mode - connected to the host machine;
  • 1 NIC in Host-Only Mode - connected to a separate virtual network for isolated communication between the VMs. (Cluster Network)

Kafka Cluster Information

Kafka Single-Node Cluster is started on a docker host. There are two containers:

  • Zookeeper Container
  • Broker Container The configuration of the containers can be found here -

Monitoring and Configuration Management Information

The Docker and Ansible hosts are part of the same network and have the same parameters as the other VMs. Ansible is installed on the Ansible host and Prometheus Server and Grafana are started in containers. They are configured to manage and monitor the entire environment.

Initial Configuration

The initial configuration of the cluster contains the following actions:

  • Kafka Cluster Initialization;
  • Ansible Host Configuration;
  • Prometheus and Grafana Installation.

kafka-single-node-cluster-docker's People

Contributors

merev avatar

Watchers

 avatar

Forkers

zdravkov02

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.