前言

由于在分布式系统内修改应用的配置文件并使其生效是一件比较繁琐的事情,机器数量少还行,如果机器数量几十台甚至几百台的话,稍不留神,就有可能遗漏某些机器,介于类似场景存在,自己花了一些时间对ZooKeeper工具进行了学习,并在很多前辈的基础上写了一个小工具,来帮助我们更加方便的管理分布式应用。Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。

简介

由于ZooKeeper中文翻译为动物园管理员,并且官网中的LOGO中是一个拿着铁锹的动物管理员,故我把这个工具命名为shovel--a tool of zookeeper,意思就是管理员的一件工具。

shovel是一个分布式配置管理工具,用来替代在分布式系统中运维人员手动修改几十台甚至上百台服务器的应用配置文件并使之生效的繁琐费事的操作,极大的简化了配置文件管理的工作,提高了运维人员的效率。如果使用得当,可以有效的容灾,实现高可用,例如使用zookeeper主动管理redis的集群信息,可以有效的防止由于redis集群自身的问题,即只有master可写,若当redis的master节点crashed,则基于该redis集群的所有应用均无法正常工作,在大数据时代,数据丢失,后果将不堪设想,使用基于zookeeper的shovel工具,便可以主动的获取该信息,并把该信息同步给所有的应用,实现高可用(HA),此功能目前处于测试阶段。

shovel由两部分组成:

【shovel-ui】即zookeeper web ui工具,通过shovel-ui可以对zookeeper的数据结构进行增删改查,并且生成事件,并发布给客户端程序。

【shovel-client】订阅zookeeper目录事件,一旦所订阅的目录被改变,便针对不同应用完成相应的动作,目前版本只支持配置文件管理。如需其他功能的客户端程序,请联系作者。

拓扑图

特点

l  一处修改,所有机器实时同步

l  修改完成,立即重启服务并生效

l  友好的用户界面,使用方便

l  Shove UI=zookeeper web UI,可独立使用

l  部署简单,只需要解压运行脚本即可,无需安装tomcat服务

l  linux环境下均可使用,可移植性强

l  简单的权限管理,普通用户只读,管理员可以修改

下载

下载地址:http://www.boywell.com/shovel/index.html

转载于:https://www.cnblogs.com/JG-B/p/4798860.html

ZooKeeper Web UI -- Shovel相关推荐

  1. Hadoop3.x 50070端口访问不到WEB UI页面

    hadoop3 hdfs web端口改为9870 <property><name>dfs.namenode.http-address</name><value ...

  2. 15 个 JavaScript Web UI 库

    新闻来源:speckboy.com 几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 ...

  3. 推荐10款优秀的JavaScript Web UI库 框架和套件

    在进行Web开发时,并非所有的库都适合你的项目,但真正开发的时候,你任然需要依赖一款UI框架.特别在你时间紧迫的时候,它是你忠实的朋友. 他们都是些广泛使用包含不同语言实现的WEB UI框架.今天我就 ...

  4. 15 个 JavaScript Web UI 库 (转)

    几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 15 个非常强大的 JavaScr ...

  5. Kendo Web UI Grid数据绑定,删除,编辑,并把默认英文改成中文

    Kendo Web UI 是个不错的Jquery框.可惜老外写的,很多都是默认的英文,当然我们也可以设置成中文,接下来,我们就看看Grid是如何实现的数据绑定(Kendo Grid数据绑定实现有很多方 ...

  6. login控件authenticate_Login.Authenticate 事件 (System.Web.UI.WebControls) | Microsoft Docs

    验证用户的身份后出现.Occurs when a user is authenticated. public: event System::Web::UI::WebControls::Authenti ...

  7. 解决无法将类型为“System.Web.UI.WebControls.HiddenField”的对象强制转换为类型的错误...

    解决无法将类型为"System.Web.UI.WebControls.HiddenField"的对象强制转换为类型的错误 2008-01-04 16:14 本文章将解决: 1.解释 ...

  8. Microsfot.Web.UI.WebControls.TreeView JavaScript控制方法研究(转)

    Microsfot.Web.UI.WebControls.TreeView JavaScript控制方法研究 caidaoli@hotmail.com 2003-11-26 被选择的节点的索引: tr ...

  9. http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.gridview.rowediting.aspx

    http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.gridview.rowediting.aspx gridview的 ...

最新文章

  1. 为何IDEA比Eclipse更好!
  2. 很久没有更新blog了,对不起每一位朋友。
  3. Android studio 使用NDK工具实现JNI编程
  4. 深度学习-线性回归基础-02
  5. 04 组件与Props
  6. Hotel POJ - 3667(线段树 + 区间合并
  7. spark stage 划分 源码
  8. 软件测试常见笔试面试题(二)
  9. 纯文字极简风格平面海报,PSD分层模板!
  10. RabbitMQ的工作模式Topics  通配符,test测试代
  11. 金三银四,Android高级开发面试题目,帮你助力
  12. flask-SQLAlchemy数据库密码加密
  13. Colab 使用 PyTorch-TPU
  14. 网站打开速度优化:如何提高网页加载速度,提升网页打开速度
  15. Python极简讲义一本书入门机器学习和数据分析--自学笔记
  16. 【NOIP2018】D2T2 填数游戏
  17. marvell 88W8686 sdio wifi模块学习
  18. 求职 offer历程
  19. SYN Flood攻击
  20. Android RIL Java

热门文章

  1. github pages markdown_赏金$25000的GitHub漏洞:通过 GitHub Pages 不安全的Kramdown配置实现多个RCE...
  2. 入口文件到控制器 php,tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析...
  3. ppt转html5 带动画_天府味道 小吃龙门阵____糖饼糖画 难以忘怀的童年趣味
  4. linux sed命令_Linux sed命令用法与示例
  5. hadoop和hdfs命令_Hadoop 1.x和2.x HDFS基本开发人员命令,“ hadoop”命令
  6. Elasticsearch的javaAPI之percolator
  7. 开课吧:分享一下C语言发展史的点点滴滴
  8. spring boot (二) web swagger2
  9. SpringCache实战遇坑
  10. 基于Swoole和beanstalkd实现多进程处理消息队列。