Zookeeper的单机&集群环境搭建
单机环境的安装
首先下载ZK的二进制安装包:http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.14/
将安装包上传到Linux上:
进行解压 : tar zxvf zookeeper-3.4.14.tar.gz
进行更名 : mv zookeeper-3.4.14 zookeeper
删除压缩包 :rm -rf zookeeper-3.4.14.tar.gz
进入到我们更名后的ZK文件夹内创建个文件夹 : mkdir data
进入到conf文件夹 复制一个文件且更名: cp zoo_sample.cfg zoo.cfg
对zoo.cfg文件进行编辑 vim zoo.cfg
数据文件夹dataDir指定为我们刚刚创建的那个data文件夹的路径,不要使用系统的/tmp目录作为ZK的数据目录
然后我们就可以启动服务了,在解压文件的bin目录下 :
启动服务: ./zkServer.sh start
查看状态: ./zkServer.sh status
单机的我们到这里就算是搭建完成了,用于测试环境还行,由于单机的服务都存在一个致命问题那就是单点故障问题,所以一般在生产环境中诸多这种类型的服务都是以集群的方式出现,下面我们搭建一个由三台服务器构成的的ZK集群
集群环境的搭建
在ZK集群环境下只要一般以上的机器正常启动了,那么这个集群服务就是OK 的,所以一把参与集群的机器都是单,比如5个机器,只需要3个正常就OJBK,下面我们就简单的使用三个机器搭建一下ZK的集群环境,三台机器的ip分别为如下:
192.168.159.159
192.168.159.169
192.168.159.179
和创建单机环境一莫一样的步骤,只是添油加醋
首先我们在159的机器上开动
如法炮制
zk二进制文件上传、解压、更名、参考前面单机安装
首先在解压文件下创建data文件夹,用于保存内存数据库保存的模糊快照 :mkdir data
然后就是复制并更名一个文件 :cp zoo_sample.cfg zoo.cfg
添油加醋
编辑该文件 vim zoo.cfg
第一个修改dataDir指向我们创建的data目录
第二个在下面添加如下图数据
首先解释一下添加并圈起来的数据:
sserver.1:表示这个ZK启动后,ZK的myId就是 1
后面跟对应服务器的ip
然后就是2888,这是一个连接端口号,数据通讯的时候(比如同步 )通过这个端口号进行通讯
然后就是3888,这是一个选举端口号,当选举时使用这个端口号进行通讯
创建myid文件
除了修改 zoo.cfg 配置文件,集群模式下还要配置一个文件 myid,这个文件在 dataDir 目录下,这个目录也是我们自己创建的,也就是那个data目录,这个文件里面就只有一个数据就是 刚刚配置的那个myId的值,Zookeeper 启动时会读取这个文件,拿到里面的数据与 zoo.cfg 里面的配置信息比较从而判断到底是那个server。
在创建的data文件夹内创建文件: vi myid
每个机器都键入对应myid保存退出即可 比如59的myid为1 ,69的myid为2,就是配置文件中那个myid
配置环境变量
vi /etc/profile 在末端添加如下数据
export ZOOKEEPER_HOME=/usr/local/ZK/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin:$ZOOKEEPER_HOME/conf
退出保存后进入到 /etc 目录下 执行刷新生效命令 source profile
然后就是我们三台机器的启动工作了:
服务启动:zkServer.sh start
查看状态:zkServer.sh status
三台机器的状态依次为:
这里提醒一下,防火墙我是直接关闭了的,要么你的开通那几个端口,要么直接关闭防火墙服务
集群环境到这里就算搭建完成了
Zookeeper的单机&集群环境搭建的更多相关文章
- ZooKeeper 完全分布式集群环境搭建
1. 搭建前准备 示例共三台主机,主机IP映射信息如下: 192.168.32.101 s1 192.168.32.102 s2 192.168.32.103 s3 2.下载ZooKeeper, 以 ...
- ZooKeeper 介绍及集群环境搭建
本篇由鄙人学习ZooKeeper亲自整理的一些资料 包括:ZooKeeper的介绍,我们要学习ZooKeeper的话,首先就要知道他是干嘛的对吧. 其次教大家如何去安装这个精巧的智慧品! 相信你能研究 ...
- zookeeper 单机. 集群环境搭建
zookeeper分布式系统中面临的很多问题, 如分布式锁,统一的命名服务,配置中心,集群的管理Leader的选举等 环境准备 分布式系统中各个节点之间通信,Zookeeper保证了这个过程中 数据的 ...
- 大数据 -- zookeeper和kafka集群环境搭建
一 运行环境 从阿里云申请三台云服务器,这里我使用了两个不同的阿里云账号去申请云服务器.我们配置三台主机名分别为zy1,zy2,zy3. 我们通过阿里云可以获取主机的公网ip地址,如下: 通过secu ...
- zookeeper学习之集群环境搭建
一.安装环境 zookeeper:3.4.6 JDK:1.8 linux:centos6.5 64位 主机: server0:192.168.0.224server1:192.168.0.225se ...
- zookeeper伪分布式集群环境搭建
step1.下载 下载地址:http://zookeeper.apache.org/releases.html 将下载的压缩包放到用户家目录下(其他目录也可以) step2.解压 $tar –zxvf ...
- 大数据 -- Hadoop集群环境搭建
首先我们来认识一下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式文件系统.它其实是将一个大文件分成若干块保存在不同服务器的多个节点中.通过联网 ...
- ZooKeeper 系列(二)—— Zookeeper单机环境和集群环境搭建
一.单机环境搭建 1.1 下载 1.2 解压 1.3 配置环境变量 1.4 修改配置 1.5 启动 1. ...
- ZooKeeper —— 单机环境和集群环境搭建
一.单机环境搭建 1.1 下载 下载对应版本Zookeeper,这里我下载的版本3.4.14.官方下载地址:https://archive.apache.org/dist/zookeeper/ # w ...
随机推荐
- 关于js中Ajax的同步、异步使用
下面一个简单的例子,说明前后端交互中,Ajax同步和异步的使用 1.设置简单的一个div,包含触发事件 CompanyType() <div> <input type="h ...
- Python中 将数据插入到Word模板并生成一份Word
搬运出处: https://blog.csdn.net/DaShu0612/article/details/82912064
- 新建门脸Facade类
1.App\Contract目录下新建 CommonContract 类 <?php namespace App\Contract; use Carbon\Carbon; use \Dimsav ...
- linux上文件内容去重的问题uniq/awk 正则表达过滤操作
.uniq:只会对相邻的行进行判断是否重复,不能全文本进行搜索是否重复,所以往往跟sort结合使用. 例子1: [root@aaa01 ~]# cat a.txt 12 34 56 12 [root@ ...
- Delphi实现获取句柄并发送消息的方法(FindWindow、FindWindowEx、EnumChildWindows、SendMessage)
Delphi实现获取句柄并发送消息的方法 本文以实例形式详细说明了Delphi获取句柄并发送消息的方法,具体用法说明如下: 查找另外一个窗口的句柄: handle := FindWindow(nil, ...
- 1、Locust压力测试环境搭建
环境准备:阿里云服务器一台.python2.7.pip Locust 介绍 Locust 是一个开源负载测试工具.使用 Python 代码定义用户行为,也可以仿真百万个用户. Locust 简单易用, ...
- LaTex 插入图像,以及应用表格
插入图像 参考:http://www.ctex.org/documents/latex/graphics/ 1: \includegraphics[width=20mm]{head.png} 应用表格 ...
- 剑指offer——72圆圈中最后剩下的数字
题目描述 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为牛客的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈.然后,他随机指 ...
- ActionContext 与 ServletActionContext获取Session的异同
1. ActionContext 在Struts2开发中,除了将请求参数自动设置到Action的字段中,我们往往也需要在Action里直接获取请求(Request)或会话(Session)的一些信息, ...
- 【非官方方式】获取Disconf动态更新的配置文件的值
disconf可以配置reload,当更改配置时自动刷新classpath下的配置文件.然而获取最新的值官方说明是加@DisconfFileItem注解放在属性的方法上,底层通过拦截器获取的. 但是每 ...