3e1f0db1848937fde3204a71ab9c916e03c3538b
[demos/kafka/training] / README.sh
1 #!/bin/bash
2
3 if [ "$1" = "cleanup" ]
4 then
5   docker-compose -f docker/docker-compose.yml down -t0 -v --remove-orphans
6   exit
7 fi
8
9 ( cd docker; ./README.sh )
10
11 docker-compose -f docker/docker-compose.yml up --remove-orphans setup || exit 1
12 docker-compose -f docker/docker-compose.yml ps
13
14 # Nicht nötig, da `super.users=User:ANONYMOUS` gesetzt wurde
15 # Ohne diesen Eintrag wären diverse ACLs nötig, bevor BROKER funktioniert!
16 # docker-compose exec cli kafka-acls --authorizer-properties zookeeper.connect=zookeeper zookeeper:2181 --add --allow-principal User:ANONYMOUS --operation ALL --topic __CruiseControlMetrics --group=*
17
18 # schema-registry
19 docker-compose -f docker/docker-compose.yml exec cli kafka-acls \
20   --authorizer-properties zookeeper.connect=zookeeper \
21   --add \
22   --allow-principal User:schemaregistry \
23   --topic _schemas \
24   --consumer --group=schema-registry \
25   --producer
26 docker-compose -f docker/docker-compose.yml exec cli kafka-acls \
27   --authorizer-properties zookeeper.connect=zookeeper \
28   --add \
29   --allow-principal User:schemaregistry \
30   --topic _schemas \
31   --operation=DescribeConfigs
32
33 kafkacat -L -b :9092 -Xsecurity.protocol=sasl_plaintext -Xsasl.mechanisms=PLAIN -Xsasl.username=client -Xsasl.password=client-secret
34
35 docker-compose -f docker/docker-compose.yml up -d schema-registry
36 while [[ ! $(http :8085/subjects 2> /dev/null) ]]; do echo Waiting for schema-registry; sleep 1; done
37 cat user-v1.schema|http POST http://localhost:8085/subjects/user/versions "Content-Type:application/vnd.schemaregistry.v1+json"
38 http GET http://0:8085/subjects/user/versions/1/schema
39
40 # kafka-connect
41 docker-compose -f docker/docker-compose.yml exec cli kafka-acls \
42   --authorizer-properties zookeeper.connect=zookeeper \
43   --add \
44   --allow-principal User:connect \
45   --topic __connect \
46   --resource-pattern-type prefixed \
47   --consumer --group=kafka-connect \
48   --producer
49 while [[ ! $(http :8083/connectors 2> /dev/null) ]]; do echo Waiting for schema-registry; sleep 1; done