ZooKeeper之Web管理工具Shepher介绍

Shepher是ZooKeeper的管理工具。在小米,我们将它用作配置管理中心。

特征

  • ZooKeeper节点的可视化操作
  • ZooKeeper节点的快照管理
  • 修改了ZooKeeper节点的Diff和Review功能
  • ZooKeeper节点的邮件操作通知
  • CAS和LDAP集成
  • 权限管理,参考权限管理指令

类似产品的功能比较

产品 介绍 节点的可视化操作 快照管理 节点修改了Diff和Review功能 节点操作的邮件通知 CAS和LDAP日志 权限管理 级联删除 系统状态监视器
Shepher ZooKeeper管理    
TaoKeeper ZooKeeper集群监视器和语句              
Zkdash ZooKeeper管理          
Disconf ZooKeeper管理    
XDiamond 配置中心        

截图

  • 家 

  • 节点视图 

安装

环境要求

  • JDK 1.8
  • Maven 3.2 +
  • MySQL 5.6

基本配置

  • 修改INSERT INTO user VALUES (1,'youradmin',now());db/init.sql,修改youradmin成管理员的用户名
  • 根据Parameter指令,修改目录下的参数配置shepher-web/src/main/resources。如果您使用的是CAS登录,则需要修改与CAS相关的配置并将其设置server.login.typeCAS; 如果使用LDAP登录,则需要修改与LDAP相关的配置并设置server.login.typeLDAP

开发环境部署

开发环境部署包括本地编译部署和Docker部署,您可以根据使用情况选择部署。

  1. conf/application*.properties根据参数说明修改参数配置

  2. 本地编译

    $ mvn clean package
    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
    $ ls
    bin/(all the shell scripts)
    conf/(configuration files)
    db/init.sql
    lib(required jar files)
    Dockerfile
    docker-compose.yml
    CHANGES.txt
    NOTICE.txt
    README.md
    README-zh.md
    VERSION

    这里,{version}指的是当前的Shepher版本。

本地部署

  1. 导入db/init.sqlMySQL

  2. 输入安装目录

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  3. 运行脚本,启动Shepher服务

    $ sh bin/run.sh start 
  4. 访问http://localhost:8089或自定义server.url(参考参数说明)

Docker部署

当使用Docker部署时,MySQL和ZooKeeper将自动集成,并自动导入db/init.sqlMySQL,无需自行安装。

  1. 安装Docker,以Ubuntu系统为例,安装docker engine和docker-compose

  2. 输入安装目录

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  3. 运行脚本,启动Shepher服务并在Docker中等待每个容器的启动完成

    $ sh bin/docker-run.sh start 
  4. 访问http://localhost:8089或自定义server.url(参考参数说明)

生产环境部署

生产环境部署的步骤与本地编译部署类似,但要注意数据源,CAS / LDAP和域名的设置。另外,由于每家公司的内部邮件服务是相对封闭的,你需要实现自己的CustomMailSender类,并设置mail.sender=customMailSenderconf/application.properties,使Shepher可以正常使用邮件服务。

  1. 导入db/init.sqlMySQL

  2. 创建文件conf/application-online.properties,并根据参数说明修改配置

  3. 在Shepher根目录中运行该命令

    $ mvn clean package
  4. 复制shepher-packaging/target/shepher-packaging-{version}-bin到生产环境,然后输入目录

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  5. 运行以下命令,启动Shepher

    $ sh bin/run.sh -c conf/application.properties,conf/application-online.properties start 
  6. 访问自定义server.url(参考参数指令)

Docker安装Shepher

第一步git clone

git clone https://github.com/XiaoMi/shepher.git .

第二步 docker-compose up

docker-compose up

查看:docker-compose.yml

version: '2'
services:db: image: mysqlenvironment:MYSQL_ROOT_PASSWORD: rootvolumes:- ./db:/docker-entrypoint-initdb.dweb:build: ./image: shepherports:- "8089:8089"depends_on:- db- zookeeperlinks:- dbzookeeper:image: zookeeperexpose:- 2181- 2888- 3888

转载来源:https://github.com/XiaoMi/shepher/blob/master/README.md

