| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> (一)zookeeper分布式协调系统——zookeeper集群的搭建 -> 正文阅读 |
|
[大数据](一)zookeeper分布式协调系统——zookeeper集群的搭建 |
一、什么是zookeeper?
以上是zookeeper官网对zookeeper的解释,就是说他是针对大型分布式系统的可靠协调系统,提供的功能包括:配置服务、命名服务、分布式同步、组服务等。实际项目中应用十分广泛,且市场很多主流的技术框架都会涉及到zookeeper。hbase、kafka等等很多都会用到zookeeper。 二、zookeeper集群搭建 工欲善其事必先利其器,要想系统的学习zookeeper,那就从环境搭建开始吧,就像学习java一样,没有jre环境,估计学习java会很吃力。 1、搭建zookeeper服务端 我这里准备了4台服务器,1台leader、2台follower、1台observer。ZooKeeper 集群中的所有机器通过一个 Leader 选举过程来选定一台称为 “Leader” 的机器,Leader 既可以为客户端提供写服务又能提供读服务。除了 Leader 外,Follower 和 Observer 都只能提供读服务。Follower 和 Observer 唯一的区别在于 Observer 机器不参与 Leader 的选举过程,也不参与写操作的“过半写成功”策略,因此 Observer 机器可以在不影响写性能的情况下提升集群的读性能。 首先安装zookeeper,可以到官网下载,下载完成后,在linux上解压。以下操作4台服务器都要做。
解压完毕后,到conf下新建一个zoo.cfg文件,可以用sample文件复制一份。 ?接下来要配置zoo.cfg
针对用到的配置项我们做个简单的说明: tickTime=2000,配置单元时间,单元时间是zk的时间计算单元,其他的时间间隔都是用ticktime的倍数来表示,单位是毫秒ms initTime=10,节点的初始化时间,该参数用于follower节点的启动,并完成与leader进行数据同步的时间。 syncLimit=5,心跳监测最大延时时间,leader通过心跳监测follower节点是否存活,如果再这时间内无法获取响应,则认为follower脱离组织了。 clientPort=2181,服务端的端口 server.0=0.0.0.0:2888:3888 上面的配置是集群的信息,其中的0、1、2、3表示节点的标识符,要与myid本机文件中配置的数值一致。注意本机配置0.0.0.0的ip,这4个配置在不同服务器中根据本机ip进行修改。 本次项目中,我配置了一台obsever服务器。注意配置写法。 dataDir=/usr/local/zookeeper/apache-zookeeper-3.6.3-bin/data 这2个配置一个数存放数据,一个是日志。上面我们提到的myid文件要配置在这个data目录下,myid中的id对应server.id,范围1-255,只能写一个数字。 最好在etc/profile文件中配置全局 至此,zookeeper基础设施搭建完毕,接下来启动4台服务器即可。通过xshell的同步命令输入一起启动即可 ?启动完毕后,可以通过zkServer.sh status命令查看结果 4台服务器的角色都有了。可以登录zookeeper客户端进行相关api操作。 做个测试,在其中一台follower写入一个节点,在leader上查看是否收到 ?到bin目录下运行zkCli客户端 follower-1 ?leader observer 测试成功,我们的zookeeper集群就此搭建完毕
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 16:53:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |