搭建zookeeper和Kafka集群:
本实验拥有3个节点,均为CentOS 7系统,分别对应IP为10.211.55.11、10.211.55.13、10.211.55.14,且均有相同用户名 (本实验为 jiecxy)
 
为了方便,先在三台节点上 /etc/hosts 文件内容均添加:
 
10.211.55.11 master
10.211.55.13 worker1
10.211.55.14 worker2123
 
一、 安装zookeeper
 
1. 下载 zookeeper-3.4.8.tar.gz
 
2. 在 master 节点上安装 zookeeper
解压安装包,并复制配置文件
 
# 在master节点上
[jiecxy@master ~]$ tar -xzvf zookeeper-3.4.8.tar.gz
[jiecxy@master ~]$ cd zookeeper-3.4.8/conf/
[jiecxy@master conf]$ cp zoo_sample.cfg zoo.cfg1234
 
3. 修改 zoo.cfg
 
[jiecxy@master conf]$ vi zoo.cfg1
修改内容如下:
 
...
# dataDir 最好不要在 /tmp 下
dataDir=/tmp/zookeeper
...
# the port at which the clients will connect
clientPort=2181
# 添加节点,注:端口2888、3888不固定
server.0=master:2888:3888
server.1=worker1:2888:3888
server.2=worker2:2888:3888
...123456789101112
 
 
4. 在 dataDir 目录下创建 data 文件夹 和 myid 文件(内容为0)
# 在master节点上
[jiecxy@master ~]$ mkdir /tmp/zookeeper/data/
[jiecxy@master ~]$ touch /tmp/zookeeper/myid
[jiecxy@master ~]$ echo 0 > /tmp/zookeeper/myid1234
 
5. 将 zookeeper-3.4.8 文件夹复制到另外两个节点下
 
# 在master节点上
[jiecxy@master ~]$ scp -r zookeeper-3.4.8/ worker1:~/
[jiecxy@master ~]$ scp -r zookeeper-3.4.8/ worker2:~/123
并在相同 dataDir 下创建 data 文件夹 和 myid 文件
注:worker1 的 myid 文件内容为 1,worker2 的 myid 文件内容为 2
 
# 登录 worker1
[jiecxy@worker1 ~]$ mkdir /tmp/zookeeper/data/
[jiecxy@worker1 ~]$ touch /tmp/zookeeper/myid
[jiecxy@worker1 ~]$ echo 1 > /tmp/zookeeper/myid1234
 
# 登录 worker2
[jiecxy@worker2 ~]$ mkdir /tmp/zookeeper/data/
[jiecxy@worker2 ~]$ touch /tmp/zookeeper/myid
[jiecxy@worker2 ~]$ echo 2 > /tmp/zookeeper/myid1234
 
6. 关闭防火墙
 
# 关闭防火墙
service iptables stop
# 启动防火墙
service iptables start
# 重启防火墙
service iptables restart
# 查看防火墙状态
service iptables status
# 永久关闭防火墙
chkconfig iptables off
# 永久关闭后启用
chkconfig iptables on
12345678910111213
 
 
二、 安装Kafka
 
1. 下载 kafka_2.11-0.10.0.1.tar.gz
 
2. 在 master 节点上安装 kafka(一个broker)
解压安装包
 
# 在master节点上
[jiecxy@master ~]$ tar -xzvf kafka_2.11-0.10.0.1.tar.gz12
 
3. 修改 server.properties
 
# 在master节点上
[jiecxy@master ~]$ cd kafka_2.11-0.10.0.1/config/
[jiecxy@master config]$ vi server.properties123
修改内容如下:
 
...
# master为0
broker.id=0   
...
# 连接
zookeeper.connect=master:2181,worker1:2181,worker2:2181
# 可删除topic
delete.topic.enable=true
...123456789
 
 
 
4. 将 kafka_2.11-0.10.0.1 文件夹复制到另外两个节点下
# 在master节点上
[jiecxy@master ~]$ scp -r kafka_2.11-0.10.0.1/ worker1:~/
[jiecxy@master ~]$ scp -r kafka_2.11-0.10.0.1/ worker2:~/123
并修改每个节点对应的 server.properties 文件的 broker.id: master为0,worker1为1,worker2为2
 
三、 启动集群和测试
 
注:启动时:先启动 zookeeper,后启动 kafka;关闭时:先关闭 kafka,后关闭zookeeper
 
1. 分别在每个节点上启动 zookeeper
 
