• Stars
    star
    492
  • Rank 86,025 (Top 2 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

LOGO

Shepher is a management tool of ZooKeeper. In Xiaomi, we use it as the configuration management center. Readme ไธญๆ–‡็‰ˆ

Features

  • Visualized operation of ZooKeeper node
  • Snapshot management of ZooKeeper node
  • Modified Diff and Review function of ZooKeeper node
  • Mail operation notification of ZooKeeper node
  • CAS and LDAP integration
  • Authority management, reference to Authority management instruction

Function comparison of similar products

Product Introduction Visualized operation of nodes Snapshot management Node modified Diff and Review function Node operated mail notification CAS and LDAP log Authority management Cascade delete System status monitor
Shepher ZooKeeper management โˆš โˆš โˆš โˆš โˆš โˆš
TaoKeeper ZooKeeper cluster monitor and statement โˆš
Zkdash ZooKeeper management โˆš โˆš โˆš
Disconf ZooKeeper management โˆš โˆš โˆš โˆš โˆš โˆš
XDiamond Configuration center โˆš โˆš โˆš โˆš

Screenshots

  • Home Home

  • Node view Node view

Installation

Environment requirements

  • JDK 1.8
  • Maven 3.2 +
  • MySQL 5.6

Basic configuration

  • Modify INSERT INTO user VALUES (1,'youradmin',now()); in db/init.sql, change youradmin into your administrator user name
  • According to Parameter instruction, modify parameter configuration under the directory shepher-web/src/main/resources. If you are using a CAS login, you need to modify the CAS-related configuration and set the server.login.type to CAS; If you log in with LDAP, you will need to modify the LDAP-related configuration and set server.login.type to LDAP

Development environment deployment

Development environment deployment includes local compilation deployment and Docker deployment, you can choose a deployment based on usage.

Compile

  1. Modify parameter configuration of conf/application*.properties according to Parameter instruction

  2. Local compile

    $ 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

    Here, {version} refers to the current Shepher version.

Local deployment

  1. Import db/init.sql in to MySQL

  2. Enter install directories

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  3. Run the script, start Shepher service

    $ sh bin/run.sh start 
  4. Visit http://localhost:8089 or self defined server.url (Reference to Parameter instruction)

Docker deployment

MySQL and ZooKeeper will be automatic integrated when Docker deployment is used, and automatically import db/init.sql into MySQL, no self installation is needed.

  1. Install Docker, take Ubuntu system for example, install docker engine and docker-compose

  2. Enter install directories

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  3. Run the script, start Shepher service and waiting start of each container in Docker accomplish

    $ sh bin/docker-run.sh start 
  4. Visit http://localhost:8089 or self defined server.url (Reference to Parameter instruction)

Production environment deployment

The steps for production environment deployment is similar to local compiling deployment, but pay attention to the setting of data sources, CAS/LDAP and domain names. In addition, because each company's internal mail service is relatively closed, you need to implement your own CustomMailSender class, and set mail.sender=customMailSender in conf/application.properties, so that Shepher can use the mail service normally.

  1. Import db/init.sql into MySQL

  2. Create the file conf/application-online.properties, and modify the configuration according to Parameter instruction

  3. Run the command in the Shepher root directory

    $ mvn clean package
  4. Copy shepher-packaging/target/shepher-packaging-{version}-bin to the production environment, and enter the directory

    $ cd shepher-packaging/target/shepher-packaging-{version}-bin
  5. Run the command below, start Shepher

    $ sh bin/run.sh -c conf/application.properties,conf/application-online.properties start 
  6. Visit self defined server.url (Reference to Parameter instruction)

Contributors

Long Xie (@xielong), Jinliang Ou (@oujinliang), Chuanyu Ban (@banchuanyu), Chuyang Wei (@brianway), Peng Zhang (@monsters-peng), Yaoli Liu (@iloayuil)

More Repositories

1

soar

SQL Optimizer And Rewriter
Go
8,595
star
2

mace

MACE is a deep learning inference framework optimized for mobile heterogeneous computing platforms.
C++
4,871
star
3

open-falcon

A Distributed and High-Performance Monitoring System
3,031
star
4

Gaea

Gaea is a mysql proxy, it's developed by xiaomi b2c-dev team.
Go
2,552
star
5

naftis

An awesome dashboard for Istio built with love.
Go
1,898
star
6

mone

No description, website, or topics provided
Java
1,088
star
7

MiNLP

XiaoMi Natural Language Processing Toolkits
Scala
771
star
8

hiui

HIUI is a solution that is adequate for the fomulation and implementation of interaction and UI design standard for front, middle and backend.
TypeScript
713
star
9

android_tv_metro

android tv metro framework and server API
Java
652
star
10

minos

Minos is beyond a hadoop deployment system.
Python
520
star
11

rose

Rose is not only a framework.
Java
498
star
12

MiLM-6B

414
star
13

chronos

Network service to provide globally strictly monotone increasing timestamp
Java
397
star
14

LuckyMoneyTool

Java
375
star
15

mace-models

Mobile AI Compute Engine Model Zoo
Python
368
star
16

mobile-ai-bench

Benchmarking Neural Network Inference on Mobile Devices
C++
346
star
17

kaldi-onnx

Kaldi model converter to ONNX
Python
233
star
18

linden

Java
230
star
19

themis

Themis provides cross-row/cross-table transaction on HBase based on google's percolator.
Java
226
star
20

rdsn

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/rdsn
C++
144
star
21

thain

Thain is a distributed flow schedule platform.
TypeScript
81
star
22

misound

MiSound is a Android application making XiaoMi's SoundBar more powerful. EQ, control, player all in one.
Java
63
star
23

galaxy-sdk-java

Java SDK for Xiaomi Structured Datastore Service
Java
63
star
24

C3KG

Python
61
star
25

ozhera

Java
54
star
26

jack

Jack is a cluster manager built on top of Zookeeper and thrift.
51
star
27

galaxy-fds-sdk-python

Python SDK for Xiaomi File Data Storage.
Python
50
star
28

nnlib

Fork of https://source.codeaurora.org/quic/hexagon_nn/nnlib
C
49
star
29

pegasus-rocksdb

Has been migrated to https://github.com/pegasus-kv/rocksdb
C++
34
star
30

cloud-ml-sdk

Python
32
star
31

pegasus-java-client

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/java-client
Java
31
star
32

ECFileCache

Java
30
star
33

cmath

CMATH: Can your language model pass Chinese elementary school math test?
Python
30
star
34

talos-sdk-golang

Go SDK for Xiaomi Streaming Message Queue
Go
28
star
35

mace-kit

C++
27
star
36

pegasus-go-client

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/go-client
Go
23
star
37

emma

Python
22
star
38

xiaomi.github.com

JavaScript
21
star
39

galaxy-fds-sdk-java

Java SDK for Xiaomi File Data Storage.
Java
21
star
40

StableDiffusionOnDevice

ๆœฌ้กน็›ฎๆ˜ฏไธ€ไธช้€š่ฟ‡ๆ–‡ๅญ—็”Ÿๆˆๅ›พ็‰‡็š„้กน็›ฎ๏ผŒๅŸบไบŽๅผ€ๆบๆจกๅž‹Stable Diffusion V1.5็”Ÿๆˆๅฏไปฅๅœจๆ‰‹ๆœบ็š„CPUๅ’ŒNPUไธŠ่ฟ่กŒ็š„ๆจกๅž‹๏ผŒๅŒ…ๆ‹ฌๅ…ถ้…ๅฅ—็š„ๆจกๅž‹่ฟ่กŒๆก†ๆžถใ€‚
C++
20
star
41

galaxy-fds-sdk-android

Android SDK for Xiaomi File Data Storage.
Java
17
star
42

galaxy-sdk-python

Python SDK for Xiaomi Structured Datastore Service
Python
16
star
43

go-fds

Next-generation fds golang sdk
Go
15
star
44

galaxy-fds-sdk-php

PHP SDK for Xiaomi File Data Storage.
PHP
15
star
45

galaxy-sdk-go

Go SDK for Xiaomi Structured Datastore Service
Go
15
star
46

galaxy-hadoop

Hadoop interface for Xiaomi Open Storage
Java
13
star
47

galaxy-thrift-api

Thrift API for Xiaomi Structured Datastore Service
Thrift
11
star
48

galaxy-fds-sdk-cpp

C++ SDK for Xiaomi File Data Storage
C++
10
star
49

galaxy-fds-sdk-javascript

JavaScript
9
star
50

pegasus-python-client

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/python-client
Python
8
star
51

galaxy-sdk-php

PHP SDK for Xiaomi Structured Datastore Service
PHP
8
star
52

pegasus-datax

Provide pegasus plugin in alibaba/DataX, please refer to 'pegasuswriter/doc/pegasuswriter.md'.
Java
8
star
53

galaxy-fds-migration-tool

A MapReduce tool to migrate objects or files parallely between different object storage systems
Java
7
star
54

galaxy-sdk-nodejs

Node.js SDK for Xiaomi Structured Datastore Service
JavaScript
6
star
55

pegasus-nodejs-client

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/nodejs-client
JavaScript
6
star
56

pegasus-scala-client

Has been migrated to https://github.com/apache/incubator-pegasus/tree/master/scala-client
Scala
6
star
57

PowerTestDemo

Java
5
star
58

DetermLR

Open source code for paper
Python
5
star
59

galaxy-fds-sdk-ios

ios sdk for galaxy-fds
Objective-C
5
star
60

SiMuST-C

Python
5
star
61

pegasus-YCSB

Provide pegasus plugin in YCSB, please refer to 'Test Pegasus' section in README.
Java
5
star
62

nlpcc-2023-shared-task-9

https://mp.weixin.qq.com/s/pBDvTmr_oOHUPzBhjXG-aw
Python
5
star
63

galaxy-sdk-cpp

C++ SDK for Xiaomi Structured Datastore Service
C++
4
star
64

TED-MMST

1
star
65

PowerTestDemoGlobal

The demo script of Power Consumption Test.
Java
1
star
66

galaxy-sdk-javascript

Javascript SDK for Xiaomi Structured Datastore Service
JavaScript
1
star