分布式集群环境搭建
搭建的分布式集群和伪集群的方式大致相同,这里假设使用3台服务器模拟实验,部署3个Zookeeper实例和3个Kafka实例,当然也可以直接部署一个Zookeeper实例,这里只是演示分布式Zookeeper和kafka的搭建。
这里写图片描述
这里写图片描述
工具使用的是SecureCRT。
1、分布式Zookeeper的搭建
(1)将Zookeeper安装包分别上传到3台服务器,我的是放在:/home/xuliugen/server 目录下。
(2)配置第一台Zookeeper
复制zookeeper-3.4.10/conf/zoo_sample.cfg 为 zookeeper-3.4.10/conf/zoo.cfg,修改zoo.cfg文件如下,只更改data的目录:
因为,修改了dataDir目录的位置,那么就需要创建一个/zookeeper-3.4.6/data目录。
(3)按同样的方式修改第二台Zookeeper和第三台Zookeeper服务器配置。
(4)然后,在每一台Zookeeper的配置文件中的最下边添加Zookeeper的集群配置:
(5)最后创建每一个Zookeeper的 myid 文件,在/data/myid文件
xuliugen@xuliugen-pc:~/server/zookeeper-3.4.6/data$ echo 1 > myid
则,另外两台分别为:
xuliugen@xuliugen-pc:~/server/zookeeper-3.4.6/data$ echo 2 > myid
xuliugen@xuliugen-pc:~/server/zookeeper-3.4.6/data$ echo 3 > myid
注意:
1、myid和IP地址的对应
server.1=
server.2=
server.3=
这里的1、2、3是和我们刚才配置的myid的数值是相对应的,即1的IP地址为192.168.1.120,那么server.1=192.168.1.120:2888:3888
2、防火墙端口的配置
另外,2888:3888端口要设置防火墙权限
2、启动Zookeeper服务器
依此使用命令./bin/zkServer.sh start 启动Zookeeper服务。
使用jps 查看是否已经启动
查看zookeeper日志的话,是在/zookeeper-3.4.6/bin 目录下的zookeeper.out 文件:
使用tailf zookeeper.out 可以进行查看。
3、分布式Kafka的搭建
(1)将Kafka安装包分别上传到3台服务器,我的是放在:/home/xuliugen/server 目录下。
(2)配置第一台Kafka
Kafka的配置文件是在/conf/server.properties ,修改日志的目录:
配置主机IP或者hostname:
然后修改kafka中使用的Zookeeper集群地址:
多个Zookeeper之间以英文逗号分开。
注意:
这里需要注意的是,如果按照上述的方式配置:
listeners=PLAINTEXT://192.168.1.120:9092
这样配置的话,是在内网环境下允许的,如果使用外网进行访问的话,可以配置为如下:
具体请参考:
http://blog.csdn.net/fengcai19/article/details/54695874?utm_source=itdadao&utm_medium=referral
(3)按同样的方式配置第二台kafka和第三台kafka服务器。
要注意的是不同的kafka的broker.id 一定要不一样,我这里分别配置的是0、1、2。
4、分别启动Kafka服务
>bin/kafka-server-start.sh config/server.properties
5.术语介绍
Broker
Kafka集群包含一个或多个服务器,这种服务器被称为broker
Topic
每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)
Partition
Partition是物理上的概念,每个Topic包含一个或多个Partition.
Producer
负责发布消息到Kafka broker
Consumer
消息消费者,向Kafka broker读取消息的客户端。
Consumer Group
每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)。
网友评论