ZooKeeper之Web管理工具Shepher介绍相关推荐

  1. ZooKeeper 的Web管理工具Shepher介绍

    ZooKeeper 的Web管理工具Shepher介绍 Shepher 是一款 ZooKeeper 的管理工具. 特性 ZooKeeper 节点的可视化操作 ZooKeeper 节点的快照管理 Zoo ...

  2. CentOS 6.0+Nagios中文版+PNP+Nagios Web管理工具nagiosQL中文版

    战CentOS 6.0+Nagios中文版+PNP+Nagios Web管理工具nagiosQL中文版 2011-11-15 17:17:56|  分类: rhel_监控 |  标签: |字号大中小  ...

  3. Linux系统的web管理工具——webmin搭建

    Linux系统的web管理工具--webmin搭建 一.webmin介绍 二.添加webmin的yum仓库 三.检查yum仓库状态 三.安装webmin 1.添加GPG密钥 2.安装webmin 3. ...

  4. Mellanox网卡驱动升级固件管理工具使用介绍

    文章目录 1. Mellanox固件升级及管理工具使用介绍 介绍 1. MFT工具安装 2. 固件下载 3. 固件烧录 2. Mellanox驱动升级介绍 1. 解压文件 2. 安装依赖 3. 升级驱 ...

  5. SilkierQuartz 1.0.21 发布, 是一个 Quartz.NET 的强大且简单的Web管理工具和承载组件...

    SilkierQuartz 是一个新的合并了 Quartzmin 和 QuartzHostedService的组件! Quartz.NET 是一个完整的开源的任务规划系统,从小应用至大型企业级应用都可 ...

  6. SWAT—Samba WEB管理工具

    本文试验环境是RHEL5.2+samba-swat-3.0.28.Server的IP是192.168.120.241.   1. swat介绍 SWAT:The Samba WEB Administr ...

  7. puppet的web管理工具foreman安装配置简明步骤

    foreman概述 Foreman是一个集成的数据中心生命周期管理工具,提供了服务开通,配置管理以及报告 功能,和Puppet Dahboard一样,Foreman也是一个Ruby on Rails程 ...

  8. Docke的WEB管理工具

    一.shipyard 1.1 概述 Shipyard也是完全基于Docker API,支持container管理.engine管理(一个engine就是监听tcp端口的docker daemon). ...

  9. 开源机器学习模型管理工具DVC介绍

    算法工程师往往在使用算法的过程中要不断地调整参数去找到最好的效果,俗称"调参民工".在不断的调参过程中,会产生各种各样的模型,如何记录好这些参数与模型效果对应的关系,往往另算法工程 ...

最新文章

  1. C++和C语言的关系
  2. python mongodb查询_Python MongoDB 查找
  3. JSP技术模型(五)JSP隐含变量
  4. java 用户名不为空_[Java教程]【关于JavaScript】常见表单用户名、密码不能为空
  5. ADO.NET与ORM的比较(4):EntityFramework实现CRUD
  6. /etc/udev/rules.d/10-usbstorage.rules
  7. C# DllImport的用法
  8. c语言操作数据库sql
  9. 2018年传智博客黑马程序员python人工智能培训就业班视频下载
  10. Cookie中path总结
  11. 行业分析| 物流对讲
  12. 基于自适应调整权重和搜索策略的鲸鱼优化算法
  13. 控制面板打印机显示不出来的解决办法
  14. android图形框架之surfaceflinger分析(一)
  15. 了解指纹锁方案技术特点和优点——西城微科
  16. 软件测试Mysql题库_软件测试-常见数据库笔试题
  17. Stanford CS230吴恩达Reading Research Papers学习笔记
  18. html 选择自动增加行数,为网页中的源代码自动设置行号
  19. Bugtags 与其它产品的区别
  20. Yolov5训练自制数据集

热门文章

  1. 重磅资料!Github上的PHP资源汇总大全
  2. Ubuntu工具zsh和Byobu
  3. LeetCode 476. Number Complement
  4. 高可用—Keepalived安装部署使用详解
  5. ubuntu 16.04 apache 开启Rewrite功能
  6. 2021-05-15
  7. 泛型集合 无序泛型 c#
  8. form表单 1128
  9. 草稿 listview控件切换大小图标
  10. s1 java 复习 视频小课