Hadoop学习笔记-006-CentOS_6.5_64_HA高可用-安装Zookeeper3.4.5

参考:http://blog.csdn.net/u010270403/article/details/51444677

虚拟机中共五个centos系统,每个系统有两个用户root和hadoop:cdh1,cdh2,cdh3,cdh4,cdh5

集群规划

第一步,切换到hadoop的家目录下,把已经下载好的zookeeper放到/home/hadoop/app目录下并解压(以cdh3为例)

# tar zxvf zookeeper-3.4.5-cdh5.4.5.tar.gz

第二步,删除zookeeper的压缩文件

# rm -rf zookeeper-3.4.5-cdh5.4.5.tar.gz

第三步,配置环境变量

# vi /home/hadoop/.bash_profile

添加:

export ZOOKEEPER_HOME=/home/hadoop/app/zookeeper-3.4.5-cdh5.4.5
export PATH=$PATH:$ZOOKEEPER_HOME/bin

第四步,使环境变量文件即时生效

# source /home/hadoop/.bash_profile

第五步,修改Zookeeper中的配置文件

在zookeeper/conf目录下,复制zoo_sample.cfg  

#cp zoo_sample.cfg zoo.cfg

修改zoo.cfg文件的配置 

#vi zoo.cfg

注释掉dataDir=/tmp/zookeeper

添加以下内容:

#数据文件目录与日志目录 

dataDir=/home/hadoop/data/zookeeper/zkdata 

dataLogDir=/home/hadoop/data/zookeeper/zkdatalog

#server.服务编号=主机名称:Zookeeper不同节点之间同步和通信的端口:选举端口(选举leader) 

server.1=cdh3:2888:3888 

server.2=cdh4:2888:3888 

server.3=cdh5:2888:3888

第六步,在cdh1上把~/tools目录拷贝到cdh3 

#scp –r ~/tools/ hadoop@cdh3:~/

在cdh3查看是否拷贝成功

第七步,在cdh3上通过命令deploy.sh将Zookeeper安装目录拷贝到cdh4、cdh5

查看cdh4的~/app目录

在cdh3的~/tools目录下执行deploy.sh批处理命令 

# ./deploy.sh ~/app/zookeeper-3.4.5-cdh5.4.5 ~/app/ zookeeper

验证cdh4的~/app目录

第八步,在cdh3上通过远程命令runRemoteCmd.sh在所有的zookeeper节点(cdh3、cdh4、cdh5)上面创建数据目录和日志目录

数据目录:

#./runRemoteCmd.sh "mkdir -p ~/data/zookeeper/zkdata" zookeeper

日志目录:

#./runRemoteCmd.sh "mkdir -p ~/data/zookeeper/zkdatalog" zookeeper

在cdh3的~/tools目录下执行以上批处理命令

在cdh3和cdh4上验证是否创建成功

第九步,分别在cdh3、cdh4、cdh5上的~/data/zookeeper/zkdata目录下,创建文件myid,里面的内容分别填充为:1、2、3,以cdh3为例  

#vi myid

创建myid

添加id编号

第十步,将cdh3下的环境变量配置文件复制到其他节点上

# ./deploy.sh ~/.bash_profile ~/ zookeeper

查看cdh4的.bash_profile文件

在cdh3的~/tools目录下执行# ./deploy.sh ~/.bash_profile ~/ zookeeper

在cdh4查看.bash_profile配置文件 

#cat ~/.bash_profile

第十一步,分别在每台机器上执行source ~/.bash_profile使环境变量生效(批处理文件不能使之生效,要一个一个节点执行), 以cdh4为例

第十二步,在cdh3的~/tools目录下用runRemoteCmd.sh 脚本,启动所有节点(cdh3、cdh4、cdh5)上面的Zookeeper  

#./runRemoteCmd.sh "~/app/zookeeper-3.4.5-cdh5.4.5/bin/zkServer.sh start" zookeeper

第十三步,在cdh3的~/tools目录下用runRemoteCmd.sh查看所有节点(cdh3、cdh4、cdh5)是否启动QuorumPeerMain进程 

#./runRemoteCmd.sh "jps" zookeeper

第十四步,在cdh3的~/tools目录下用runRemoteCmd.sh查看所有节点(cdh3、cdh4、cdh5)状态 

#./runRemoteCmd.sh "~/app/zookeeper-3.4.5-cdh5.4.5/bin/zkServer.sh status" zookeeper

如果一个节点为leader,另2个节点为follower,则说明Zookeeper安装成功。

完成!

原文地址:https://www.cnblogs.com/liudi1992/p/6343387.html