From fef26208d8b7864f280beabc5c05a1330e27a065 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6ren=20Henning?= <soeren.henning@email.uni-kiel.de> Date: Fri, 3 Dec 2021 15:09:50 +0100 Subject: [PATCH] Add starting docs for docker tests --- theodolite-benchmarks/docker-test/README.md | 38 +++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 theodolite-benchmarks/docker-test/README.md diff --git a/theodolite-benchmarks/docker-test/README.md b/theodolite-benchmarks/docker-test/README.md new file mode 100644 index 000000000..fd1e9bf47 --- /dev/null +++ b/theodolite-benchmarks/docker-test/README.md @@ -0,0 +1,38 @@ +# Docker Compose Files for Testing + +This directory contains Docker Compose files, which help testing Benchmark implementations. +For each stream processing engine (Kafka Streams and Flink) and Benchmark (UC1-4), a Docker Compose file is provided +in the corresponding subdirectory. + +## Full Dockerized Testing + +Running the load generator, the benchmark and all required infrastructure (Kafka etc.) is easy. Simply, `cd` into the +directory of the benchmark implementation Compose file and *up* it. +For example: + +```sh +cd uc1-kstreams-docker-compose/ +docker-compose up -d +``` + +On less powerful hardware, starting all containers together might fail. In such cases, it usually helps to first *up* +Kafka and ZooKeeper (`docker-compose up -d kafka zookeeper`), then after some delay the Schema Registry +(`docker-compose up -d schema-registry`) and finally, after some more further delay, the rest (`docker-compose up -d`). + +To tear down the entire Docker Compose configuration: + +```sh +docker-compose down +``` + +## Benchmark (+ Load Generator) on Host, Infrastructure in Docker + +For development and debugging purposes, it is often required to run the benchmark and/or the load generator directly on +the host, for example, from the IDE or Gradle. In such cases, the following adjustments have to be made to the +`docker-compose.yaml` file: + +1. Comment out the services that you intend to run locally. +2. Uncomment the `ports` block in the Kafka and the Schema Registry services. + +You can now connect to Kafka from your host system with bootstrap server `localhost:19092` and contact the Schema +Registry via `localhost:8081`. **Pay attention to the Kafka port, which is *19092* instead of the default one *9092*.** -- GitLab