zookeeper 集群

zookeeper 集群

1、zookeeper 集群说明

initLimit 是Zookeeper用它来限定集群中的Zookeeper服务器连接到Leader的时限
syncLimit 限制了follower服务器与leader服务器之间请求和应答之间的时限
服务器名称与地址:集群信息(服务器编号,服务器地址,LF通信端口,选举端口)
这个配置项的书写格式比较特殊,规则如下:server.N=YYY:A:B 其中,
N表示服务器编号,
YYY表示服务器的IP地址,
A为LF通信端口,表示该服务器与集群中的leader交换的信息的端口。
B为选举端口,表示选举新leader时服务器间相互通信的端口(当leader挂掉时,其余服务器会相互通信,选择出新的leader)

一般来说,集群中每个服务器的A端口都是一样,每个服务器的B端口也是一样。
下面是一个集群的例子:

server.0=233.34.9.144:2008:6008  
server.1=233.34.9.145:2008:6008  
server.2=233.34.9.146:2008:6008
server.3=233.34.9.147:2008:6008  

但是当所采用的为伪集群时,IP地址都一样,只能是A端口和B端口不一样。
下面是一个伪集群的例子:

server.0=127.0.0.1:2008:6008
server.1=127.0.0.1:2007:6007
server.2=127.0.0.1:2006:6006
server.3=127.0.0.1:2005:6005

2、搭建集群

2.1 拷贝赋值

zookeeper-3.4.14.tar.gz解压后拷贝到/opt目录下并重新名为zk01。

[root@localhost myzookeeper]# mv zookeeper-3.4.14.tar.gz /opt/ 
[root@localhost opt]# tar -zxvf zookeeper-3.4.14.tar.gz
[root@localhost opt]# mv zookeeper-3.4.14 zk01

2.2 在zk01中的创建mydata文件夹

[root@localhost zk01]# mkdir mydata

2.3 新建zoo.cfg

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

2.4 修改zoo.cfg配置文件

在这里插入图片描述

server.1=127.0.0.1:2991:3991
server.2=127.0.0.1:2992:3992
server.3=127.0.0.1:2993:3993

2.5 创建myId文件

在zk01的 mydata下面创建myid的文件,在里面写入server的数字
表示1号服务器

# vim myid

里面写1 然后退出并保存
在这里插入图片描述

为了确保zk01 正确,我们可以启动测试一下
在这里插入图片描述

关闭当前的zk01 服务

[root@localhost opt]# kill -9 4060

2.6 将zk01 赋值两份分别为zk02,zk03

[root@localhost opt]# cp -r zk01 zk02
[root@localhost opt]# cp -r zk01 zk03

2.7 修改zk02,zk03的zoo.cfg,myid配置文件

#zk02
[root@localhost opt]# vim zk02/conf/zoo.cfg
在这里插入图片描述

[root@localhost opt]# vim zk02/mydata/myid 

在这里插入图片描述

#zk03

[root@localhost opt]# vim zk03/conf/zoo.cfg 

在这里插入图片描述

 
[root@localhost opt]# vim zk03/mydata/myid

在这里插入图片描述

2.8 启动集群

# vim startup.sh
/opt/zk01/bin/zkServer.sh start
/opt/zk02/bin/zkServer.sh start
/opt/zk03/bin/zkServer.sh start
:wq 
# chmod +x startup.sh
./startup.sh
查看进程
# ps –ef |grep zookeeper
2.9 使用客户端链接集群
[root@localhost opt]# ./zk01/bin/zkCli.sh -server 127.0.0.1:2191

在客户端2191 中添加节点
在这里插入图片描述

在客户端2192中查询
在这里插入图片描述

2.10 查看节点的状态

[root@localhost opt]# ./zk01/bin/zkServer.sh status

在这里插入图片描述

2.11 集群主机宕机情况测试

