ZooKeeper是一个分布式的、开放源码的分布式应用程序协调服务,为分布式应用提供一致性服务。它的设计目标是简化分布式系统的管理,保证多个节点之间的数据一致性和协调工作。ZooKeeper提供了类似文件系统的层次化命名空间,用来存储和管理元数据,确保分布式应用的高可用性和强一致性。

        在我们职业院校技能大赛的大数据赛项中平台搭建模块,Zookeeper组件是经常考察到的,所以今天小编为了帮助大家更好的备赛和交流学习,为大家分享一下Zookeeper的搭建笔记。

        大家在跟着小编搭建之前,请先保证自己虚拟机已经安装好了JDK,而且防火墙均已关闭。

        一、解压安装包到指定目录

tar -zxvf /opt/software/apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/
  • tar: 这是用于打包和解包文件的工具。tar最初是用来在磁带(tape archive)上存储文件的,但现在它广泛用于创建和操作文件系统的归档文件。

  • -zxvf: 这是tar命令的选项,用于指定操作的模式和参数。

    • z 表示使用gzip来解压文件。apache-zookeeper-3.5.7-bin.tar.gz是一个使用gzip压缩的tar归档文件。
    • x 表示解压文件。
    • v 表示在解压过程中显示文件的详细信息(verbose模式)。
    • f 表示后面跟着的是要处理的文件名。

        二、更改名称

mv apache-zookeeper-3.5.7-bin zookeeper
  • mv:这是“move”的缩写,但在这个上下文中,它更常被用来表示“rename”(重命名)。mv命令可以用来移动文件或目录到新的位置,或者仅仅改变它们的名称而不改变它们的位置。

        三、添加data和logs目录

(1)先进入到zookeeper目录下

cd /opt/module/zookeeper

(2)新建目录

mkdir data logs

        四、配置环境变量

vim /etc/profile
# 打开文件后,添加以下配置
# ZOOKEEPER_HOME
export ZK_HOME=/opt/module/zookeeper
export PATH=$PATH:$ZK_HOME/bin

        五、配置文件

(1)进入到zookeeper的conf目录下

cd /opt/module/zookeeper/conf/

(2)将zook_sample.cfg副本复制一份

cp zoo_sample.cfg zoo.cfg

(3)打开文件并修改配置

vim zoo.cfg

注意:'dataDir'配置是本来就有的,修改以下目录位置就行,'dataLogDir'在他下一行新增即可,

而下面三个‘server’配置,直接写在文件末尾(其实写哪都行,这样更美观)

dataDir=/opt/module/zookeeper/data
dataLogDir=/opt/module/zookeeper/logs
server.1=bigdata101:2888:3888
server.2=bigdata102:2888:3888
server.3=bigdata103:2888:3888
# 上面的IP可以换成自己的主机地址,或者换成主机名,一般我们换成主机名

        六、分发文件

# 分发环境变量
scp -r /etc/profile root@bigdata102:/etc/
scp -r /etc/profile root@bigdata103:/etc/
# 分发zookeeper文件
scp -r /opt/module/zookeeper/ root@bigdata102:/opt/module/
scp -r /opt/module/zookeeper/ root@bigdata103:/opt/module/

        七、启动环境变量(三台虚拟机都要启动)、分别创建myid

source /etc/profile
bigdata101中:echo '1' > /opt/module/zookeeper/data/myid
bigdata102中:echo '2' > /opt/module/zookeeper/data/myid
bigdata103中: echo '3' > /opt/module/zookeeper/data/myid

        这条命令的目的是在ZooKeeper服务器的数据目录中创建一个名为 myid 的文件,并向其中写入一个数字(不同即可)。这个数字在ZooKeeper集群中用于唯一标识每个服务器节点。

当ZooKeeper集群启动时,每个节点都能通过读取自己的 myid 文件来知道自己在集群中的唯一ID,从而正确地参与集群的协作和选举过程。

确保每个节点的 myid 文件都正确设置是非常重要的,因为错误的ID配置可能会导致集群无法正常工作或选举出错误的领导者。

        八、Zookeeper的使用

启动:zkServer.sh start // 注意:每一台虚拟机需要分别启动
停止:zkServer.sh stop
重启:zkServer.sh restart
查看状态:zkServer.sh status

        最后,zookeeper大家启动之后查看进程,不论zookeeper搭建的正确与否,他的进程都会正常显示,所以大家搭建完成之后一定要看一看zookeeper的状态,是否实现了分布式系统中的Leader选举,如果出现Error,那么即为搭建错误,需要大家根据具体情况解决。

全国职业院校技能大赛(大数据赛项)-平台搭建Zookeeper笔记-LMLPHP

全国职业院校技能大赛(大数据赛项)-平台搭建Zookeeper笔记-LMLPHP

        大家如果对全国职业院校技能大赛(今年改为世界职业技能大赛)有兴趣的话,欢迎联系小编,大家共同学习进步!!

10-06 04:13