您的位置:首页 > 其它

kafka集群及zookeeper集群搭建

2017-11-15 11:03 701 查看
在搭建kafka集群之前首先需要搭建kafka集群,因为kafka需要依赖zookeeper
1.搭建zookeeper集群

   1.1.准备三台机器,可以是虚拟机,笔者使用的Vmware虚拟出了三台机器,使用的CentOS6.5镜像,ip地址如下:

   192.168.74.79

   192.168.74.80

   192.168.74.81

   修改/etc/hosts添加主机名,如下:
192.168.74.79 node-01
192.168.74.80 node-02
192.168.74.81 node-03  

   1.2.下载zookeeper二进制tar包,笔者使用的是zookeeper-3.4.6.tar.gz,可去zookeeper官网自行下载,下载完了后,上传到虚拟主机,在

   /usr/local下创建目录zookeeper并解压到该目录下
# mkdir /usr/local/zookeeper
# tar -zxvf zookeeper-3.4.6.tar.gz
  

   1.3.在/usr/local/zookeeper目录下创建data和logs目录用于记录zookeeper存放数据和日志记录

 
# mkdir data logs
  

   1.4.cd 到zookeeper-3.4.6目录下,将conf目录下的zoo_sample.cfg文件复制一份并重命名为zoo.cfg
# cp zoo_sample.cfg zoo.cfg
  

   1.5.修改zoo.cfg,需要修改和新增的内容如下:

   #修改成上面创建的data目录路径
dataDir=/usr/local/zookeeper/data
#新增
dataLogDir=/usr/local/zookeeper/logs
#新增
server.1=node-01:2881:3881
server.2=node-02:2881:3881
server.3=node-03:2881:3881
  

   1.6.其他机器按照上面步骤操作,启动zookeeper,cd到bin,./zkServer.sh start,查看zookeeper状态,./zkServer.sh status

   
2.搭建kafka集群

   还是zookeeper所使用的三台服务器,步骤如下:

   2.1.去官网下载kafka二进制安装tar包,笔者使用的是kafka_2.11-0.10.2.0.tgz,在/usr/local下创建kafka目录并解压到kafka目录下
# mkdir /usr/local/kafka
# tar -zxvf kafka_2.11-0.10.2.0.tgz
  

   2.2.进入到/usr/local/kafka/kafka_2.11-0.10.2.0/config目录下,修改server.properties
#kafka唯一主机标识,不同机器中的kafka不能相同
broker.id=0
host.name=192.168.74.79
log.dirs=/usr/local/kafka/kafkalogs
zookeeper.connect=192.168.74.79:2181,192.168.74.80:2181,192.168.74.81:2181
   其他机器也是一样,记住broker.id不能再为0了

  
    2.3.启动kafka,bin/kafka-server-start.sh -daemon config/server.properties,通过jps查看kafka进程
25052 Jps
6622 Kafka
3.kafka集群搭建遇到的那些坑:

1、如果你的kafka中的server.properties文件中的broker.id=0不修改,启动时会报错,按照顺序依次修改成0,1,2......

2、server.properties文件中如果没有host.name就要加上,否则通过kafka api会无法访问

3、使用bin/kafka-server-stop.sh在centOS6.5关闭失效,使用kill -s TERM $(jps -l | grep 'kafka\.Kafka' | awk '{print $1}')关闭

4、使用bin/kafka-server-start config/server.properties & 当关闭控制台后kafka就会自动关闭,所以应该使用bin/kafka-server-start -daemon config/server.properties &作为后台程序运行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: