This repository contains a playground for learning stream processin via Flink.
This playground contains the following:
- zookeeper
- kafka broker
- confluent schema registry
- confluent control center
- kafka rest proxy
- battle.net server emulator (generates test events)
- prometheus
- grafana
- flink
To run the platform do the following:
- create a docket network by running
init.sh
. This is a shared network for three different docker compose files. - start confluent platform:
cd confluent; docker-compose up -d; cd..;
- start prometheus and grafana:
cd prometheus-grafana; docker-compose up -d; cd ..;
- start flink:
cd flink; docker-compose up -d; cd ..;
Useful links:
- Flink UI: http://localhost:7001
- Confluent Control Center: http://localhost:9021
- Grafana: http://localhost:3000
- Prometheus UI: http://localhost:9090
In case you would like to run eveyrthing without docker, you can do the following.
- Download confluent platform archive from https://packages.confluent.io/archive/7.0/confluent-7.0.1.tar.gz
- Unpack the archive to an appropriate place
- Following instructions from this link
export CONFLUENT_HOME=<WHENEVER_PATH_YOU_EXTRACTED_PACKAGE_TO>
export PATH=$PATH:$CONFLUENT_HOME/bin
confluent local services control-center start
- Download battle net emulator universal package from this link
- Unpack the emulator and run the binary by running
./bin/battlenet_emulator
On mac I recommend following these instructions and install minio from homebrew.
Can be downloaded from offitial distribution started with ./bin/start-cluster.sh