云存储技术-Zookeeper集群的安装

云存储技术

实验目的要求:
1、掌握在完全分布模式的整合平台中Zookeeper的安全分布模式的安装
2、完成Zookeeper的完全分布模式的安装
3、Zookeeper服务能够正常启动和连接
4、Zookeeper控制台能够正常进入
5、Zookeeper控制台命令能够正常使用
实验环境 :
1、五台独立PC机或虚拟机
2、主机之间有有效的网络连接
3、每台主机内存2G以上,磁盘剩余空间500M以上
4、所有主机上已安装CentOS 7.4_64操作系统
5、所有主机已完成网络属性配置
6、所有主机已安装JDK
软件版本:
选用Zookeeper的3.4.9版本,软件包名为Zookeeper-3.4.9.tar.gz
集群规划:
Zookeeper采用的投票算法要求其至少有3个及以上的服务节点,且服务节点数总数为奇数时为最有效的配置,所以将集群的五台主机全部作为服务节点,具体规划如下:
主机名 IP地址 服务描述
Cluster-01 192.168.10.111 Zookeeper服务
Cluster-02 192.168.10.112 Zookeeper服务
Cluster-03 192.168.10.113 Zookeeper服务
Cluster-04 192.168.10.114 Zookeeper服务
Cluster-05 192.168.10.115 Zookeeper服务
实验步骤 :

一、Zookeeper基本安装配置

*该项的所有操作步骤使用专门用于集群的用户admin进行
*此项只在一台主机操作,然后再下一步骤进行同步安装与配置
1、首先,将Zookeeper软件包“zookeeper-3.4.9.tar.gz”上传到用户家目录的“setups”目录下,然后进行解压和设置环境变量;
在这里插入图片描述
#创建用于存放Zookeeper相关文件的目录,进入该目录,将软件包解压
在这里插入图片描述
#配置Zookeeper相关的环境变量,并使环境变量立即生效
在这里插入图片描述
实验步骤:
#查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确
在这里插入图片描述

二、Zookeeper完全分布模式配置

该项的所有操作步骤使用专门用于集群的用户admin进行
#进入Zookeeper相关文件的目录,分布创建用于存放数据文件的目录“data”和用于存放日志文件的目录“logs”
在这里插入图片描述
#进入Zookeeper的配置文件所在目录,拷贝生成Zookeeper的配置文件
在这里插入图片描述
#对配置文件进行修改
在这里插入图片描述
三、同步安装和配置
该项的所有操作步骤使用专门用于集群的用户admin进行
将“zookeeper”目录和“./bash_profile”文件发给集群中所有其他主机,发送目标为集群专用用户admin,发送目标路径为“/home/admin”,即集群专用用户admin的家目录。然后每台执行source ~/.bash_profile使环境变量生效。
#scp -r ~/zookeeper ~/.bash_profile admin@Cluster-
:/home/admin
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
#在每台主机或虚拟机上使用命令“echo $ZOOKEEPER_HOME”、“echo $PATH”查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
四、配置Zookeeper节点标识文件
该项的所有操作步骤使用专门用于集群的用户admin进行
在集群中所有主机上使用命令“echo ‘
’ > ~/zookeeper/data/myid”创建Zookeeper的节点标识文件,期中“
”为节点的编号,与配置文件server.=Cluster-01:2888:3888中“server.”中的“*”相对应。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

五、Zookeeper完全分布模式启动和验证
*该项的所有操作步骤使用专门用于集群的用户admin进行
在集群中所有主机上使用命令“zkServer.sh.start”启动Zookeeper服务的脚本,若启动过程没有报错,并且显示“STARTED”则表示启动成功。
#zkServer.sh.start
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在集群中所有主机上使用命令“jps”查看Java进程信息,若存在一个名为“QuorumPeerMain”的进程,则表示Zookeeper启动成功。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

实验步骤
在集群中所有主机上使用命令“zkServer.sh status”查看该节点Zookeeper服务当前的状态,若集群中只有一个“leader”节点,其余均为“follower”节点,则集群的工作状态正常。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
使用命令“zkCli.sh -server Cluster-:2181”利用Zookeeper的命令行工具连接Zookeeper集群。其中“”为集群中节点的编号,可以选择连接集群中任意一个节点,若显示“CONNECTED”则表示连接正常,命令行工具可以正常使用,在命令行工具中使用命令“quit”可以退出工具程序。
在这里插入图片描述在这里插入图片描述

