今天,栈长分享下 Zookeeper 的集群安装及配置。

下载

下载地址:http://zookeeper.apache.org/

下载过程就不说了,我们下载了最新的zookeeper-3.4.11

安装

1、上传安装包

把下载的最新的包(如:zookeeper-3.4.11.tar.gz)上传到服务器,上传的方式也不多说了。

2、解压

$ tar zxvf zookeeper-3.4.11.tar.gz

3、移动到/usr/local目录下

$ mv zookeeper-3.4.11 /usr/local/zookeeper

集群配置

Zookeeper集群原则上需要2n+1个实例才能保证集群有效性,所以集群规模至少是3台。

下面演示如何创建3台的Zookeeper集群,N台也是如此。

1、创建数据文件存储目录

$ cd /usr/local/zookeeper
$ mkdir data

2、添加主配置文件

$ cd conf
$ cp zoo_sample.cfg zoo.cfg

3、修改配置

$ vi zoo.cfg

先把dataDir=/tmp/zookeeper注释掉,然后添加以下核心配置。

dataDir=/usr/local/zookeeper/data
server.1=192.168.10.31:2888:3888
server.2=192.168.10.32:2888:3888
server.3=192.168.10.33:2888:3888

4、创建myid文件

$ cd ../data
$ touch myid
$ echo "1">>myid

每台机器的myid里面的值对应server.后面的数字x。

5、开放3个端口

$ sudo /sbin/iptables -I INPUT -p tcp --dport 2181 -j ACCEPT
$ sudo /sbin/iptables -I INPUT -p tcp --dport 2888 -j ACCEPT
$ sudo /sbin/iptables -I INPUT -p tcp --dport 3888 -j ACCEPT $ sudo /etc/rc.d/init.d/iptables save
$ sudo /etc/init.d/iptables restart $ sudo /sbin/iptables -L -n
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3888
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:2888
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:2181

6、配置集群其他机器

把配置好的Zookeeper目录复制到其他两台机器上,重复上面4-5步。

$ scp -r /usr/local/zookeeper test@192.168.10.32:/usr/local/

7、重启集群

$ /usr/local/zookeeper/bin/zkServer.sh start

3个Zookeeper都要启动。

8、查看集群状态

$ /usr/local/zookeeper/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

客户端连接

./zkCli.sh -server 192.168.10.31:2181

连接本机的不用带-server。

注意

如果是在单机创建的多个Zookeeper伪集群,需要对应修改配置中的端口、日志文件、数据文件位置等配置信息。

跟着栈长学 Zookeeper,可以在Java技术栈微信公众号回复关键字:Zookeeper,后续会陆续更新 Zookeeper 系列文章。

本文原创首发于微信公众号:Java技术栈(id:javastack),关注公众号在后台回复 "java" 可获取更多,转载请原样保留本信息。

Zookeeper 集群安装配置,超详细,速度收藏!的更多相关文章

  1. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例

    centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...

  2. hbase和ZooKeeper集群安装配置

    一:ZooKeeper集群安装配置 1:解压zookeeper-3.3.2.tar.gz并重命名为zookeeper. 2:进入~/zookeeper/conf目录: 拷贝zoo_sample.cfg ...

  3. Zookeeper 集群安装配置

    今天,栈长分享下 Zookeeper 的集群安装及配置. 下载 下载地址:http://zookeeper.apache.org/ 下载过程就不说了,我们下载了最新的zookeeper-3.4.11. ...

  4. 8.3.ZooKeeper集群安装配置

    1.Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式. 单机模式:Zookeeper只运行在一台服务器上,适合测试环境: 伪集群模式:就是在一台物理机上 ...

  5. zookeeper集群安装配置

    http://www.firefoxbug.net/?p=2565

  6. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  7. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  8. 集群安装配置Hadoop具体图解

    集群安装配置Hadoop 集群节点:node4.node5.node6.node7.node8. 详细架构: node4 Namenode,secondnamenode,jobtracker node ...

  9. 1、zookeeper集群安装

    前提准备3台centos7.0虚拟机 c7003:192.168.70.103 c7004:192.168.70.104 c7005:192.168.70.105 并在三台虚拟机上配置hosts为 1 ...

随机推荐

  1. jmeter用Windows电脑分布式部署

    当然,java环境.jmeter安装我这里就不说了. 使用1个controller(imac电脑),2个agent(Windows7 系统) 一.agent配置(Windows7系统) 1.电脑环境变 ...

  2. form表单上传图片文件

    import os def upload(request): if request.method == 'GET': img_list = models.Img.objects.all() retur ...

  3. 记录学习WeakReference发现的问题

    在学习ThreadLocal时发现ThreadLocalMap里的Entry使用到了WeakReference,所以重新学习WeakReference 查看相关博客例如: https://blog.c ...

  4. 别人的Linux私房菜(17)进程管理与SELinux初探

    程序在磁盘中,通过用户的执行触发.触发事件时,加载到内存,系统将它定义成进程,给予进程PID,根据触发的用户和属性,给予PID合适的权限. PID和登陆者的UID/GID有关.父进程衍生出来的进程为子 ...

  5. linux系统下部署DNS反向解析

    DNS服务概述 DNS(Domain Name System)域名系统,能够提供域名与IP地址的解析服务. 反向解析 反向解析是从IP地址到域名的解析过程.主要作用于服务器的身份验证. 部署反向解析 ...

  6. django建立管理系统之五----单页ajax数据交互

    ajax数据提交: 需求: 1. 点击ajax方式提交后数据提交到后台数据库,并且在前台实现数据更新 a.可以用刷新页面来实现数据页面的更新 对应的html,实现局部刷新(可以用刷新页面实现,例如 $ ...

  7. 【慕课网实战】七、以慕课网日志分析为例 进入大数据 Spark SQL 的世界

    用户:     方便快速从不同的数据源(json.parquet.rdbms),经过混合处理(json join parquet),     再将处理结果以特定的格式(json.parquet)写回到 ...

  8. servlet概述(作业11)

    1.什么是servlet. Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能 ...

  9. 简述Oracle IOT(Index Organized Table)

    转:http://blog.itpub.net/17203031/viewspace-744477 对关系型数据库产品(RDBMS)而言,一个重要特性就是:数据信息都被组织为二维数据表,信息的表达可以 ...

  10. python中的三种输入方式

    python中的三种输入方式 python2.X python2.x中以下三个函数都支持: raw_input() input() sys.stdin.readline() raw_input( )将 ...