Docker安装及配置kafkaDocker 安装zookeeper并实现挂载
发布时间:2023-11-12 18:09:56 396 相关标签:
一、下载镜像
# 如果已经安装了zookeeper,则不需要重新pull zookeeper镜像
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
二、先启动zookeeper
Docker 安装zookeeper并实现挂载
#如果已经安装并启动了zookeeper,则跳过
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
三、启动kafka
docker run -d --restart=always --name kafka \
-p 9092:9092 \
-e KAFKA_BROKER_ID=1 \
-e KAFKA_auto_create_topics_enable=true \
-e KAFKA_HEAP_OPTS="-Xmx256M -Xms128M" \
-e KAFKA_ZOOKEEPER_CONNECT=公网ip:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://公网ip:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-t wurstmeister/kafka
说明:
//配置分组id
KAFKA_BROKER_ID=1
//开启自动创建主题(不然代码整合服务后启动报错,必须自己手动到服务上创建)
KAFKA_auto_create_topics_enable=true
//连接zookeeper
KAFKA_ZOOKEEPER_CONNECT=公网ip:2181
//默认内存1G自己服务器太小,调小一点不然启动报错内存溢出(此处也比较坑)
KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
//配置外网ip访问kafka
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://公网ip:9092
四、创建一个topic(使用代码此步可省略)
#进入容器
docker exec -it ${CONTAINER ID} /bin/bash
cd /opt/kafka
#创建主题
bin/kafka-topics.sh --create --zookeeper 公网ip:2181 --replication-factor 1 --partitions 1 --topic mytopic
#查看主题列表:
bin/kafka-topics.sh --list --zookeeper 公网ip:2181
#运行生产者发送消息
bin/kafka-console-producer.sh --broker-list 公网ip:9092 --topic mytopic
发送消息:
{"datas":[{"channel":"","metric":"temperature","producer":"ijinus","sn":"IJA0101-00002245","time":"1543207156000","value":"80"}],"ver":"1.0"}
#运行消费者接收
bin/kafka-console-consumer.sh --bootstrap-server 公网ip:9092 --topic mytopic --from-beginning
五、kafka设置分区数量
#分区数量的作用:有多少分区就能负载多少个消费者,生产者会自动分配给分区数据,每个消费者只消费自己分区的数据,每个分区有自己独立的offset
#进入kafka容器
vi opt/kafka/config/server.properties
修改run.partitions=2
#退出容器
ctrl+p+q
#重启容器
docker restart kafka
#修改指定topic
./kafka-topics.sh --zookeeper localhost:2181 --alter --partitions 3 --topic topicname
六、kafka相关操作指令
Kafka命令行
查看topic
bin/kafka-topics.sh --zookeeper localhost:2181 --list
创建topic
bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic test1 --partitions 4 --replication-factor 1
查看topic信息
bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic test1
消费命令
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic test1
生产命令
bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test1
简单性能测试:
bin/kafka-producer-perf-test.sh --topic test1 --num-records 100000 --record-size 1000 --throughput 2000 --producer-props bootstrap.servers=localhost:9092
bin/kafka-consumer-perf-test.sh --bootstrap-server localhost:9092 --topic test1 -- fetch-size 1048576 --messages 100000 --threads 1
至此,Docker安装配置kafka完毕。
文章来源: https://blog.51cto.com/u_14879850/5867484
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报