测试1:主机宕机./zk02/bin/zkServer.sh stop[root@localhost opt]# ./zk01/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk01/bin/../conf/zoo.cfgMode: follower[root@localhost opt]# ./zk02/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk02/bin/../conf/zoo.cfgError contacting service. It is probably not running.[root@localhost opt]# ./zk03/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk03/bin/../conf/zoo.cfgMode: leader[root@localhost opt]# 3号上位!create /test01 test0113都有数据。
测试2:主机活了./zk02/bin/zkServer.sh start[root@localhost opt]# ./zk02/bin/zkServer.sh startZooKeeper JMX enabled by defaultUsing config: /opt/zk02/bin/../conf/zoo.cfgStarting zookeeper ... STARTED[root@localhost opt]# ./zk01/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk01/bin/../conf/zoo.cfgMode: follower[root@localhost opt]# ./zk02/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk02/bin/../conf/zoo.cfgMode: follower[root@localhost opt]# ./zk03/bin/zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /opt/zk03/bin/../conf/zoo.cfgMode: leader[root@localhost opt]# 查看2号机是否有数据同步?[zk: 127.0.0.1:2192(CONNECTED) 0] ls /[zookeeper, test, test01]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/66794.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Blender界面学习03 原点、鼠标所在位置的缩放与旋转

物体的坐标原点可以移动 放大缩小时默认是屏幕中央,修改为鼠标在哪儿就缩放哪儿 默认旋转时围绕屏幕的中心 可以修改为指定对象旋转

【网络教程】群晖轻松设置钉钉机器人使用Webhook发送通知消息,分分钟搞定!

文章目录 准备设置相关链接准备 演示环境:群晖DSM7.2(其他版本操作雷同)需要提前准备好你的钉钉机器人webhook链接,如果你还不会设置/获取,请点击 参考这篇文章 或自行某度设置 打开群晖,进入控制面板 —> 通知设置 —> Webhooks,如下图 然后点击新增,提供商选择…

使用栈检查括号的合法性 C 实现

使用栈检查括号的合法性 思路讲解:首先从数组数组0下标开始,如果是左括号直接无脑压入栈,直到出现右括号开始判断合法与否。遇到右括号分两种情况,第一种是空栈的情况,也就是说我们第一个字符就是右括号,那…

应用于伺服电机控制、 编码器仿真、 电动助力转向、发电机、 汽车运动检测与控制的旋变数字转换器MS5905P

MS5905P 是一款 12bit 分辨率的旋变数字转换器。 片上集成正弦波激励电路,正弦和余弦允许输入峰峰值 幅度为 2.3V 到 4.0V ,可编程激励频率为 10kHz 、 12kHz 、 15kHz 、 20kHz 。 转换器可并行或串行输出角度 和速度对应的数字量。 MS5905…

C++字符串详解

C++ 大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的 string 类。string 类处理起字符串来会方便很多,完全可以代替C语言中的字符数组或字符串指针。 string 是 C++ 中常用的一个类,它非常重要,我们有必要在此单独讲解一下。 使用 string 类需要包…

[论文笔记]SiameseNet

引言 这是Learning Text Similarity with Siamese Recurrent Networks的论文笔记。 论文标题意思是利用孪生循环神经网络学习文本相似性。 什么是孪生神经网络呢?满足以下两个条件即可: 输入是成对的网络结构和参数共享(即同一个网络)如下图所示: 看到这种图要知道可能代…

java八股文面试[多线程]——线程的状态

5种状态一般是针对传统的线程状态来说(操作系统层面) 6种状态:Java中给线程准备的 NEW:Thread对象被创建出来了,但是还没有执行start方法。 RUNNABLE:Thread对象调用了start方法,就为RUNNABLE状…

weblogic/CVE-2018-2894文件上传漏洞复现

启动docker环境 查看帮助文档 环境启动后,访问http://your-ip:7001/console,即可看到后台登录页面。 执行docker-compose logs | grep password可查看管理员密码,管理员用户名为weblogic,密码为lFVAJ89F 登录后台页面,…

