不了解Zookeeper的童鞋看过来哦~

举报
Regan Yue 发表于 2021/10/24 12:28:51 2021/10/24
【摘要】 不了解Zookeeper的童鞋看过来哦~假如你有一个Hadoop集群,但是国庆假期期间你的namenode也就是主节点挂了,这时候“苦逼的”拿着三倍加班工资的运维人员赶快去处理,处理完成之后重启原来这个namenode,这台主节点还是主节点吗?答案是它当从节点了,这就跟我们今天要介绍的Zookeeper有关了,因为它选择主节点是有一定规则的。再来看一个有意思的问题。在只有一台Zookeepe...

不了解Zookeeper的童鞋看过来哦~

假如你有一个Hadoop集群,但是国庆假期期间你的namenode也就是主节点挂了,这时候“苦逼的”拿着三倍加班工资的运维人员赶快去处理,处理完成之后重启原来这个namenode,这台主节点还是主节点吗?


答案是它当从节点了,这就跟我们今天要介绍的Zookeeper有关了,因为它选择主节点是有一定规则的。


再来看一个有意思的问题。在只有一台Zookeeper服务器的情况下,是不是可能会出现问题?假如有个Zookeeper集群,那么主节点挂掉之后谁当主节点,谁当从节点?

其实当Zookeeper的主节点挂掉之后,就会进行“投票选举”,选一台服务器作为主节点。其实Zookeeper所有节点启动之前,谁也不知道谁是主节点,因为每次启动后都会“投票选举”一个主节点,这个底层算法就是一种区块链中常用的共识算法。


什么是Zookeeper?

那么,说了这么多,Zookeeper到底是什么呢?

其实,和Hadoop一样,Zookeeper是谷歌的Chubby的一种实现,是一种开源的分布式协调服务。不过Hadoop是根据谷歌的几篇论文搞出来的。

它的名字意思是动物园的管理员,那么它能管理哪些动物呢?Hadoop(就是大象)、Hive(就是勤劳的小蜜蜂)、Pig(猪噜噜)、Tomcat(小猫)。


Zookeeper能帮我们做什么?

能够让多个节点统一完成所有动作,这就是分布式系统协调,还有实现负载均衡的功能。

在一个进程中共享锁是比较容易实现的,但是在跨进程和在不同服务器之中使用共享锁就比较难了,所以我们得使用zookeeper,它让多进程或多个服务器之间的共享锁变得容易。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。