实验任务一:ZooKeeper安装部署
步骤一:安装java
[root@master ~]# tar -zxvf /opt/software/jdk-8u152-linux-x64.tar.gz -C /usr/local/src
[root@master ~]# mv /usr/local/src/jdk1.8.0_152/ /usr/local/src/java
步骤二:安装ZooKeeper
解压并安装zookeeper到apps下
[root@master ~]# tar -zxf /opt/software/zookeeper-3.4.8.tar.gz -C /usr/local/src/
[root@master ~]# cd /usr/local/src/
[root@master src]# mv zookeeper-3.4.8 zookeeper
步骤三:创建ZooKeeper数据目录
data是用来传输数据的,logs是用来记录日志的
[root@master src]# mkdir /usr/local/src/zookeeper/data
[root@master src]# mkdir /usr/local/src/zookeeper/logs
实验任务二:ZooKeeper文件参数配置
步骤一:配置ZooKeeper环境变量
[root@master src]# cd ./zookeeper
[root@master zookeeper]# vi /etc/profile
添加如下配置:
#java environment(已配置)
export JAVA_HOME=/usr/local/src/java #JAVA_HOME指向JAVA安装目录
export PATH=$PATH:$JAVA_HOME/bin #将JAVA安装目录加入PATH路径
#zookeeper environment
export ZK_HOME=/usr/local/src/zookeeper
export PATH=$PATH:$ZK_HOME/bin
保存并退出
步骤二:修改zoo.cfg配置文件
首先先进入到conf目录下将zoo.cfg文件拷贝过来
[root@master zookeeper]# cd conf/
[root@master conf]# ls
configuration.xsl log4j.properties zoo_sample.cfg
[root@master conf]# cp zoo_sample.cfg zoo.cfg
[root@master conf]# vi zoo.cfg
添加并更改如下配置:
#修改
dataDir=/usr/local/src/zookeeper/data
#增加
dataLogDir=/usr/local/src/zookeeper/logs
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
//上面的IP可以换成自己的主机地址,或者换成主机名,一般我们换成主机名
保存并退出
步骤三:创建myid配置文件
[root@master conf]# cd ..
[root@master zookeeper]# cd data/
[root@master data]# echo "1" > myid
实验任务三:ZooKeeper集群启动
步骤一:分发ZooKeeper集
[root@master data]# scp -r /usr/local/src/zookeeper/ root@slave1:/usr/local/src/
[root@master data]# scp -r /usr/local/src/zookeeper/ root@slave2:/usr/local/src/
分发环境变量并使其生效
[root@master data]# scp /etc/profile root@slave1:/etc/
[root@master data]# scp /etc/profile root@slave2:/etc/
[root@master data]# source /etc/profile
[root@slave1 ~]# source /etc/profile
[root@slave2 ~]# source /etc/profile
步骤二:修改myid配置
master对应1,slave1对应2,slave2对应3
[root@master data]# cat myid
1
[root@slave1 ~]# cd /usr/local/src/zookeeper/data/
[root@slave1 data]# echo "2">myid
[root@slave1 data]# cat myid
2
[root@slave2 ~]# cd /usr/local/src/zookeeper/data/
[root@slave2 data]# echo "3">myid
[root@slave2 data]# cat myid
3
步骤三:修改ZooKeeper安装目录的归属用户为hadoop用户。
[root@master data]# chown -R hadoop:hadoop /usr/local/src/zookeeper
[root@slave1 data] # chown -R hadoop:hadoop /usr/local/src/zookeeper
[root@slave2 data] # chown -R hadoop:hadoop /usr/local/src/zookeeper
步骤四:启动ZooKeeper集群
关闭防火墙
[root@master data]# systemctl stop firewalld.service
[root@slave1 data]# systemctl stop firewalld.service
[root@slave2 data]# systemctl stop firewalld.service
关闭防火墙自启
[root@master data]# systemctl disable firewalld.service
[root@slave1 data]# systemctl disable firewalld.service
[root@slave2 data]# systemctl disable firewalld.service
同时启动三个节点的zookeeper
[root@master data]# su – hadoop
[hadoop@master root]$ cd
[hadoop@master ~]$ source /etc/profile
[hadoop@master ~]$ zkServer.sh start # ZooKeeper启动
[hadoop@slave1 root]$ cd
[hadoop@slave1 ~]$ source /etc/profile
[hadoop@slave1 ~]$ zkServer.sh start # ZooKeeper启动
[root@slave2 data]# su hadoop
[root@slave2 data]# cd
[hadoop@slave2 ~]$ source /etc/profile
[hadoop@slave2 ~]$ zkServer.sh start # ZooKeeper启动
[hadoop@master ~]$ zkServer.sh status
[hadoop@slave1 ~]$ zkServer.sh status
[hadoop@slave2 ~]$ zkServer.sh status