Zookeeper集群的搭建过程

1. 下载源代码地址

官方网站:http://mirrors.cnnic.cn/apache/zookeeper/

本次搭建下载为3.4.6,最新为release版本

 

2. zookeeper集群种类

1、单节点方式:部署在一台机器上

2、单IP多借点:部署在同一IP,但是有多个节点,各有自己的端口

3、多IP多借点:部署在不同IP,各有自己的端口

 

3. 集群搭建(ubuntu)

1、单节点方式比较简单:

如果没有特殊需求,不需要修改配置文件,直接使用默认配置文件即可。

配置内容为:

Zookeeper集群的搭建过程_第1张图片

 

命令行格式为:

bin/zkServer.sh start

查看是否成功运行:

bin/zkServer.sh status

成功运行输出为:

注意事项:

(1)bin/zkServer.sh start运行后端输出信息不能代表已经成功运行,必须使用bin/zkServer.sh status查看状态来进行测试才能确定。

启动成功与否,执行bin/zkServer.sh start之后,终端都会输出:

(2)端口的占用有可能导致失败,失败原因可以在zookeeper.out文件中找到:

举例:使用8080作为端口:

Zookeeper集群的搭建过程_第2张图片

(3)重复启动,则终端输出:

(4)退出zookeeper

bin/zkServer.sh stop

2、单IP多节点

(1)修改配置文件:

拷贝多份zookeeper程序,例如设置三个server,分别创建目录server1、server2、server3,每个目录下存放一份zookeeper程序,并修改各自配置文件如下:

Server1

Zookeeper集群的搭建过程_第3张图片

Server2:

Zookeeper集群的搭建过程_第4张图片

Server3:

Zookeeper集群的搭建过程_第5张图片

注意:

同一IP上搭建多个节点的集群时,必须要注意端口问题,端口必须不一致才行;

创建多个节点集群时,在dataDir目录下必须创建myid文件,myid文件用于zookeeper验证server序号等,myid文件只有一行,并且为当前server的序号,例如server1的myid就是1,server2的myid就是2等,依次这样...

(2) 启动过程:

本次启动顺序为server1、server2、server3

在启动过程中会验证一些配置问题。

步骤一:启动server1

使用bin/zkServer.sh status查看server1的启动结果:

Zookeeper集群的搭建过程_第6张图片

然后查看server1的zookeeper.out文件发现:

注:如上面两幅图片所示,当搭建集群时,如果启动一个节点,会出现两个现象;现象一,此时验证启动状态,会发现启动失败;现象二,zookeeper.out文件中也显示连接其他节点失败

此时不需要担心,这是正常状况。当再启动一个节点时,现象一就消失;当所有节点都成功启动时,现象二就会消失

步骤二:启动server2

查看server2启动后的zookeeper.out文件

Zookeeper集群的搭建过程_第7张图片

上面两幅图片说明,server2启动后,server1和server2就自动组成集群,并且选举server2为leader,server1自然就为follower。

步骤3:启动server3

验证一:clientPort使用相同端口启动结果:

启动后,查看zookeeper.out文件:

Zookeeper集群的搭建过程_第8张图片

验证二:server3的选举leader端口和连接leader通信端口和server1的相同时:

启动后,查看zookeeper.out文件

验证三:没有创建myid文件:

启动后查看zookeeper.out文件:

正常启动server3后:

查看zookeeper.out文件:

使用bin/zkServer.sh status查看三者状态:

Zookeeper集群的搭建过程_第9张图片

3、多IP多节点

将zookeeper拷贝到每个节点一份。

多IP多节点与单IP多节点搭建过程基本一致,上述过程不再重复描述,有一个比较重要的地方:

主机名与IP地址的映射

本例中采用4个IP上的4个节点,域名和IP的对应关系为:

rman-nod1 10.110.0.60

rman-nod2 10.110.0.61

rtask-nod3 10.110.10.30

rtask-nod4 10.110.10.40

注:其中rman-nod1和rman-nod2为双网卡节点,其他为单网卡节点;

其中rman-nod1的网址为: 10.110.0.60----对外

10.110.10.2----对内

rman-nod2的网址为: 10.110.0.61---对外

10.110.10.6----对内

zookeeper配置文件server的IP为:

因此连接总是失败。当将zookeeper配置文件中server的IP改为对内IP时,就可以正确连接:

Zookeeper集群的搭建过程_第10张图片

你可能感兴趣的:(个人技术分享)