实现远程访问Linux堡垒机:通过JumpServer系统进行安全的服务器管理

文章目录 前言1. 安装Jump server2. 本地访问jump server3. 安装 cpolar内网穿透软件4. 配置Jump server公网访问地址5. 公网远程访问Jump server6. 固定Jump server公网地址 前言 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpS…

万字解读 Android 车机核心 :CarService 的构成和链路~

前言 关于 Android 车机,之前分析过方控上自定义按键的输入机制和中控上旋钮输入的原理,但都局限于 Car Service 内 Input 相关模块。 一文了解 Android 车机如何处理中控的旋钮输入从实体按键看 Android 车载的自定义事件机制 本文将结合 Android 系…

软件架构模式+系统架构

架构模式对比 分层模式 一般信息系统中最常见的4层划分如下: Presentation layer 表示层(也就是UI层)Application layer 应用层(也就是服务层)Business logic layer 业务逻辑层(也就是领域层)…

Python 没有 pip 包问题解决

最近需要搞一个干净的Python,从官网上直接下载解压可用的绿色版,发现无法正常使用PiP 一 官网下载Python https://www.python.org/downloads/ 选择 embeddable package,这种是免安装的包,解压后可以直接使用。 二 配置环境变量 添加环境变量&#xff1a…

组合导航相关技术(概念版)

重要说明:本文从网上资料整理而来,仅记录博主学习相关知识点的过程,侵删。 一、参考资料 b站视频:武汉大学研究生组合导航课程合集【2022年春】 资料下载:组合导航算法讲义 二、知识储备 1. 滤波器 滤波&#xf…

leetcode 1859.将句子排序

⭐️ 题目描述 &#x1f31f; leetcode链接&#xff1a;将句子排序 代码&#xff1a; class Solution { public:string sortSentence(string s) {vector<string> record;record.resize(9);string curString;for (auto val : s) {if (isdigit(val)) {record[ val - 0 - …

Collections和CollectionUtils集合操作

0.引入依赖 <dependency><groupId>org.apache.commons</groupId><artifactId>commons-collections4</artifactId><version>4.4</version> </dependency> 一.Collections用法&#xff1a; 01、排序操作 reverse(List list)…

肖sir__设计测试用例方法之判定表06_(黑盒测试)

设计测试用例方法之判定表 1、判定表&#xff1a;是一种表达逻辑判断的工具。 2、判定表&#xff1a;包含四部分 1&#xff09;条件桩&#xff08;condition stub&#xff09;:列出问题的 所有条件&#xff08;通常条件次序无关紧要&#xff09;。 2&#xff09;条件项&#x…

海底光缆走线逻辑

Submarine Cable Map 电信公司Telegeography每年都会发布其海底电缆地图的新版本。这张地图显示了在世界各地传输数据的所有海底电信电缆。2023 年海底电缆地图现已推出。

国产10米分辨率的卫星介绍、下载和处理教程

10米分辨率的资源卫星介绍、下载和处理教程 简介 说起免费的10米分辨率卫星影像,大家首先想到的是sentinel卫星。但其实还有我国的中巴地球资源卫星04星(CBERS04)。 中巴地球资源卫星(China Brazil Earth Resources Satellite, CBERS)是中国和巴西共同投资、联合研制的地球…

前端实现动态路由(后端返回权限路由)

实现思路 1、前端定义静态路由&#xff08;login登录页这种不需要权限的默认路由&#xff09; 2、用户登陆时调接口获取用户信息&#xff0c;然后登录到首页 3、前后端定义好路由返回的格式 4、在路由导航钩子beforeEach中去调接口获取动态路由&#xff0c;递归处理该数据为前…

QT中闹钟的设置

.h文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QPushButton> //按钮 #include <QTextEdit> //文本 #include <QLabel> //标签 #include <QLineEdit> //行编辑器#include <QTimerEvent> //定时器事件类头文件 #…