# 在master节点上
[jiecxy@master zookeeper-3.4.8]$ bin/zkServer.sh start
# 在worker1节点上
[jiecxy@worker1 zookeeper-3.4.8]$ bin/zkServer.sh start
# 在worker2节点上
[jiecxy@worker2 zookeeper-3.4.8]$ bin/zkServer.sh start12345678
 
2. 验证 zookeeper 集群
 
# 在master节点上
[jiecxy@master zookeeper-3.4.8]$ bin/zkServer.sh status
# 在worker1节点上
[jiecxy@worker1 zookeeper-3.4.8]$ bin/zkServer.sh status
# 在worker2节点上
[jiecxy@worker2 zookeeper-3.4.8]$ bin/zkServer.sh status12345678
显示结果为:有一个是 leader,剩下的都是 follower 
 
 
 
3. 启动 Kafaka 集群
 
# 在master节点上
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-server-start.sh config/server.properties &
# 在worker1节点上
[jiecxy@worker1 kafka_2.11-0.10.0.1]$ bin/kafka-server-start.sh config/server.properties &
# 在worker2节点上
[jiecxy@worker2 kafka_2.11-0.10.0.1]$ bin/kafka-server-start.sh config/server.properties &12345678
 
4. 测试
创建 topic 和 显示 topic 信息
 
# 在master节点上 创建topic
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-topics.sh --create --zookeeper master:2181,worker1:2181,worker2:2181 --replication-factor 3 --partitions 3 --topic test12
 
 
# 在master节点上 显示topic信息
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-topics.sh --describe --zookeeper master:2181,worker1:2181,worker2:2181 --topic test12
 
 
# 在master节点上 列出topic
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-topics.sh --list --zookeeper master:2181,worker1:2181,worker2:218112
 
 
创建 producer
 
# 在master节点上 测试生产消息
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-console-producer.sh --broker-list master:9092 -topic test12
 
 
创建 consumer
 
# 在master节点上 测试消费
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-console-consumer.sh --zookeeper master:2181,worker1:2181,worker2:2181 -topic test --from-beginning
# 在worker1节点上 测试消费
[jiecxy@worker1 kafka_2.11-0.10.0.1]$ bin/kafka-console-consumer.sh --zookeeper master:2181,worker1:2181,worker2:2181 -topic test --from-beginning
# 在worker2节点上 测试消费
[jiecxy@worker2 kafka_2.11-0.10.0.1]$ bin/kafka-console-consumer.sh --zookeeper master:2181,worker1:2181,worker2:2181 -topic test --from-beginning12345678
然后在 producer 里输入消息,consumer 中就会显示出同样的内容,表示消费成功
 
 
5. 删除 topic 和关闭服务
 
# 在master节点上 删除topic
[jiecxy@master kafka_2.11-0.10.0.1]$ bin/kafka-topics.sh --delete --zookeeper master:2181,worker1:2181,worker2:2181 --topic test12
关闭
 
# 在master节点上 关闭kafka
[jiecxy@master ~]$ ./kafka_2.11-0.10.0.1/bin/kafka-server-stop.sh
# 在worker1节点上 关闭kafka
[jiecxy@worker1 ~]$ ./kafka_2.11-0.10.0.1/bin/kafka-server-stop.sh
# 在worker2节点上 关闭kafka
[jiecxy@worker2 ~]$ ./kafka_2.11-0.10.0.1/bin/kafka-server-stop.sh
# 在master节点上 关闭zookeeper
[jiecxy@master ~]$ ./zookeeper-3.4.8/bin/zkServer.sh stop
# 在worker1节点上 关闭zookeeper
[jiecxy@worker1 ~]$ ./zookeeper-3.4.8/bin/zkServer.sh stop
# 在worker2节点上 关闭zookeeper
[jiecxy@worker2 ~]$ ./zookeeper-3.4.8/bin/zkServer.sh stop
 
 
--------------------- 
原文:https://blog.csdn.net/jiecxy/article/details/52348120

