码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Zookeeper - 集群搭建


    目录

    一、配置参数

    二、启动集群

    三、丢脸的至暗时刻

    咱们来把一直是错的目录名字改一下。。。

    四、Shell脚本一键启动、关闭集群


    上一篇已经结束了单台Zookeeper的本地安装(Zookeeper - 本地安装与参数配置)和Hadoop集群的搭建,强烈建议去看一眼里面的xsync,在此篇会大量应用(Hadoop 3.x - 本地安装 & 完全分布式安装 & 集群配置 & xsync分发脚本(解决root用户启动Hadoop集群的报错问题)),这篇咱们来看看Zookeeper的集群安装。这回咱们上了三台服务器来搭建zk的集群:


    一、配置参数

    建议先去看上一篇的本地安装,这样方便与本篇文章一起操作:Zookeeper - 本地安装与参数配置

    咱们在之前的本地安装中创建了一个 zkData 目录,咱们进入这个目录进行集群的配置:

    创建一个叫 myid 的文件,这个名字是固定的,不要进行更改:

    1. touch myid
    2. echo '2' > myid

    没错这里只要写一个 2 在里面就可以了。这里可以看眼下面的图,咱们这台服务器叫做 102 所以咱们给这里的文件配置了一个 2 ,以此类推,后面的 103 和 104 就分别为 3 和 4 。这个 myid 是唯一的身份标识,所以不能重复使用。

    创建完成后使用 xsync 进行同步分发,没有这个脚本的可以去看下Hadoop 3.x - 本地安装 & 完全分布式安装 & 集群配置 & xsync分发脚本(解决root用户启动Hadoop集群的报错问题)

    此篇中有提到过该脚本:

    xsync /opt/module/zookpeer-3.5.7/
    

    然后咱们需要立刻去 103 和104 机器中修改myid:

    然后回到咱们的 102 机器上继续进行配置:

    1. cd /opt/module/zookpeer-3.5.7/conf
    2. vim zoo.cfg

    把以下内容复制粘贴到文件的末尾:

    1. server.2=hadoop102:2888:3888
    2. server.3=hadoop103:2888:3888
    3. server.4=hadoop104:2888:3888

    这个玩意儿是啥意思呢,咱们来看看

    server.2=hadoop102:2888:3888:拿这个来举例,就按颜色来划分:

    server.2=hadoop102:2888:3888:表示这是第几号服务器

    server.2=hadoop102:2888:3888:服务器地址

    server.2=hadoop102:2888:3888:服务器 Follower 与集群中的 Leader 服务器交换信息的端口

    server.2=hadoop102:2888:3888:万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口

    保存退出后分发一下:

    xsync zoo.cfg


    二、启动集群

    在 102 机器中启动zk集群:

    cd /opt/module/zookpeer-3.5.7/bin
    
    ./zkServer.sh start

     查看一下状态:

    ./zkServer.sh status

    很明显集群并没有起来,原因是咱们只启动了一台 102 ,启动的台式少于一半,所以集群启动失败,咱们去 103 和 104 上面都启动一下:

    1. cd /opt/module/zookpeer-3.5.7/bin
    2. ./zkServer.sh start

    然后咱们看看他们的状态:

    ./zkServer.sh status

    102:follower

    103:leader

    104:follower

    启动成功 


    三、丢脸的至暗时刻

    咱们来把一直是错的目录名字改一下。。。

    102:

    vim /opt/module/zookeeper-3.5.7/conf/zoo.cfg 
    

    改一下路径位置:  

    mv /opt/zookpeer /opt/zookeeper
    xsync /opt/zookeeper

    103 & 104:

    rm -rf /opt/zookpeer

    最后的最后记得修改一下 myid , 103 :

    echo '3' > /opt/module/zookeeper-3.5.7/zkData/myid 

    104:

    echo '4' > /opt/module/zookeeper-3.5.7/zkData/myid 

    四、Shell脚本一键启动、关闭集群

    1. #!/bin/bash
    2. case $1 in
    3. "start"){
    4. for i in hadoop102 hadoop103 hadoop104
    5. do
    6. echo ---------- zookeeper $i 启动 ------------
    7. ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
    8. done
    9. };;
    10. "stop"){
    11. for i in hadoop102 hadoop103 hadoop104
    12. do
    13. echo ---------- zookeeper $i 停止 ------------
    14. ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
    15. done
    16. };;
    17. "status"){
    18. for i in hadoop102 hadoop103 hadoop104
    19. do
    20. echo ---------- zookeeper $i 状态 ------------
    21. ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
    22. done
    23. };;
    24. esac

    用一下看看(我这里是加了环境变量,平常按照正常脚本运行即可):

    zk.sh start

    zk.sh status

    zk.sh stop

  • 相关阅读:
    C++基础知识记录
    EFCore常规操作生成的SQL语句一览
    Lua函数
    【C语言】循环语句详解
    自动化测试教程(20)了解PageObject模式
    Math对象
    猿创征文 |简单入门 redis6【基础命令】
    两个list中存放相同的对象,一个是页面导入,一个是从数据库查询,外部传入一个集合存放的是对象的属性名称,根据属性名称处理两个list
    LeetCode每日一题(2014. Longest Subsequence Repeated k Times)
    【设计模式】使用建造者模式组装对象并加入自定义校验
  • 原文地址:https://blog.csdn.net/Trollz/article/details/126657569
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号