X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=README.sh;h=3e1f0db1848937fde3204a71ab9c916e03c3538b;hb=refs%2Ftags%2Fconfig%2Fsasl-plain---2023-10-signal;hp=95aae0b264ea7611224ed1dc3e13e7eef97a52f5;hpb=d4bf2b7400df95df6c3f2534519671e596163be2;p=demos%2Fkafka%2Ftraining diff --git a/README.sh b/README.sh index 95aae0b..3e1f0db 100755 --- a/README.sh +++ b/README.sh @@ -2,32 +2,48 @@ if [ "$1" = "cleanup" ] then - docker-compose down -v - mvn clean + docker-compose -f docker/docker-compose.yml down -t0 -v --remove-orphans exit fi -mvn package || exit 1 -if [ "$1" = "build" ]; then exit; fi - -trap 'kill $(jobs -p) 2>/dev/null' EXIT - -docker-compose up -d - -echo "Waiting for the Kafka-Cluster to become ready..." -docker-compose exec kafka cub kafka-ready -b kafka:9092 1 60 > /dev/null 2>&1 || exit 1 - -echo "Producing messages" -mvn exec:java@producer - -echo "Reading messages" -mvn exec:java@consumer & -sleep 7 -kill $(jobs -p) -sleep 2 - -echo "Re-Reading messages" -mvn exec:java@consumer & -sleep 7 -kill $(jobs -p) -sleep 2 +( cd docker; ./README.sh ) + +docker-compose -f docker/docker-compose.yml up --remove-orphans setup || exit 1 +docker-compose -f docker/docker-compose.yml ps + +# Nicht nötig, da `super.users=User:ANONYMOUS` gesetzt wurde +# Ohne diesen Eintrag wären diverse ACLs nötig, bevor BROKER funktioniert! +# docker-compose exec cli kafka-acls --authorizer-properties zookeeper.connect=zookeeper zookeeper:2181 --add --allow-principal User:ANONYMOUS --operation ALL --topic __CruiseControlMetrics --group=* + +# schema-registry +docker-compose -f docker/docker-compose.yml exec cli kafka-acls \ + --authorizer-properties zookeeper.connect=zookeeper \ + --add \ + --allow-principal User:schemaregistry \ + --topic _schemas \ + --consumer --group=schema-registry \ + --producer +docker-compose -f docker/docker-compose.yml exec cli kafka-acls \ + --authorizer-properties zookeeper.connect=zookeeper \ + --add \ + --allow-principal User:schemaregistry \ + --topic _schemas \ + --operation=DescribeConfigs + +kafkacat -L -b :9092 -Xsecurity.protocol=sasl_plaintext -Xsasl.mechanisms=PLAIN -Xsasl.username=client -Xsasl.password=client-secret + +docker-compose -f docker/docker-compose.yml up -d schema-registry +while [[ ! $(http :8085/subjects 2> /dev/null) ]]; do echo Waiting for schema-registry; sleep 1; done +cat user-v1.schema|http POST http://localhost:8085/subjects/user/versions "Content-Type:application/vnd.schemaregistry.v1+json" +http GET http://0:8085/subjects/user/versions/1/schema + +# kafka-connect +docker-compose -f docker/docker-compose.yml exec cli kafka-acls \ + --authorizer-properties zookeeper.connect=zookeeper \ + --add \ + --allow-principal User:connect \ + --topic __connect \ + --resource-pattern-type prefixed \ + --consumer --group=kafka-connect \ + --producer +while [[ ! $(http :8083/connectors 2> /dev/null) ]]; do echo Waiting for schema-registry; sleep 1; done