实验总结:

Zookeeper是一种在分布式系统中被广泛用来作为:分布式状态管理、分布式协调管理、分布式配置管理、和分布式锁服务的集群;Zookeeper集群中节点个数一般为奇数个(>=3),若集群中Master挂掉,剩余节点个数在半数以上时,就可以推举新的主节点,继续对外提供服务;Zookeeper集群中的节点,根据其身份特性分为leader、follower、observer;leader负责客户端writer类型的请求;follower负责客户端reader类型的请求,并参与leader选举;observer是特殊的follower,可以接收客户端reader请求,但是不会参与选举,可以用来扩容系统支撑能力,提高读取速度;一个 ZooKeeper 集群同一时刻只会有一个 Leader,其他都是 Follower 或 Observer;ZooKeeper 默认只有 Leader 和 Follower 两种角色,没有 Observer 角色;
Zookeeper集群搭建完毕之后,可以通过客户端脚本连接到zookeeper集群上面,对客户端来说,zookeeper集群是一个整体,连接到zookeeper集群实际上感觉在独享整个集群的服务。

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

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

相关文章

云存储技术-JDK的安装

云存储技术-JDK的安装 实验目的要求: 1、掌握在完全分布模式的整合平台中快捷的进行JDK的安装和验证 2、在集群中所有主机上完成JDK的安装 3、所有主机上JDK相关命令能够正常使用 实验环境: 1、五台独立PC机或虚拟机 2、主机之间有有效的网络连接 3、每…

go 字符串转日期_Go技术日报(20200831)

go 语言中文网(每日资讯)_2020-08-31一、Go 语言中文网动态作用域?Dave Cheney 大神由 Go 单元测试惯用形式所想Go 实战:实现一个简单的日志库Go:基于 HTTP Header 传输签名参数二、亚军进化史Go 技术日报(2020-08-30)三、polarisxu为 jinzhu…

Linux相关配置 集群免密码登录配置

Linux相关配置 集群免密码登录配置 实验目的要求: 1、完成VMware Workstation安装,会应用相关操作 2、掌握虚拟机中Linux CentOS 7.4操作系统安装 3、完成静态网络地址的配置,所有主机的网络能够正常使用,相互之间能够正常连接 4…

做旋转铁甲机器人_「铁甲评测」柳工CLG921E视频全面讲解

本文由铁甲论坛甲友邢飞 2020-07-03 原创发布,转载请标注来源:先生们,女士们。请把你们的烦恼放在一边,大家来仔细聆听我的塑料普通话咯!听闻朔州有特大工程要开,居然一次性购买了二十多台柳工挖掘机&#…

用户输入一个字符串,将下标为偶数的字符提出来合并成一个新的字符串A,再将下标为奇数的字符提出来合并成一个新的字符串B,再将字符串A和B连接起来并输出。

根据下述要求,编写一个程序:用户输入一个字符串,将下标为偶数的字符提出来合并成一个新的字符串A,再将下标为奇数的字符提出来合并成一个新的字符串B,再将字符串A和B连接起来并输出。 rs [] even "" odd …

win10打印机终结点映射器_用了就回不去?微软官方免费“外挂”,让win10好用到飞起...

大白菜掐指一算,win10系统已经5岁了呀……果然是熊孩子的阶段,让人闹心……虽然win10系统有很多功能,确实是相当不错,但是win10各种令人吐槽的点也不少呀,比如说搜索功能,大家显然更喜欢Listary、everythin…

请编写一个程序,用于统计字符串中每个字母的出现次数(字母忽略大小写),统计出结果后,请按照{'a':3,'b':2}的格式输出。

请编写一个程序,用于统计字符串中每个字母的出现次数(字母忽略大小写),统计出结果后,请按照{‘a’:3,‘b’:2}的格式输出。 ras [] mystr input("请输入一个全为字母的字符串:") if mystr.isa…

运维工程师是桥的护栏_【消息】秭归将建螺旋桥

秭归将在金湖路建设螺旋桥金湖路位于秭归县城沿江地带,规划为城市支路,是县城金缸城片区连接港口区和上下主干路(滨湖路)的重要通道。金湖路起于秭归县滨湖路与龙舟路交叉口处,终于天问路与花园路交叉口西南方向约200米处,路线全长…

请编写一个程序,请将字符串中所有字母全部向后移一位,最后一个字母放在字符串的开头,最后将新的字符串输出。

