Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env bash
- # based on https://success.docker.com/article/getting-started-with-kafka
- # create docker swarm cluster of kaffka
- # N.B. kafka broker version was outdated and replaced with 2019-xx-xx
- # also neet to create docker swarm network
- # to access the service need to use it name, like "manager" or "broker"
- # original repository https://github.com/qnib/plain-kafka
- # Optional
- # docker swarm init
- # docker swarm join
- #create network
- docker network create -d overlay --attachable kafka-net
- # create zk node
- docker service create --network kafka-net --name=zookeeper --publish 2181:2181 qnib/plain-zookeeper:2018-04-25
- # create zk admin
- docker service create --network kafka-net --name=zkui --publish 9090:9090 qnib/plain-zkui@sha256:30c4aa1236ee90e4274a9059a5fa87de2ee778d9bfa3cb48c4c9aafe7cfa1a13
- # create kafka broker
- docker service create --network kafka-net --name broker --hostname="{{.Service.Name}}.{{.Task.Slot}}.{{.Task.ID}}" -e KAFKA_BROKER_ID={{.Task.Slot}} -e ZK_SERVERS=tasks.zookeeper qnib/plain-kafka:2019-01-28_2.1.0
- # create kafka admin
- docker service create --network kafka-net --name manager -e ZOOKEEPER_HOSTS=tasks.zookeeper --publish=9000:9000 qnib/plain-kafka-manager:2018-04-25
- # Create test topic
- docker exec -t -e JMX_PORT="" $(docker ps -q --filter 'label=com.docker.swarm.service.name=broker'|head -n1) /opt/kafka/bin/kafka-topics.sh --zookeeper tasks.zookeeper:2181 --partitions=1 --replication-factor=1 --create --topic test
- # Find manager addres
- nslookup manager
- # to create cluster need to use zookeeper host: tasks.zookeeper:2181, kafka version 1.0, enable JMX
- # Optional. Create some messages
- #docker run -t --rm --network kafka-net qnib/golang-kafka-producer:2018-05-01.5 5
- # Also it's possible to scale brokers:
- # docker service update --replicas=3 broker
- # To stop cluster
- # docker service remove manager
- # docker service remove broker
- # docker service remove zkui
- # docker service remove zookeeper
- #docker network remove kafka-net
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement