一、centos7下安装zookeeper

1.zookeeper 下载地址

https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

2.安装步骤

前提:安装 jdk 和 JAVA_HOME

第一步:解压缩 zookeeper 安装包

[root@VM_0_11_centos ~]# mkdir zookeeper
[root@VM_0_11_centos ~]# tar -zxvf apache-zookeeper-3.5.-bin.tar.gz -C zookeeper/

第二步:进入 zookeeper/apache-zookeeper-3.5.5-bin/conf 目录,修改配置文件把zoo_sample.cfg改名为zoo.cfg


[root@VM_0_11_centos conf]# cp zoo_sample.cfg zoo.cfg

第三步:创建数据文件目录

[root@VM_0_11_centos zookeeper]# mkdir datadir
[root@VM_0_11_centos zookeeper]# ls
apache-zookeeper-3.5.-bin datadir
[root@VM_0_11_centos zookeeper]# cd datadir/
[root@VM_0_11_centos datadir]# pwd
/root/zookeeper/datadir

第四步:修改 zoo.cfg 文件

tickTime=
initLimit=
syncLimit=
dataDir=/root/zookeeper/datadir
clientPort=

保存退出

3.启动

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# ls
bin docs LICENSE.txt README.md
conf lib NOTICE.txt README_packaging.txt
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /root/zookeeper/apache-zookeeper-3.5.-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#

在运行完第一条指令之后,会出现一些错误异常,产生异常信息的原因是由于Zookeeper 服务的每个实例都拥有全局配置信息,他们在启动的时候会随时随地的进行Leader选举操作。此时,第一个启动的Zookeeper需要和另外两个 Zookeeper实例进行通信。但是,另外两个Zookeeper实例还没有启动起来,因此就产生了这的异样信息。我们直接将其忽略即可,待把图中“2 号”和“3号”Zookeeper实例启动起来之后,相应的异常信息自然会消失。

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Client port found: . Client address: localhost.
Error contacting service. It is probably not running.

4.查看进程状态

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# jps
Jps
QuorumPeerMain
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#

5.启动客户端

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkCli.sh

二、zookeeper 集群的搭建

前言:本次集群是在一台服务器上搭建的在,一台机器上部署了3个 server,需要注意的是在集群为分布式模式下我们使用的每个配置文档模拟一台机器,也就是说单台机器及上运行多个 Zookeeper 实例。但是,必须保证每个配置文档的各个端口号不能冲突,除了 clientPort 不同之外,dataDir 也不同。另外,还要在 dataDir 所对应的目录中创建 myid 文件来指定对应的 Zookeeper 服务器实例。

1.创建必要目录与文件

Zookeeper集群中,每一个节点都需创建data目录、dataLog目录以及myid文件。

1).先创建节点文件

[root@VM_0_11_centos zookeeper]# mkdir server1
[root@VM_0_11_centos zookeeper]# mkdir server2
[root@VM_0_11_centos zookeeper]# mkdir server3

2).创建每个节点所必须的data目录、dataLog目录以及myid文件

[root@VM_0_11_centos zookeeper]# cd server1
[root@VM_0_11_centos server1]# mkdir data
[root@VM_0_11_centos server1]# pwd
/root/zookeeper/server1
[root@VM_0_11_centos server1]# mkdir dataLog
[root@VM_0_11_centos server1]# pwd
/root/zookeeper/server1
[root@VM_0_11_centos server1]# cd data
[root@VM_0_11_centos data]# echo > myid
[root@VM_0_11_centos data]# ls
myid
[root@VM_0_11_centos data]#

其他的节点文件和这个类似,只是 server1 的 myid 文件里面是1 ,而 server2 的 myid 文件里面是2,而 server3 的 myid 文件里面是3。其值为后续zoo.cfg中配置的第几号服务器。

2.修改 zoo.cfg 文件

tickTime=
initLimit=
syncLimit=
dataDir=/root/zookeeper/server1/data
dataLogDir=/root/zookeeper/server1/dataLog
clientPort=
server.=127.0.0.1::
server.=127.0.0.1::
server.=127.0.0.1::

3.创建 zoo2.cfg 和 zoo3.cfg 文件

[root@VM_0_11_centos conf]# ls
configuration.xsl zoo.cfg
log4j.properties zoo_sample.cfg
[root@VM_0_11_centos conf]# cp zoo.cfg zoo2.cfg
[root@VM_0_11_centos conf]# cp zoo.cfg zoo3.cfg
[root@VM_0_11_centos conf]# ls
configuration.xsl zoo2.cfg zoo.cfg
log4j.properties zoo3.cfg zoo_sample.cfg
[root@VM_0_11_centos conf]#

4.根据第三步修改 zoo2.cfg 和 zoo3.cfg 配置文件

clientPort=2182
dataDir=/root/zookeeper/server2/data
dataLogDir=/root/zookeeper/server2/dataLog
clientPort=2183
dataDir=/root/zookeeper/server3/data
dataLogDir=/root/zookeeper/server3/dataLog

5.启动服务

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh start conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Starting zookeeper ... FAILED TO START
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#

6.查看服务的状态