请编写一个程序,请将字符串中所有字母全部向后移一位,最后一个字母放在字符串的开头,最后将新的字符串输出。 ran [] result "" old_str input("请输入全为字母的字符串:") for i in old_str:ran.append(…

rocketmq 几种队列_关于RocketMQ的知识

上篇文章给大家简单介绍了一下RocketMQ,今天给大家说一说几款MQ产品有什么区别。目前市面上常用的MQ有:1、RocketMQ 2、RabbitMQ 3、ActiveMQ 4、Kafka 5、ZeroMQ一、几种MQ的介绍①RocketMQ阿里系下开源的一款分布式、队列模型的消息中间件,…

请编写一个程序,使用字典存储学生信息,学生信息包括学号和姓名,请根据学号从小到大的顺序输出学生的信息。

请编写一个程序&#xff0c;使用字典存储学生信息&#xff0c;学生信息包括学号和姓名&#xff0c;请根据学号从小到大的顺序输出学生的信息。 length int(input("请输入学生总数&#xff1a;")) dict_1 {} i 1 while i < length:id int(input("请输入第…

seata执行闪退_Seata 1.2.0的配置以及踩坑记录

首先Seata1.2.0版本不在自带sql&#xff0c;且在file.conf文件中没有了vgroup_mapping.fsp_tx_group “default” 这项配置数据库SQLseata数据库 drop table if exists global_table;create table global_table (xid varchar(128) not null,transaction_id bigint,status tinyi…

Python实现简单的学生管理系统

学生管理系统 student_infos [] #打印功能提示 def print_menu():print("" * 30)print("学生管理系统v1.0")print("1.添加学生信息")print("2.删除学生信息")print("3.修改学生信息")print("4.显示所有学生信息"…

vue仿饿了么点餐手机端

vue仿饿了么点餐手机端模板&#xff0c;包括评论&#xff0c;商品&#xff0c;商家模块&#xff0c;添加商品到购物车&#xff0c;左侧分类计数功能&#xff0c;右侧滑动时分类有上推功能&#xff0c;小球飞入购物车功能。

python123九宫格输入法_《啊哈C语言-2016最新修正版》.pdf

《啊哈C语言-2016最新修正版》.pdf| 啊哈C语言|后续内容还请关注[ ][ ][[ 网站首页 ]][ ][ ][[ 网站问答 ]] /qa[ ][ ][[ 新浪微博 ]] /ahalei[ ][ ][[ 人人主页 ]] /601196462如果您有任何建议您&#xff0c;可以在 上留言&#xff0c;或者骚扰书写匆忙&#xff0c;欢迎批评纠…

数据库复习资料及课后习题答案

数据库概论 1.1 基本内容分析 1.1.1 本章的重要概念 DB、DBMS和DBS的定义 &#xff08;2&#xff09;数据管理技术的发展阶段 人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库技术阶段等各阶段的特点。 &#xff08;3&#xff09;数据描述 概念设计、逻辑设计…

apache 设置session超时时间_深入分析 Session 和 Cookie,看这篇就对了

点击上方 "程序员小乐"关注, 星标或置顶一起成长 第一时间与你相约 每日英文 Promise yourself to be so strong that nothing can disturb your peace of mind. 对自己承诺&#xff1a;我要强大到任何事情都无法破坏我内心的平和。 每日掏心话 每一发奋努力的背后&a…

python 运行时间 装饰器_python 装饰器统计某个函数的运行时间

import datetimedef count_time(func):def int_time(*args, **kwargs):start_time datetime.datetime.now() # 程序开始时间func()over_time datetime.datetime.now() # 程序结束时间total_time (over_time-start_time).total_seconds()print(程序共计%s秒 % total_time)ret…

《大学计算机基础》试题题库及答案

一、单选题练习 1&#xff0e;完整的计算机系统由&#xff08; C &#xff09;组成。A&#xff0e;运算器、控制器、存储器、输入设备和输出设备B&#xff0e;主机和外部设备C&#xff0e;硬件系统和软件系统D&#xff0e;主机箱、显示器、键盘、鼠标、打印机2&#xff0e;以…

docker添加新的环境变量_Docker环境变量

环境变量环境变量通常在与您正在使用的基本映像关联的Dockerfile中设置。也有Docker为每个新容器自动设置的环境变量。您可以指定其他变量&#xff0c;并使用-e或--env选项重新定义Docker设置的变量。在Docker运行配置中&#xff0c;您可以使用“环境变量(Environment variable…