一.kafka集群部署情况
本次kafka版本使用的是kafka_2.12-2.1.1,在官网可以下载到,下载完解压,解压完直接可以使用。kafka分为两部分,一部分是zookeeper部署,一个kafka service部署。绝大多数时候zookeeper的部署需要集群模式,比如三台机器101,102,103,每台机器都要部署zookeeper服务。但是有些时候资源有限的情况下可以使用伪集群模式,一台机器启用不同进程,监听不同端口,来达到同样的目的。101机器上分别修改配置文件的端口2172 2173 2174等。同样kafka service也启用三个进程分别使用三个端口。这样伪集群就建立完毕。当然了真集群就是在三台机器上分别部署zookeeper和kafka service。三个配置一样部署如下:
zookeeper配置
dataDir=/home/kafka/kafka_2.12-0.11.0.1/data/zookeeper
# the port at which the clients will connect
clientPort=2172
# disable the per-ip limit on the number of connections since this is a non-production configmaxClientCnxns=1000server.1=192.168.1.101:2891:2892server.2=192.168.1.102:2891:2892server.3=192.168.1.103:2891:289
kafkaserver配置
broker.id=1delete.topic.enable=truelisteners=PLAINTEXT://192.168.1.101:9095advertised.listeners=PLAINTEXT://192.168.1.101:9095num.network.threads=3num.io.threads=8socket.send.buffer.bytes=102400socket.receive.buffer.bytes=102400socket.request.max.bytes=104857600log.dir=/home/kafka/kafka_2.12-0.11.0.1/tmp/kafka-logslog.dirs=/home/kafka/kafka_2.12-0.11.0.1/tmp/kafka-logsnum.partitiOns=1num.recovery.threads.per.data.dir=1offsets.topic.replication.factor=1transaction.state.log.replication.factor=1transaction.state.log.min.isr=1log.retention.hours=168log.segment.bytes=1073741824log.retention.check.interval.ms=300000zookeeper.cOnnect=192.168.1.101:2172,192.168.1.102:2172,192.168.1.103:2172zookeeper.connection.timeout.ms=6000group.initial.rebalance.delay.ms=0
注意点:三个service.x 需要跟dataDir目录下myid一致,要不然启动不了。这三个是zookeeper之间进行负载均衡,以及通讯端口。
启动方式
nohup ./bin/zookeeper-server-start.sh config/zookeeper.properties >logs/zookeeper.log 2>1 &nohup ./bin/kafka-server-start.sh config/server.properties >logs/kafka.log 2>1 &
手动增加一个主题: zookeeper 罗列全所有机器bin/kafka-topics.sh --create --zookeeper 192.168.1.101:2172,192.168.1.102:2172,192.168.1.103:2172 --replication-factor 2 --partitions 10 --topic test123
列出当前所有主题:./kafka-topics.sh --list --zookeeper 192.168.1.101:2172
手动创建生产者去生产消息测试kafka是否正常工作./bin/kafka-console-producer.sh --broker-list 192.168.1.101:9095 --topic test123手动创建消费者去消费消息测试kafka是否正常工作./bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.101:9095 --from-beginning --topic test123查看kafka组分区消费情况kafka-consumer-groups.sh --bootstrap-server 192.168.1.101:9092 --describe --group testgroup123./bin/kafka-consumer-groups.sh --bootstrap-server 192.168.1.101:9092 --describe --group testgroup123 分组名称不是topic名称
kafka-topics.sh --describe --zookeeper localhost:9092 --topic notify_op_queue01
【文章原创作者:高防ip http://www.558idc.com/gfip.html欢迎留下您的宝贵建议】