[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Client port found: . Client address: localhost.
Mode: follower
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo.cfg
Client port found: . Client address: localhost.
Mode: follower
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]# bin/zkServer.sh status conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Client port found: . Client address: localhost.
Mode: leader //2号节点是 leader 节点
[root@VM_0_11_centos apache-zookeeper-3.5.-bin]#

centos7下安装zookeeper&zookeeper集群的搭建的更多相关文章

  1. centos7下安装部署mongodb集群(副本集模式)

    环境需求:Mongodb集群有三种模式:  Replica Set, Sharding,Master-Slaver.  这里部署的是Replica Set模式. 测试环境: 这里副本集(Replica ...

  2. Linux(Centos7)下redis5缓存服务集群分布式搭建

    注意:可以查看Redis官网查看集群搭建方式,连接如下 https://redis.io/topics/cluster-tutorial 集群中应该至少有三个节点,每个节点有一备份节点.需要6台服务器 ...

  3. ZooKeeper伪集群环境搭建

    1.从官网下载程序包. 2.解压. [dev@localhost software]$ tar xzvf zookeeper-3.4.6.tar.gz 3.进入zookeeper文件夹后创建data文 ...

  4. centos7.8 安装部署 k8s 集群

    centos7.8 安装部署 k8s 集群 目录 centos7.8 安装部署 k8s 集群 环境说明 Docker 安装 k8s 安装准备工作 Master 节点安装 k8s 版本查看 安装 kub ...

  5. zookeeper伪集群的搭建

    由于公司服务器数量的限制,我们往往没有那么多的服务器用来搭建zookeeper的集群,所以产生了伪集群的搭建,也就是将多个zookeeper搭建在同一台机器上. 准备工作: 1,一台服务器,我们这里用 ...

  6. Hadoop+HBase+ZooKeeper分布式集群环境搭建

    一.环境说明 集群环境至少需要3个节点(也就是3台服务器设备):1个Master,2个Slave,节点之间局域网连接,可以相互ping通,下面举例说明,配置节点IP分配如下: Hostname IP ...

  7. Zookeeper服务器集群的搭建与操作

    ZooKeeper 作用:Zookeeper 可以用来保证数据在zk集群之间的数据的事务性一致(原子操作). 介绍:Zookeeper 是 Google 的 Chubby一个开源的实现,是 Hadoo ...

  8. 【Zookeeper】集群环境搭建

    一.概述 1.1 Zookeeper的角色 1.2 Zookeeper的读写机制 1.3 Zookeeper的保证 1.4 Zookeeper节点数据操作流程 二.Zookeeper 集群环境搭建 2 ...

  9. zookeeper以及集群的搭建

    今天我来写一写zookeeper集群的搭建流程 1.zookeeper的搭建不难,难的是对他的理解以及良好的使用.单机版的zookeeper只需要解压后直接命令 启动即可 解压zookeeper,ta ...

  10. redis安装、测试&集群的搭建&踩过的坑

    1 redis的安装 1.1   安装redis 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc- ...

随机推荐

  1. python多进程——fork()

    简介    程序每次执行时,操作系统都会创建一个新进程来运行程序指令.进程中可调用os.fork,要求操作系统新建一个子进程.[Windowsc系统中,os模块没有os.fork函数]. 每个进程都有 ...

  2. wordpress通过$wpdp更新数据表内容

    如下面的代码 更新id为1的数据 table 指的是要更新的数据表 第一个数组 array( 'column1' => 'value1', 'column2' => 'value2' ) ...

  3. Andrew Ng机器学习课程13

    Andrew Ng机器学习课程13 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 引言:主要从一般的角度介绍EM算法及其思想,并推导了EM算法的收敛性.最后 ...

  4. [转帖]redis知识点总结

    redis面试常问知识点总结 https://www.toutiao.com/i6740199554127233543/ 原创 波波说运维 2019-10-02 00:01:00 概述 今天主要分享一 ...

  5. .NET细节知识总结,不断更新

    1.catch (Exception)和catch (Exception e) Exception 类包含许多子类 程序执行的时候要将每一个类都搜索一遍 以找到符合的异常类 这样是蛮消耗资源的 影响效 ...

  6. 【转】SpringMVC框架实现后端向前端传数据

    首先还是页面userAdd.jsp.它既是发出请求的页面,也是接收返回结果的页面: <%@ page language="java" import="java.ut ...

  7. idea2019开发第一个java程序HelloWorld

    用idea2019开发第一个java程序: (idea破解不在本讲义范围之内) 新手建议忽略此部分,先把eclipse用熟.技术是一样的.idea缺省配置是黑色的,很晃眼,可以(Files/setti ...

  8. C++ 日志库 boost::log 以及 glog 的对比

    日志能方便地诊断程序原因.统计程序运行数据,是大型软件系统必不可少的组件之一.本文将从设计上和功能上对比 C++ 语言常见的两款日志库: boost::log 和 google-glog . 设计 b ...

  9. python学习-16 列表list

    list 1.由[ ]括住,中括号内各元素由逗号隔开,各元素可以是数字,字符串,列表,布尔值等等. 例如: li = [521,"love",["john",& ...

  10. 关联安装 mysql ,zabbix , nginx, php

    /usr/local/zabbix-3.2.6 /usr/local/php-5.6.3 /usr/local/mysql-5.7.26 安装mysql mv /etc/yum.repos.d/Cen ...