本文所用环境,如果没有请结合自身环境进行搭建
- 4个hadoop节点,hadoop版本为2.7.1,主机名称分别为hadoop01、hadoop02、hadoop03、hadoop04,且ssh已经建立
- zookeeper版本为3.4.5,所存放目录为/opt/moudles下
1. 解压zookeeper
执行如下命令:
cd /opt/moudles/
tar –zxvf zookeeper-3.4.5.tar.gz
此时会生成一个zookeeper文件夹
2. 配置环境变量
执行如下命令来添加zookeeper的环境变量
vim ~/.bashrc
添加ZOOKEEPER_HOME=/opt/moudles/zookeeper-3.4.5
同时在PATH环境变量中添加$ZOOKEEPER_HOME/bin
如下图所示:
执行如下命令来讲环境变量应用到当前shell中
source ~/.bashrc
3. 配置文件修改
cd /opt/moudles/zookeeper-3.4.5/conf
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg
将dataDir=/tmp/zookeeper改为dataDir=$ZOOKEEPER_HOME/data
在尾部添加
server.0=hadoop01:2888:3888
server.1=hadoop02:2888:3888
server.2=hadoop03:2888:3888
4. 创建标识
cd /opt/moudles/zookeeper-3.4.5/
mkdir data
cd data
vim myid
只填写0,如下图所示
5. 复制
利用scp命令将zookeeper目录拷贝到hadoop02和hadoop03上,注意:由于本文中已经在将hadoop02、hadoop03的地址映射写入hosts文件,故可使用hadoop@hadoop02命令,如果没有将相应地址映射到hosts文件中,请将hadop@hadoop02中主机名hadoop02改成相应的ip地址。
cd /opt/moudles/
scp -r zookeeper-3.4.5 hadoop@hadoop02:/opt/moudles/
scp -r zookeeper-3.4.5 hadoop@hadoop03:/opt/moudles/
同时将.bashrc目录拷贝到hadoop02和hadoop03上
scp ~/.bashrc hadoop@hadoop02:~/.bashrc
scp ~/.bashrc hadoop@hadoop03:~/.bashrc
5. 修改myid
分别进入到hadoop02和hadoop03
将/opt/moudles/zookeeper-3.4.5/data中的myid文件分别改为1和2
6. 启动
分别在hadoop01,hadoop02,hadoop03三个节点上执行如下命令手动启动zookeeper
zkServer.sh start
此时执行来zkServer.sh status检测各节点zookeeper启动情况
可以看到一个leader其余均为follower
也可以用jps来检测是否有QuorumPeerMain进程