zookeeper和Kafka集群安装配置

 

 

3个虚拟机,首先关闭防火墙,在进行下面操作

一、java环境
yum list java*
yum -y install java-1.8.0-openjdk*
查看Java版本 Java -version
 
二、zookeeper下载
 
官网下载
 
下载到主目录下
mkdir Test 在下面新建文件夹 zookeep
 
解压到zookeeper
tar -zxf jdk-8u60-linux-x64.gz
 
在test/zookeeper文件夹中新建madir data文件 test/zookeeper/data  存放zookeep数据
 
创建配置文件  /test/zookeeper/zookeeper-3.5.2-alpha/conf
$ vi conf/zoo.cfg
tickTime=2000
dataDir=/path/to/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
 
启动zookeeper服务 bin目录下
./zkServer.sh start
 
zookeep 集群配置
 
配置三台上面的单机zookeeper,这里没有myid会出现zookeep 启动失败问题,解决
在 dataDir=/path/to/zookeeper/data 中新建 vim myid 文件
 
#比如我配置的三个server,myid里面写的X就是server.X=ip:2888:3888 中ip所对应的X
server.0=192.168.121.199:2888:3888【192.168.121.199服务器上面的myid填写0】
server.1=192.168.121.197:2888:3888【192.168.121.197服务器上面的myid填写1】
server.2=192.168.121.195:2888:3888【192.168.121.195服务器上面的myid填写2】
分别启动每一个zookeeper
启动完成,使用 ./zkServer.sh status 查看 当前集群状态
此时zookeep集群会产生一个leader

 和多个follower

 
 
三、kafka安装使用
cd 到kafka目录
解压到当前目录 test/kafka
tar -zxf kafka_2.11.0.9.0.0 tar.gz
cd kafka_2.11.0.9.0.0
 
修改 config下的 server.properties 配置文件 修改一下log日志文件
vi test/kafka/kafka_2.12-1.0.2/config/server.properties
shift+: 输入:/zookeeper 编辑配置文件  /log 编辑log位置
 
启动zookeeper服务,在执行下面 -daemon 为后台运行
bin/kafka-server-start.sh -daemon  config/server.properties
 
启动成功,输入jps查看后台进程
821 QuorumPeerMain
928 Kafka
931 Jps
 
关闭kafka
bin/kafka-server-stop.sh
kafka集群
修改 config/server.properties 配置文件中的
shifit+:/Server Basics中的 broker.id=0
生产者生产消息需要固定ip,在 
根据本机ip固定一下ip,不然其他机器上的broker 接受不到kafka集群中的数据
shitft+:/zookeep 中的 zookeeper.connect=192.168.121.199:2181,192.168.121.197:2181
 
问题:启动不成功,把数据目录data删除
 
创建topic 注意端口号
bin/kafka-topics.sh --create --zookeeper 192.168.121.197:2181 --replication-factor 2 --partitions 1 --topic test
#解释
--replication-factor 2 #复制两份
--partitions 1 #创建1个分区
--topic #主题为shuaige
 
查看所有的topic
bin/kafka-topics.sh --list --zookeeper 192.168.121.199:2181
 
 
查看topic状态
./kafka-topics.sh --describe --zookeeper 192.168.121.199,192.168.121.197,192.168.121.195  --topic testThreed2
 
生产者发送数据
bin/kafka-console-producer.sh --broker-list 192.168.121.199:9092 --topic shuaige
 
消费者消费
从zookeer中消费数据。此方法过期了
bin/kafka-console-consumer.sh --zookeeper 192.168.121.197:2181 --topic test --from-beginning
//--bootstrap-server 中消费数据。即:Kafka 的从broker中消费数据,ip为kafka的ip
bin/kafka-console-consumer.sh --bootstrap-server  192.168.121.199:9092 --topic test2222 --from-beginning
 
 
 
 
 
posted @ 2018-09-10 21:07  forever2015  阅读(243)  评论(0编辑  收藏  举报