ZooKeeper集群安装

ZooKeeper集群安装

大家好,又见面了,我是全栈君。

ZooKeeper是Apache提供的。分布式服务协调系统,应用比較广泛。

由于项目中使用Kafka MQ,而Kafka全然使用ZooKeeper实现Kafka各组件的服务协调,包含Broker、Consumer等。

文档中的Linux命令,以#開始的为root用户的操作。以$開始的为zk用户的操作。

创建zk用户

# groupadd zk

# useradd -g zk zk

# passwd zk

准备安装文件夹

  • 创建ZooKeeper数据存储文件夹:

# mkdir -p /data/zookeeper

# chown -R zk:zk/data/zookeeper

  • 通过zk用户创建数据和日志文件夹:

$ mkdir/data/zookeeper/data

$ mkdir /data/zookeeper/log

安装ZooKeeper

  • 解压缩ZooKeeper二进制包:

# cd /usr/local/src

# tar -zxvfzookeeper-3.4.6.tar.gz -C /usr/local/

# chown -R zk:zk /usr/local/zookeeper-3.4.6

  • 改动ZooKeeper配置文件:

$ cd/usr/local/zookeeper-3.4.6/conf                 

$ cp zoo_sample.cfg zoo.cfg

$ vi zoo.cgf

改动配置见下图。包含dataDir, dataLogDir及三个ZooKeeper的server列表。

ZooKeeper集群安装

$ vi log4j.properties

改动zookeeper.log.dir,配置见下图,

ZooKeeper集群安装

  • 创建ZooKeeperServerId文件

在ZooKeeper的data文件夹中创建名称为myid文件,内容为ServerId编号,如上配置文件里,三台的ZooKeeper的myid内容分布为1, 2, 3。

$ cd /data/zookeeper/data

$ cat > myid

输入
1
,按
Enter
键,再按
Ctrl+d
结束。

  • 改动zk用户的环境变量:

$ vi ~/.bash_profile

在文件里添加红框部分:

ZooKeeper集群安装

$source ~/.bash_profile

反复以上步骤。安装ZooKeeper到另外2台。构建一个三台的ZooKeeper集群。

启动ZooKeeper

集群中的全部ZooKeeper都能够通过以下的命令启动:

$ zkServer.sh start

正常情况下显示:

JMX enabled by default

Using config:/usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg

Starting zookeeper … STARTED

通过以下的命令查看ZooKeeper是否启动成功:

$ zkServer.sh status

假设启动成功,则Leader的机器上显示:

ZooKeeper集群安装

在Follower的机器上显示:

ZooKeeper集群安装

停止

$ zkServer.sh stop

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116615.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 计算机无线键盘没反应,电脑连接无线键盘没反应怎么办

    计算机无线键盘没反应,电脑连接无线键盘没反应怎么办现在越来越多小伙伴使用无线键盘,没有线的束缚,操作起来比较灵活。可以离开电脑一点距离也能使用,所以深受大家的喜爱。使用时间久了,会出现一些故障问题,比如无线键盘没反应,怎么办?今天小编教大家来解决。方法一、我们要采用排除法,首选我们先做最基本的事情,就是换电池,而且以后我们遇到这个问题首先想到的就是会不会电池没电了导致没反应,所以换电池是排除法的第一个。如果换了电池还是不行,那么把无线键盘和接收器…

    2022年5月20日
    158
  • 修改表名列名mysql_怎么修改mysql的表名和列名?

    修改表名列名mysql_怎么修改mysql的表名和列名?在mysql中,可以通过“ALTERTABLE旧表名RENAME新表名;”语句来修改表名,通过“ALTERTABLE表名CHANGE旧字段名/列名新字段名/列名新数据类型;”语句来修改列名。修改mysql的表名MySQL通过ALTERTABLE语句来实现表名的修改,语法规则如下:ALTERTABLERENAME[TO];其中,TO为可选参数,使用与否均不影…

    2022年5月17日
    41
  • es6模板字符串和占位符${}「建议收藏」

    es6模板字符串和占位符${}「建议收藏」描述:  模板字符串使用反引号()来代替普通字符串中的用双引号和单引号。模板字符串可以包含特定语法(KaTeXparseerror:Expected’EOF’,got’&’atposition20:…ression})的占位符。&̲emsp; &ems…{}放变量…

    2022年8月21日
    17
  • 启动嵌入式间:资源有限的系统启动

    启动嵌入式间:资源有限的系统启动

    2022年1月10日
    40
  • QXDM打印高通sensor 日志问题总结

    QXDM打印高通sensor 日志问题总结在使用QXDM打印高通sensor日志的时候,经常会发现有些赋予已经权限很高的log居然打印不出来,这就个代码的追踪带来了一系列困难,鉴于此,我研究了一下高通中log打印问题,给大家今后的使用带来一些经验。在高通的关于日志的头文件定义中,许多日志是默认不打开的,研究代码:#if(BUILD_DRAGON_BOARD)&&(DEBUG_DATA)#defineLSM6DSM_DATA_M

    2022年9月29日
    2
  • 国内公共DNS_网速快的DNS

    国内公共DNS_网速快的DNS中国互联网络中心(推荐,安全又快速):1.2.4.8、210.2.4.8、101.226.4.6(电信及移动)、123.125.81.6(联通)阿里DNS:223.5.5.5、223.6.6.6googleDNS(不推荐,容易掉包,还很慢):8.8.8.8、8.8.4.4openDNS:208.67.222.222208.67.220.220208.67.222.220208.67….

    2025年9月24日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号