部署背景
192.195.30.193 Kafka+ZooKeeper 192.195.30.194 Kafka+ZooKeeper 192.195.30.195 Kafka+ZooKeeper
# cat etc/hosts
192.195.30.193 ZooKeeper-Kafka-01
192.195.30.194 ZooKeeper-Kafka-02
192.195.30.195 ZooKeeper-Kafka-03
安装zookeeper
[root@ZooKeeper-Kafka-01 src]# tar -zxvf zookeeper-3.4.10.tar.gz -C usr/local/
[root@ZooKeeper-Kafka-01 src]# cd ..
[root@ZooKeeper-Kafka-01 local]# ln -s zookeeper-3.4.10 zookeeper
[root@ZooKeeper-Kafka-01 local]# cd zookeeper/conf/
[root@ZooKeeper-Kafka-01 conf]# cp zoo_sample.cfg zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/tmp/zookeeper
clientPort=2181
server.1=ZooKeeper-Kafka-01:2888:3888
server.2=ZooKeeper-Kafka-02:2888:3888
server.3=ZooKeeper-Kafka-03:2888:3888
[root@ZooKeeper-Kafka-01 conf]# mkdir tmp/zookeeper
[root@ZooKeeper-Kafka-01 conf]# touch tmp/zookeeper/myid
[root@ZooKeeper-Kafka-01 conf]# echo 1 > tmp/zookeeper/myid
[root@ZooKeeper-Kafka-01 local]# scp -r zookeeper-3.4.10/ 10.200.3.86:/usr/local/
[root@ZooKeeper-Kafka-01 local]# scp -r zookeeper-3.4.10/ 10.200.3.87:/usr/local/
[root@ZooKeeper-Kafka-02 local]# ln -s zookeeper-3.4.10 zookeeper
[root@ZooKeeper-Kafka-02 local]# mkdir tmp/zookeeper
[root@ZooKeeper-Kafka-02 local]# touch tmp/zookeeper/myid
[root@ZooKeeper-Kafka-02 local]# echo 2 > tmp/zookeeper/myid
[root@ZooKeeper-Kafka-03 local]# ln -s zookeeper-3.4.10 zookeeper
[root@ZooKeeper-Kafka-03 local]# mkdir tmp/zookeeper
[root@ZooKeeper-Kafka-03 local]# touch tmp/zookeeper/myid
[root@ZooKeeper-Kafka-03 local]# echo 3 > tmp/zookeeper/myid
[root@ZooKeeper-Kafka-01 zookeeper]# ./bin/zkServer.sh start
[root@ZooKeeper-Kafka-02 zookeeper]# ./bin/zkServer.sh start
[root@ZooKeeper-Kafka-03 zookeeper]# ./bin/zkServer.sh start
[root@ZooKeeper-Kafka-01 zookeeper]# ./bin/zkServer.sh status
ZooKeeper JMX enabled bydefault
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower
[root@ZooKeeper-Kafka-02 zookeeper]# ./bin/zkServer.sh status
ZooKeeper JMX enabled bydefault
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: leader
[root@ZooKeeper-Kafka-03 zookeeper]# ./bin/zkServer.sh status
ZooKeeper JMX enabled bydefault
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower
Kafka集群安装配置
[root@ZooKeeper-Kafka-01 src] # tar -zxvf kafka_2.12-1.1.0.tgz -C /usr/local/
[root@ZooKeeper-Kafka-01 src]# cd ..
[root@ZooKeeper-Kafka-01 local]# ln -s kafka_2.12-1.1.0 kafka
# master为0
broker.id=0
listeners=PLAINTEXT://ZooKeeper-Kafka-01:9092
advertised.listeners=PLAINTEXT://ZooKeeper-Kafka-01:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/tmp/kafka-logs
num.partitions=5
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=24
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
# 连接
zookeeper.connect=ZooKeeper-Kafka-01:2181,ZooKeeper-Kafka-02:2181,ZooKeeper-Kafka-03:2181
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
# 可删除topic
delete.topic.enable=true
[root@ZooKeeper-Kafka-01 local]# scp -r kafka_2.12-1.1.0/ 10.200.3.86:/usr/local/
[root@ZooKeeper-Kafka-01 local]# scp -r kafka_2.12-1.1.0/ 10.200.3.87:/usr/local/
[root@ZooKeeper-Kafka-02 config]# cat server.properties
broker.id=1
listeners=PLAINTEXT://ZooKeeper-Kafka-02:9092
advertised.listeners=PLAINTEXT://ZooKeeper-Kafka-02:9092
[root@ZooKeeper-Kafka-03 config]# cat server.properties
broker.id=2
listeners=PLAINTEXT://ZooKeeper-Kafka-03:9092
advertised.listeners=PLAINTEXT://ZooKeeper-Kafka-03:9092
bin/kafka-server-start.sh config/server.properties &
Zookeeper+Kafka集群测试
[root@ZooKeeper-Kafka-01 kafka]# bin/kafka-topics.sh--create--zookeeperZooKeeper-Kafka-01:2181,
ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181--replication-factor3--partitions3--topictest
[root@ZooKeeper-Kafka-01 kafka]# bin/kafka-topics.sh--describe--zookeeperZooKeeper-Kafka-01:2181,
ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181--topictest
[root@ZooKeeper-Kafka-01 kafka]# bin/kafka-topics.sh--list--zookeeperZooKeeper-Kafka-01:2181,
ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181
test
[root@ZooKeeper-Kafka-01 kafka]# bin/kafka-console-producer.sh--broker-listZooKeeper-Kafka-01:9092-topictest
>helloworld
>[2018-04-03 12:18:25,545]INFOUpdatedPartitionLeaderEpoch. New: {epoch:0, offset:0}, Current: {epoch:-1, offset:-1} forPartition: test-0. Cachenowcontains0entries. (kafka.server.epoch.LeaderEpochFileCache)
thisisexample ...
>[2018-04-03 12:19:16,342]INFOUpdatedPartitionLeaderEpoch. New: {epoch:0, offset:0}, Current: {epoch:-1, offset:-1} forPartition: test-2. Cachenowcontains0entries. (kafka.server.epoch.LeaderEpochFileCache)
welcometochina
>[2018-04-03 12:20:53,141]INFOUpdatedPartitionLeaderEpoch. New: {epoch:0, offset:0}, Current: {epoch:-1, offset:-1} forPartition: test-1. Cachenowcontains0entries. (kafka.server.epoch.LeaderEpochFileCache)
[root@ZooKeeper-Kafka-02 kafka]# bin/kafka-console-consumer.sh--zookeeperZooKeeper-Kafka-01:2181, ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181-topictest--from-beginning
UsingtheConsoleConsumerwitholdconsumerisdeprecatedandwillberemovedinafuturemajorrelease. Considerusingthenewconsumerbypassing[bootstrap-server]insteadof[zookeeper].
thisisexample ...
hello world
[2018-04-03 12:20:53,145]INFOUpdatedPartitionLeaderEpoch. New: {epoch:0, offset:0}, Current: {epoch:-1, offset:-1} forPartition: test-1. Cachenowcontains0entries. (kafka.server.epoch.LeaderEpochFileCache)
welcome to chins
[root@ZooKeeper-Kafka-03 kafka]# bin/kafka-console-consumer.sh --zookeeper ZooKeeper-Kafka-01:2181,
ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181 -topic test --from-beginning
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release.
Considerusing the new consumer bypassing [bootstrap-server] instead of [zookeeper].
welcome to china
hello world
this is example ...
[root@ZooKeeper-Kafka-01 kafka]# bin/kafka-topics.sh--delete--zookeeperZooKeeper-Kafka-01:2181,
ZooKeeper-Kafka-02:2181, ZooKeeper-Kafka-03:2181--topictest
bin/kafka-server-start.sh config/server.properties &
bin/kafka-server-stop.sh

本文作者:陈竹彬(上海新炬中北团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




