zookeeper之实践一

本文介绍了Zookeeper在大数据集群中的重要角色,包括加强集群稳定性、持续性和有序性等,并详细记录了Zookeeper集群的搭建过程。

什么是zookeeper

大数据时代,hive,pig,hbase,hadoop。。。。都很重要,但是,“一个成功的男人后面都有一个女人”,一群重磅的大数据工具平台后,有一个重要的“动物园管理员”。

那就是,那就是Zookeeper。在大数据应用中,高可用性非常重要,众多的服务都是建立在稳定和高可用性上的,谁能确保呢,那也是管理员,---zookeeper。

可以说,在台前精彩的表演后,有一个不为人知,但很重要的管理员在默默的付出,为了台上精彩的表演,默默的值班,谁病了,谁临时有事,他就会协调好,

保证这出戏能表演下去。


zookeeper重要性

1.Zookeeper加强集群稳定性

大型的分布式系统会依靠zk保证高可靠性。高可靠性保证它不会由于单一节点的故障而造成任何问题。有序的访问能保证客户端可以实现较为复杂的同步操作。


2.Zookeeper加强集群持续性
组成Zookeeper的各个服务器必须要能相互通信。他们在内存中保存了服务器状态,也保存了操作的日志,并且持久化快照。只要大多数的服务器是可用的,那么Zookeeper就是可用的。
客户端连接到一个Zookeeper服务器,并且维持TCP连接。并且发送请求,获取回复,获取事件,并且发送连接信号。如果这个TCP连接断掉了,那么客户端可以连接另外一个服务器。

3.Zookeeper保证集群有序性
Zookeeper使用数字来对每一个更新进行标记。这样能保证Zookeeper交互的有序。后续的操作可以根据这个顺序实现诸如同步操作这样更高更抽象的服务。

4.Zookeeper保证集群高效
Zookeeper的高效更表现在以读为主的系统上。Zookeeper可以在千台服务器组成的读写比例大约为10:1的分布系统上表现优异。


5.数据结构和分等级的命名空间
Zookeeper的命名空间的结构和文件系统很像。一个名字和文件一样使用/的路径表现,zookeeper的每个节点都是被路径唯一标识


zookeeper安装

既然zookeeper这么重要。我们来玩一玩吧。

首先,下载包,解压缩。

 wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
tar zxf zookeeperxxx.tar.gz


生成配置文件:

cd zookeeper-3.4.6/conf
cp zoo_sample.cfg zoo.cfg 

配置文件:

# The number of milliseconds of each tick
tickTime=2000  
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
#这几个目录很重要
dataDir=<span style="font-family: Arial, Helvetica, sans-serif;">/home/liaominke/soft/zookeeper-3.4.6/data</span><pre name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif;">dataLogDir=/home/liaominke/soft/zookeeper-3.4.6/log</span>
clientPort=2181#服务器ip或hostname及对应id,一定不要错server.1=hadoopmaster-177.tj:2888:3888server.2=hadoopslave-189.tj:2888:3888server.3=slave154:2888:3888


建立相应目录:


mkdir -p /home/liaominke/soft/zookeeper-3.4.6/data
mkdir -p /home/liaominke/soft/zookeeper-3.4.6/log

然后魔法开始:

echo "1" > /home/liaominke/soft/zookeeper-3.4.6/data/myid

对应的服务器的凭证,这个一定要对。

最后,在profile里加上对应环境:

export ZOOKEEPER=/home/liaominke/soft/zookeeper-3.4.6
export PATH=$PATH:$ZOOKEEPER/bin

生效profile:

source profile

把软件部署到其余两台服务器后,开始每台服务器启动。

sh zookeeper-3.4.6/bin/zkServer.sh start
JMX enabled by default
Using config: /home/liaominke/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

最后,我们看看,每台服务器的状态。

slave154 soft]$ sh zookeeper-3.4.6/bin/zkServer.sh status
JMX enabled by default
Using config: /home/liaominke/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower

hadoopmaster-177 soft]$  sh zookeeper-3.4.6/bin/zkServer.sh status
JMX enabled by default
Using config: /home/liaominke/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: follower

hadoopslave-189 soft]$ sh zookeeper-3.4.6/bin/zkServer.sh status
JMX enabled by default
Using config: /home/liaominke/soft/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: leader

一个zk集群就搞定了。一个leader。

最后大家想想,为什么是三台服务器?

在配置中对hosts怎么配置?可以直接用ip吗?






基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)内容概要:本文围绕“基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究”,介绍了利用Matlab代码实现配电网可靠性的仿真分析方法。重点采用序贯蒙特卡洛模拟法对配电网进行长时间段的状态抽样与统计,通过模拟系统元件的故障与修复过程,评估配电网的关键可靠性指标,如系统停电频率、停电持续时间、负荷点可靠性等。该方法能够有效处理复杂网络结构与设备时序特性,提升评估精度,适用于含分布式电源、电动汽车等新型负荷接入的现代配电网。文中提供了完整的Matlab实现代码与案例分析,便于复现和扩展应用。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校研究生、科研人员及电力行业技术人员,尤其适合从事配电网规划、运行与可靠性分析相关工作的人员; 使用场景及目标:①掌握序贯蒙特卡洛模拟法在电力系统可靠性评估中的基本原理与实现流程;②学习如何通过Matlab构建配电网仿真模型并进行状态转移模拟;③应用于含新能源接入的复杂配电网可靠性定量评估与优化设计; 阅读建议:建议结合文中提供的Matlab代码逐段调试运行,理解状态抽样、故障判断、修复逻辑及指标统计的具体实现方式,同时可扩展至不同网络结构或加入更多不确定性因素进行深化研究。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值