Shepher 是一款 ZooKeeper 的管理工具

Shepher 是一款 ZooKeeper 的管理工具

Shepher 是一款 ZooKeeper 的管理工具。在小米公司,我們用它作為配置管理中心。Readme in English

特性

  • ZooKeeper 節點的可視化操作
  • ZooKeeper 節點的快照管理
  • ZooKeeper 節點修改的 Diff 和 Review 功能
  • ZooKeeper 節點操作郵件通知
  • 集成 CAS 和 LDAP 登錄
  • 權限管理,參照 權限管理說明

同類產品功能對比

產品簡介節點的可視化操作快照管理節點修改的 Diff 和 Review 功能節點操作郵件通知CAS 和 LDAP 登錄權限管理級聯刪除系統狀態監控ShepherZooKeeper 管理√√√√√√TaoKeeperZooKeeper 集群監控與報表√ZkdashZooKeeper 管理√√√DisconfZooKeeper 管理√√√√√√XDiamond配置中心√√√√

系統截圖

  • 首頁
Shepher 是一款 ZooKeeper 的管理工具


  • 節點查看
Shepher 是一款 ZooKeeper 的管理工具


安裝

環境要求

  • JDK 1.8
  • Maven 3.2 +
  • MySQL 5.6

基本配置

  • 修改 db/init.sql 中的 INSERT INTO user VALUES (1,'youradmin',now()); ,將 youradmin 改為你的管理員用戶名
  • 參照 參數說明,設置 shepher-web/src/main/resources 目錄下的參數配置。如果使用 CAS 登錄,則需要修改 CAS 相關的配置,並且將 server.login.type 設置為 CAS;如果使用 LDAP 登錄,則需要修改 LDAP 相關的配置,並且將 server.login.type 設置為 LDAP

開發環境部署

開發環境部署包括本地編譯部署和 Docker 部署兩種方式,用戶可以根據使用習慣選擇一種部署方式。

編譯

  1. 參照 參數說明 修改 conf/application-default.properties 的參數配置
  2. 本地編譯
$ mvn clean package 
$ cd shepher-packaging/target/shepher-packaging-{version}-bin
$ ls
bin/(all the shell/>conf/(configuration files)
db/init.sql
lib(required jar files)
Dockerfile
docker-compose.yml
CHANGES.txt

NOTICE.txt
README.md
README-zh.md
VERSION
  1. 這裡, {version} 是指當前 Shepher 的版本。

本地部署

  1. 將 db/init.sql 導入到 MySQL
  2. 進入到安裝目錄
$ cd shepher-packaging/target/shepher-packaging-{version}-bin
  1. 運行腳本,啟動服務 Shepher
$ sh bin/run.sh start 
  1. 在瀏覽器中訪問 http://localhost:8089 或自定義的 server.url (參照 參數說明)

Docker 部署

使用 Docker 部署則自動集成 MySQL 和 ZooKeeper,並且自動將 db/init.sql 導入MySQL中,不需要自行安裝。

  1. 安裝 Docker,以 Ubuntu 系統為例,安裝 docker engine 和 docker-compose
  2. 進入到安裝目錄
$ cd shepher-packaging/target/shepher-packaging-{version}-bin
  1. 運行腳本,啟動服務 Shepher, 等待 Docker 中的各個容器啟動完成
$ sh bin/docker-run.sh start
  1. 在瀏覽器中訪問 http://localhost:8089 或自定義的 server.url (參照 參數說明)

生產環境部署

生產環境部署的步驟跟本地編譯部署類似,主要注意對數據源、CAS/LDAP 以及域名的設置。另外,由於各個公司內部的郵件服務較為封閉,在線上使用中需要自己實現 CustomMailSender 類,並在 shepher-web/src/main/resources/application.properties 中設置 mail.sender=customMailSender,以便 Shepher 服務可以正常使用郵件服務。

  1. 將 db/init.sql 導入到 MySQL
  2. 創建 conf/application-online.properties 文件,參照 參數說明 添加和修改配置
  3. 在 Shepher 根目錄下運行命令
$ mvn clean package
  1. 將安裝目錄 shepher-packaging/target/shepher-packaging-{version}-bin 拷貝到線上,然後進入到該目錄
$ cd shepher-packaging/target/shepher-packaging-{version}-bin
  1. 執行下面命令啟動 Shepher
$ sh bin/run.sh -c conf/application.properties,conf/application-online.properties start 
  1. 在瀏覽器中訪問 http://localhost:8089 或自定義的 server.url (參照 參數說明)


分享到:


相關文章: