2.2 搭建 Zookeeper 集群
2.2.1 搭建要求
真实的集群是需要部署在不同的服务器上的,但是在我们测试时同时启动十几个虚拟机
内存会吃不消,所以我们通常会搭建伪集群,也就是把所有的服务都搭建在一台虚拟机上, 用端口进行区分。
我们这里要求搭建一个三个节点的 Zookeeper 集群(伪集群)。
2.2.2 准备工作
重新部署一台虚拟机作为我们搭建集群的测试服务器。
(1)安装 JDK 【此步骤省略】。
(2)Zookeeper 压缩包上传到服务器
(3)将 Zookeeper 解压 ,创建 data 目录 ,将 conf 下 zoo_sample.cfg 文件改名为 zoo.cfg
(4)建立/usr/local/zookeeper-cluster 目录,将解压后的 Zookeeper 复制到以下三个目录
/usr/local/zookeeper-cluster/zookeeper-1
/usr/local/zookeeper-cluster/zookeeper-2
/usr/local/zookeeper-cluster/zookeeper-3
[[email protected] ~]# mkdir /usr/local/zookeeper-cluster
[[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-1
[[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-2
[[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-3
[[email protected] ~]# mkdir /usr/local/zookeeper-cluster
[[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-1 [[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-2 [[email protected] ~]# cp -r zookeeper-3.4.6 /usr/local/zookeeper-cluster/zookeeper-3
(5) 配置每一个 Zookeeper 的 dataDir(zoo.cfg) clientPort 分别为 2181 2182 2183
修改/usr/local/zookeeper-cluster/zookeeper-1/conf/zoo.cfg
clientPort=2181
dataDir=/usr/local/zookeeper-cluster/zookeeper-1/data
修改/usr/local/zookeeper-cluster/zookeeper-2/conf/zoo.cfg
clientPort=2182
dataDir=/usr/local/zookeeper-cluster/zookeeper-2/data
修改/usr/local/zookeeper-cluster/zookeeper-3/conf/zoo.cfg
clientPort=2183
dataDir=/usr/local/zookeeper-cluster/zookeeper-3/data
2.1.1 配置集群
(1)在每个 zookeeper 的 data 目录下创建一个 myid 文件,内容分别是 1、2、3 。这个文件就是记录每个服务器的 ID
(2)在每一个 zookeeper 的 zoo.cfg 配置客户端访问端口(clientPort)和集群服务器 IP 列
表。
集群服务器 IP 列表如下
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882 server.3=192.168.25.140:2883:3883
解释:server.服务器 ID=服务器 IP 地址:服务器之间通信端口:服务器之间投票选举端口
原文地址:http://blog.51cto.com/13517854/2137167