您的位置:首页 > 其它

KafKa基于Zookeeper集群安装

2016-08-03 18:43 489 查看

一、依赖:

Kafka依赖于Zookeeper,并且内置Zookeeper,我们可以选择独立部署Zookeeper或者使用自带的Zookeeper。这边我使用了Kafka内置的Zookeeper;关于Zookeeper部署和配置这边不会详细说明,如果有不明白的可以看这边博文:利用VMware在虚拟机上安装Zookeeper集群



二、下载:

 kafka_2.11-0.10.0.0.tgz:可以到我的CSDN下载:kafka_2.11-0.10.0.0.tgz或者到官网下载:http://kafka.apache.org/downloads.html
将下载的kafka_2.11-0.10.0.0.tgz包用rz命令上传(我用的是XShell,你也可以使用winSCP等工具)我这边上传到/usr/local下,并已经使用命令解压(tar -zxvf kafka_2.11-0.10.0.0.tgz)。三台都如此!




三、配置:

zookeeper.properties:基于利用VMware在虚拟机上安装Zookeeper集群,先配置/usr/local/kafka_2.11-0.10.0.0/config下的zookeeper.properties:



还漏了点配置:
tickTime=2000
initLimit=10
syncLimit=5



server.properties:从上到下配置
Broker的ID:broker.id=1;(每个Broker保持唯一,可从0开始递增编号,我这边为了和上面的server.1保持一致所以从1开始)。


日志地址:定义成你想保存的地址:我这边统一到:/usr/local/kafka/logs下(你没有可以自己创建):



分区数目:默认num.partitions=1,一般情况下等于broker数量,所以我改成3


Zookeeper连接地址:将集群中的Zookeeper地址配入,以逗号隔开:




四、启动:

先启动zookeeper:
nohup /usr/local/kafka_2.11-0.10.0.0/bin/zookeeper-server-start.sh /usr/local/kafka_2.11-0.10.0.0/config/zookeeper.properties &
可以到单独安装的Zookeeper的bin目录下使用命令查看Zookeeper启动状态(是否成功):./zkServer.sh status

启动Kafka:
nohup /usr/local/kafka_2.11-0.10.0.0/bin/kafka-server-start.sh /usr/local/kafka_2.11-0.10.0.0/config/server.properties &


五、验证:

创建topic:在zookeeper1上创建了一个叫testtopic的主题。
/usr/local/kafka_2.11-0.10.0.0/bin/kafka-topics.sh --create --topic testtopic --zookeeper zookeeper1:2181 --replication-factor 3 --partition 3



查看所创建的topic:1中创建的topic,因为是集群,所以应该在zookeeper2上可以查看到:
/usr/local/kafka_2.11-0.10.0.0/bin/kafka-topics.sh --zookeeper zookeeper2:2181 --list



创建发布者producer:在zookeeper1上创建一个发布者:
/usr/local/kafka_2.11-0.10.0.0/bin/kafka-console-producer.sh -broker-list zookeeper1:9092 -topic testtopic




创建消费者consumer:在zookeeper2、zookeeper3上分别创建消费者:发布者发到对应topic下的内容会被对应的消费者接收到
/usr/local/kafka_2.11-0.10.0.0/bin/kafka-console-consumer.sh -zookeeper zookeeper2:2181 -from-beginning -topic testtopic
/usr/local/kafka_2.11-0.10.0.0/bin/kafka-console-consumer.sh -zookeeper zookeeper3:2181 -from-beginning -topic testtopic





producer进行发布:在3中创建的发布者在控制台等待输入,输入需要发布的内容后点击回车,消息就被发布出去了。

consumer进行订阅:在4中创建的消费者在控制台会输出对应集群中特定topic下由发布者发出的消息
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  zookeeper 集群 kafka