X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=README.sh;h=f337d5ce9067fb3aa41202b29615333057aca40d;hb=refs%2Fheads%2Fsumup-adder--rebalance-listener--sticky-assignor;hp=831544022c6640961c9d308f0ef867c661e48b50;hpb=cbce022445f6125f960e5095d2083e4cf58dfb5e;p=demos%2Fkafka%2Ftraining diff --git a/README.sh b/README.sh index 8315440..f337d5c 100755 --- a/README.sh +++ b/README.sh @@ -1,6 +1,6 @@ #!/bin/bash -IMAGE=juplo/counting-consumer:1.0-SNAPSHOT +IMAGE=juplo/sumup-adder:1.0-SNAPSHOT if [ "$1" = "cleanup" ] then @@ -9,14 +9,17 @@ then exit fi -docker-compose up -d zookeeper kafka cli +docker-compose rm -svf adder-1 adder-2 +docker-compose rm -svf mongo +docker-compose up -d zookeeper kafka-1 kafka-2 kafka-3 cli mongo express if [[ $(docker image ls -q $IMAGE) == "" || "$1" = "build" ]] then - mvn install || exit + docker-compose rm -svf adder-1 adder-2 + mvn -D skipTests clean install || exit else echo "Using image existing images:" docker image ls $IMAGE @@ -24,64 +27,64 @@ 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 -d kafka-ui - -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 consumer - -docker-compose up -d producer -sleep 10 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen - -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 restart producer -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -sleep 1 -http :8081/seen -docker-compose stop producer consumer +docker-compose up setup +docker-compose up -d gateway requests-1 requests-2 + +while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for gateway..."; sleep 1; done +while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for requests-1..."; sleep 1; done +while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for requests-2..."; sleep 1; done + +docker-compose up -d peter klaus + +docker-compose up -d adder-1 +while ! [[ $(http 0:8091/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-1..."; sleep 1; done +while [[ "$(http :8091/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-1..."; sleep 1; done +http -v --pretty none -S :8091/results +echo + +sleep 3 +echo "Resultate für adder-1" +http -v --pretty none -S :8091/results +echo + +echo "Resultate für peter von adder-1" +http :8091/results/peter | jq .[].sum | uniq +echo "Resultate für klaus von adder-1" +http :8091/results/klaus | jq .[].sum | uniq + + +docker-compose up -d adder-2 +while ! [[ $(http 0:8092/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-2..."; sleep 1; done +while [[ "$(http :8092/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-2..."; sleep 1; done +http -v --pretty none -S :8092/results +echo + +sleep 3 +echo "Resultate für adder-2" +http -v --pretty none -S :8092/results +echo + +echo "Resultate für peter von adder-1" +http :8091/results/peter | jq .[].sum | uniq +echo "Resultate für klaus von adder-1" +http :8091/results/klaus | jq .[].sum | uniq + +echo "Resultate für peter von adder-2" +http :8092/results/peter | jq .[].sum | uniq +echo "Resultate für klaus von adder-2" +http :8092/results/klaus | jq .[].sum | uniq + +docker-compose stop adder-1 +until [ $(http --check-status :8092/results/peter 2> /dev/null) ]; do echo "Waiting for some results for peter to show up on adder-2..."; sleep 1; done +until [ $(http --check-status :8092/results/klaus 2> /dev/null) ]; do echo "Waiting for some results for peter to show up on adder-2..."; sleep 1; done + +echo "Resultate für adder-2" +http -v --pretty none -S :8092/results +echo + +echo "Resultate für peter von adder-2" +http :8092/results/peter | jq .[].sum | uniq +echo "Resultate für klaus von adder-2" +http :8092/results/klaus | jq .[].sum | uniq + +docker-compose kill -s 9 peter klaus