zookeeper 安装及集群
一、zookeeper介绍
zookeeper是一个中间件,为分布式系统提供协调服务,可以为大数据服务,也可以为java服务。
分布式系统,很多计算机组成一个整体,作为一个整体一致对外并处理同一请求,内部每台计算机都可以相互通信,客户端到服务器端的依次请求到响应结束会经历多个计算机。
特性:一致性。数据一致性,数据按照顺序分批入库,
原子性:事务要么成功要么失败
单一试图:客户端连接集群人一个节点,数据都是一致的。
可靠性:每次对zk操作状态都会保存在服务端
实时性:客户端可以独到zk服务端最新数据
二、环境安装
本博主安装环境:linux ,centos6.7, jdk1.8,zookeeper3.4.9
java环境的jdk的安装
安装之前可以先卸载掉
查看系统的jdk rpm 版本:rpm -qa | grep jdk
卸载原有的:
yum remove java-1.6.0-openjdk
yum remove java-1.7.0-openjdk
下载安装新的1.8的JDK:
官网上下载jdk-8u171-linux-i586.rpm,并拷贝的linux的home文件夹下
cd /home
cp jdk-8u171-linux-i586.rpm /usr/loacal/jdk1.8
rpm -ivh jdk-8u171-linux-i586.rpm
命令: rpm -ivh package.ix86.rpm 的意思如下:
在上面的命令中,package是个假定的名字,ix86是这个包为特定的CPU做了优化处理的意思。例如,package可能是ldconfig-1.9.5-14,而ix86是i386这样的。
“-i”参数指明是要安装这个package,而“-v”这个参数则使输出信息增加,“-h”表示在安装过程中显示hashes作为在安装过程的一个进度条。
java -version 查看安装成功。
三、zookeeper 安装及集群
我们在linux上创建三个虚拟机,如下:
从上到下对应的ip地址分别是
192.168.10.185,192.168.10.174,192.168.10.127
首先在127上进行安装。
1. 从官网下载并上传zookeeper-3.4.9.tar.gz 到linux的home目录下,在usr/local下面创建zookeeper文件夹,拷贝zookeeper3.4.9.tar.gz到zookeeper文件夹下。
2.解压 tar -zxvf zookeeper3.4.9.tar.gz,解压完成如下:
3.配置相应配置文件
1)进行zoo.cfg配置
解压后zookeeper文件夹下出现解压后的文件夹zookeeper-3.4.9。在zookeeper下创建data文件夹作为数据目录。
cd zookeeper-3.4.9/conf 修改zoo_sample.cfg文件名为zoo.cfg并vim进行编辑配置
集群配置信息格式为:server.id=host:port:port
其中,id被称为Server ID,用来标识该机器在集群中的机器序号,两个port是用来系统间通信的。
同时,在每台zookeeper机器上,我们都需要在数据目录dataDir指定的目录下创建一个myid文件,该文件只有一行内容,并且只是一个数字,即是对应的每台机器的Server ID——id。需要注意的是每台机器的myid文件中的数字不同,id的范围是1~255。
2)进行myid文件配置
进入dataDir目录下,vim myid ,然后写入id即可在dataDir下面创建了一个写入id的myid文件。
这样一台机器配置就完成了,然后为他两台机器配置zoo.cfg(完全相同)和myid(id号不同)。
四、启动服务,可以按顺序启动
启动成功。
四、集群验证
验证集群是否成功,在相应bin目录下输入 ./zkServer.sh status 命令,但是在查看状态时却 Error contacting service.it is probably not running
网上原因有可能有如下几种:
- 原因一:防火墙拦截,需要关闭防火墙
- 原因二:缺少 zookeeper 集群所需的文件(如缺少myid文件,本博主不缺)
- 原因三:zoo.cfg 配置文件中指向的路径错误(本博主检查也完全正确)
- 原因四:zookeeper 客户端端口被占用(这个可以通过命令查看,本博主确定没有运行相关占用端口的程序)
经过排除,本博主锁定原因一,
解决:关闭三台机器的防火墙 命令:service iptables stop,如下:
然后再次查看状态
192.168.10.127
192.168.10.174
192.168.10.185
至此,zookeeper集群成功。
zookeeper 安装及集群的更多相关文章
- zookeeper 安装以及集群搭建
安装环境: jdk1.7 zookeeper-3.4.10.tar.gz VM虚拟机redhat6.5-x64:192.168.1.200 192.168.1.201 192.168.1.202 ...
- Zookeeper 安装及集群配置注意点
Zookeeper在ubuntu下安装及集群搭建,关于集群搭建,网上很多文章 可以参考:https://www.ibm.com/developerworks/cn/opensource/os-cn-z ...
- zookeeper安装与集群搭建
此处以centos系统下zookeeper安装为例,详细步骤可参考官网文档:zookeeper教程 一.单节点部署 1.下载zookeeper wget http://mirrors.hust.edu ...
- zookeeper安装(集群)
Dubbo 建议使用Zookeeper 作为服务的注册中心.Zookeeper 集群中只要有过半的节点是正常的情况下,那么整个集群对外就是可用的.正是基于这个特性,要将ZK 集群的节点数量要为奇数(2 ...
- zookeeper 安装 配置集群
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ [root@znode01 src]# tar -xzvf zookeeper--alph ...
- zookeeper安装 配置集群
zookeeper下载 http://zookeeper.apache.org/releases.html. 解压 重命名 新建data log两个文件夹配置单个启动 tar -xvf zookeep ...
- ZooKeeper伪分布集群安装及使用 RMI+ZooKeeper实现远程调用框架
使用 RMI + ZooKeeper 实现远程调用框架,包括ZooKeeper伪集群安装和代码实现两部分. 一.ZooKeeper伪集群安装: 1>获取ZooKeeper安装包 下载地址:ht ...
- (转)ZooKeeper伪分布式集群安装及使用
转自:http://blog.fens.me/hadoop-zookeeper-intro/ 前言 ZooKeeper是Hadoop家族的一款高性能的分布式协作的产品.在单机中,系统协作大都是进程级的 ...
- 初识zookeeper以及安装和集群部署
初识zookeeper以及安装和集群部署 一.Zookeeper单体版安装 在安装zookeeper之前要先安装jdk环境,具体在linux环境安装jdk1.8请参照linux笔记. ...
随机推荐
- JS操作DOM节点查找
JS中常用的DOM操作事件,包括有节点查找,键盘鼠标事件等等,本文内容介绍DOM的节点查找. <script> window.onload = function(){ //children ...
- python绑定调用和非绑定调用
绑定调用和非绑定调用 在python中,绑定调用和非绑定调用其实是相对于类和实例来说的.抽象点说就是:在类实例化过程中,类的方法会绑定在实例之中,此时,这个实例会拥有这个类的具体属性和方法,这些属性和 ...
- 三 Hibernate持久化状态&主键生成策略
持久化类 持久化:将内存中的一个对象持久化到数据库中的过程 持久化类:Java类+映射文件.Java中一个类与数据库的表建立了映射关系,那么这个类称为持久化类. 持久化类的编写规则: 对持久化类提供一 ...
- Vue项目中v-for无法渲染数据
在Vue项目中,我们想要实现下面的布局效果 后端返回的数据格式如下,可以看出产品列表五张图的数据位于同一个数组中 而我的html结构如下: 我希望直接渲染左边一张大图,然后右边的四张小图通过v-for ...
- 编程练习:求某个数的n次方,返回其个位和十位
#!/usr/bin/env python def pow1(n,m): if m==0: return 1 if m==-1: return (1/n) if m & 1 != 0: ret ...
- 站在巨人的肩膀上才能看得更加远[Amo]
本来只是路过,写详细一点. 我看楼主浮躁得不得了.现在什么都不要做了,先去看几遍<不要做浮躁的嵌入式工程师>这篇文章,想清楚了,再动手吧. 我做了个实例,不用ST的库来点LED,解答你的问 ...
- Java笔记--反射机制
1.Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法. 2.Java反射机制提供 ...
- oracle,uuid为主键,插入时直接更新id
uuid为主键,插入时自动更新 -- Create table create table TECHNOLOGYCOMPANY ( ID VARCHAR2(32) default SYS_GUID() ...
- Django(一)基础:安装环境、创建项目、视图、创建一个项目的应用(app)
一.安装环境 参考: https://docs.djangoproject.com/zh-hans https://www.runoob.com/django/django-install.html ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-music
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...