X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=README.sh;h=6dbc9d99715a911fb5d9c54a5ab74a97dd1cd074;hb=refs%2Fheads%2Frebalance-listener;hp=900270adcaaca6746b8e4a6ecb34b5427091c74f;hpb=e87f4bb2bc188252955fb4932ddd99161ba621d3;p=demos%2Fkafka%2Ftraining diff --git a/README.sh b/README.sh index 900270a..6dbc9d9 100755 --- a/README.sh +++ b/README.sh @@ -9,6 +9,7 @@ then exit fi +docker-compose stop producer consumer docker-compose up -d zookeeper kafka cli if [[ @@ -16,7 +17,8 @@ if [[ "$1" = "build" ]] then - mvn install || exit + docker-compose rm -svf consumer + mvn clean install || exit else echo "Using image existing images:" docker image ls $IMAGE @@ -24,8 +26,60 @@ fi echo "Waiting for the Kafka-Cluster to become ready..." docker-compose exec cli cub kafka-ready -b kafka:9092 1 60 > /dev/null 2>&1 || exit 1 -docker-compose up setup + +docker-compose exec -T cli bash << 'EOF' +echo "Creating topic with 3 partitions..." +kafka-topics --bootstrap-server kafka:9092 --delete --if-exists --topic test +# tag::createtopic[] +kafka-topics --bootstrap-server kafka:9092 --create --topic test --partitions 3 +# end::createtopic[] +kafka-topics --bootstrap-server kafka:9092 --describe --topic test +EOF + docker-compose up -d producer consumer -sleep 15 -docker-compose stop producer consumer -docker-compose logs consumer +while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for producer..."; sleep 1; done +while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for consumer..."; sleep 1; done +while [[ "$(http :8081/state | jq -r .)" == "{}" ]]; do echo "Waiting for some state to show up..."; done + +http -v :8081/state + +docker-compose stop producer +docker-compose exec -T cli bash << 'EOF' +echo "Altering number of partitions from 3 to 7..." +# tag::altertopic[] +kafka-topics --bootstrap-server kafka:9092 --alter --topic test --partitions 7 +kafka-topics --bootstrap-server kafka:9092 --describe --topic test +# end::altertopic[] +EOF + +docker-compose start producer +while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for producer..."; sleep 1; done + +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state +sleep 1 +http -v :8081/state + +docker-compose stop producer