ZooKeeper 组件安装配置
2024-10-20 18:59:32
ZooKeeper 组件安装配置
下载和安装 ZooKeeper
ZooKeeper最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/ 来获取,安装 ZooKeeper组件需要与 Hadoop环境适配。
注意,各节点的防火墙需要关闭,否则会出现连接问题。
- ZooKeeper的安装包 zookeeper-3.4.8.tar.gz已放置在 Linux系统/opt/software目录下
- 解压安装包到指定目标,在 Master节点执行如下命令
[root@master ~]# tar -zxvf /opt/software/zookeeper-3.4.8.tar.gz -C /usr/local/src
[root@master ~]# mv /usr/local/src/zookeeper-3.4.8 /usr/local/src/zookeeper
三个节点配置时间同步
yum -y install chrony
vi /etc/chrony.conf
pool time1.aliyun.com iburst
#保存退出
systemctl enable --now chronyd
systemctl status chronyd
ZooKeeper 的配置选项
Master 节点配置
- 在 ZooKeeper的安装目录下创建 data和 logs文件夹
[root@master ~]# cd /usr/local/src/zookeeper
[root@master zookeeper]# mkdir data && mkdir logs
- 在每个节点写入该节点的标识编号,每个节点编号不同,master 节点写入 1
(slave1节点写入 2,slave2节点写入 3;后面步骤有)
[root@master zookeeper]# echo 1 > /usr/local/src/zookeeper/data/myid
- 修改配置文件 zoo.cfg
[root@master zookeeper]# cp /usr/local/src/zookeeper/conf/zoo_sample.cfg /usr/local/src/zookeeper/conf/zoo.cfg
[root@master zookeeper]# vi /usr/local/src/zookeeper/conf/zoo.cfg
#修改 dataDir参数内容如下:
dataDir=/usr/local/src/zookeeper/dat
#在 zoo.cfg文件末尾追加以下参数配置,表示三个 ZooKeeper节点的访问端口号
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
- 修改 ZooKeeper安装目录的归属用户为 hadoop用户
[root@master zookeeper]# chown -R hadoop:hadoop /usr/local/src/zookeeper
Slave 节点配置
- 从 Master节点复制 ZooKeeper安装目录到两个 Slave节点
[root@master ~] # cd ~
[root@master ~] # scp -r /usr/local/src/zookeeper slave1:/usr/local/src/
[root@master ~] # scp -r /usr/local/src/zookeeper slave2:/usr/local/src/
- 在 slave1和slave2节点上修改 zookeeper目录的归属用户为 hadoop用户
[root@slave1 ~] # chown -R hadoop:hadoop /usr/local/src/zookeeper
[root@slave2 ~] # chown -R hadoop:hadoop /usr/local/src/zookeeper
- 在 slave1和slave2节点上配置该节点的 myid为 2
[root@slave1 ~] # echo 2 > /usr/local/src/zookeeper/data/myid
[root@slave2 ~] # echo 3 > /usr/local/src/zookeeper/data/myid
系统环境变量配置
- 在 master、slave1、slave2三个节点增加环境变量配置
vi /etc/profile
# 在文件末尾追加
# set zookeeper environment
export ZOOKEEPER_HOME=/usr/local/src/zookeeper # ZooKeeper安装目录
export PATH=$PATH:$ZOOKEEPER_HOME/bin # ZooKeeper可执行程序目录
启动 ZooKeeper
启动 ZooKeeper需要使用 Hadoop用户进行操作
- 分别在 master、slave1、slave2 三个节点使用 zkServer.sh start 命令启动 ZooKeeper
#master节点
[hadoop@master ~]su – hadoop
[hadoop@master ~]source /etc/profile
# ZooKeeper启动
[hadoop@master ~] zkServer.sh start
JMX enabled by default
Jsing. config:' /usr/1oca1/src/zookeeper/bin/ ../conf/zoo.cfg
starting zookeeper . .STARTED
#slave1节点
[hadoop@slave1 ~] su – hadoop
[hadoop@slave1 ~] source /etc/profile
# ZooKeeper启动
[hadoop@slave1 ~] zkServer.sh start
JMX enabled by default
Jsing. config:' /usr/1oca1/src/zookeeper/bin/ ../conf/zoo.cfg
starting zookeeper . .STARTED
#slave2节点
[hadoop@slave2 ~] su – hadoop
[hadoop@slave2 ~] source /etc/profile
# ZooKeeper启动
[hadoop@slave2 ~] zkServer.sh start
JMX enabled by default
Jsing. config:' /usr/1oca1/src/zookeeper/bin/ ../conf/zoo.cfg
starting zookeeper . .STARTED
- 三个节点都启动完成后,再统一查看 ZooKeeper运行状态
分别在 master、slave1、slave2 三个节点使用 zkServer.sh status 命令查ZooKeeper状态。可以看到三个节点的状态分别为 follower、leader、follower。三个节点会包括一个 leader和两个 follower,每个节点地位均等,leader是根据 ZooKeeper内部算法进行选举,每个节点的具体状态不固定
#master节点状态
[hadoop@master ~]$ zkServer.sh status
JMX enabled by default
Using config: /usr/1oca1/src/zookeeper/bin/ ../conf/zoo.cfg
Mode: fo11ower # follower状态
#slave1节点状态
[hadoop@s1ave1 ~]$ zkServer.sh status
JMX enab1ed by default
Using config:' /usr/1oca1/src/zookeeper/bin/ . ./conf/zoo.cfg
Mode:1eader # leader状态
#slave2节点状态
[hadoop@s1ave2 ~]$ zkServer.sh status
JMX enabled by default
Using config:' /usr/1oca1/src/zookeeper/bin/ . ./conf/zoo.cfg
Mode: fo11ower # follower状态
最新文章
- php多版本管理phpenv
- Oracle学习之简单查询
- 20145211 《Java程序设计》第4周学习总结——园日涉以成趣
- 硬盘类型和Linux的分区
- 几款JS地图插件比较
- POJ 1225 Substrings
- Eclipse上运行Python,使用PyDev
- DirectX11 学习笔记2 - 加入关键事件 实现视角转换 旋转
- oracle.jdbc.driver.OracleDriver和oracle.jdbc.OracleDriver这两个驱动的区别
- javascript对象的标签
- 多种Timer的场景应用
- Redis五大数据类型
- 查看spark RDD 各分区内容
- go互斥锁Mutex
- Vue 实际项目中你可能会遇见问题
- C++课程学习建议
- CountDownLatch简单使用
- Fiddler可以支持Websocket抓包了
- web过滤器使用spring依赖注入
- Android 加新的页面