搭建zookeeper和Kafka集群的更多相关文章

  1. Docker快速搭建Zookeeper和kafka集群

    使用Docker快速搭建Zookeeper和kafka集群 镜像选择 Zookeeper和Kafka集群分别运行在不同的容器中zookeeper官方镜像,版本3.4kafka采用wurstmeiste ...

  2. 使用Docker快速搭建Zookeeper和kafka集群

    使用Docker快速搭建Zookeeper和kafka集群 镜像选择 Zookeeper和Kafka集群分别运行在不同的容器中zookeeper官方镜像,版本3.4kafka采用wurstmeiste ...

  3. CentOS 7搭建Zookeeper和Kafka集群

    环境 CentOS 7.4 Zookeeper-3.6.1 Kafka_2.13-2.4.1 Kafka-manager-2.0.0.2 本次安装的软件全部在 /home/javateam 目录下. ...

  4. zookeeper及kafka集群搭建

    zookeeper及kafka集群搭建 1.有关zookeeper的介绍可参考:http://www.cnblogs.com/wuxl360/p/5817471.html 2.zookeeper安装 ...

  5. Kafka1 利用虚拟机搭建自己的Kafka集群

    前言:       上周末自己学习了一下Kafka,参考网上的文章,学习过程中还是比较顺利的,遇到的一些问题最终也都解决了,现在将学习的过程记录与此,供以后自己查阅,如果能帮助到其他人,自然是更好的. ...

  6. Zookeeper、Kafka集群与Filebeat+Kafka+ELK架构

    Zookeeper.Kafka集群与Filebeat+Kafka+ELK架构 目录 Zookeeper.Kafka集群与Filebeat+Kafka+ELK架构 一.Zookeeper 1. Zook ...

  7. zookeeper与Kafka集群搭建及python代码测试

    Kafka初识 1.Kafka使用背景 在我们大量使用分布式数据库.分布式计算集群的时候,是否会遇到这样的一些问题: 我们想分析下用户行为(pageviews),以便我们设计出更好的广告位 我想对用户 ...

  8. 大数据 -- zookeeper和kafka集群环境搭建

    一 运行环境 从阿里云申请三台云服务器,这里我使用了两个不同的阿里云账号去申请云服务器.我们配置三台主机名分别为zy1,zy2,zy3. 我们通过阿里云可以获取主机的公网ip地址,如下: 通过secu ...

  9. CentOS 7 Zookeeper 和 Kafka 集群搭建

    环境 CentOS 7.4 Zookeeper-3.6.1 Kafka_2.13-2.4.1 Kafka-manager-2.0.0.2 本次安装的软件全部在 /home/javateam 目录下. ...

随机推荐

  1. Kong(V1.0.2)Network & Firewall

    介绍 在本节中,您将找到关于Kong推荐的网络和防火墙设置的摘要.PortsKong使用多个连接用于不同的目的. 代理 管理api Proxy 代理端口是Kong接收传入流量的地方.有两个端口具有以下 ...

  2. g2opy 记录

    20190429 10:31 之前安装了g2opy,g2o也一直没好好学,跑通了slam14讲第13章的单目稠密重建.想要改写成 python版,开始仔细研究g2opy的用法.

  3. Google SketchUp Cookbook: (Chapter 4) Advanced Intersect and Follow Me Techniques

    软件环境 SketchUp Pro 2018 参考书籍 Google SketchUp Cookbook Intersect 工具经常与 Follow Me 工具一起使用,以创建复杂的 3D 物体. ...

  4. day1--一个简单的登录接口

    _usrename = "Yvan"_password = "abc123"count=0while count <3:    username = in ...

  5. LINUX FTPshez

    https://www.jb51.net/article/132337.htm FTPQ重启: service vsftpd restart

  6. C#中替换特殊字符串

    private string change字符(string str) { if (!string.IsNullOrEmpty(str)) { //将特殊字符全部替换为下划线 string patte ...

  7. 织梦dede文章列表调用标签的用法和规则

    织梦dede列表标签在任何模板的网站中都可能会使用到,而且我们在仿站的时候也经常要使用到列表标签.这里主机吧就给大家讲一下文章列表以及图片列表.软件列表以及分类信息列表标签的用法,和结合div+css ...

  8. 初识Velocity

    哇,好长时间没有写文章啦~ 楼主最近在工作中认识了一个叫做Velocity的java的模板引擎,小白的我去网上看了一下,应用还蛮多的,然而我目前接触到的只是用于基于模板生成这块的知识,想写个文章记下, ...

  9. 团队第四次 # scrum meeting

    github 本此会议项目由PM召开,召开时间为4-8日晚上10点 召开时长15分钟 任务表格 袁勤 负责编写登陆逻辑 https://github.com/buaa-2016/phyweb/issu ...

  10. Java Base64位加密和解密(包括其他加密参考)

    链接https://blog.csdn.net/longguangfu8/article/details/78948213 常用加密解密算法[RSA.AES.DES.MD5]介绍和使用 https:/ ...