Repoll Save

Redis管理平台Repoll,现已开源,基于redis3.x,支持单机、哨兵以及集群模式

Project README

ice Django CI

repoll

使用django框架编写的redis的管理平台,项目wiki Anurag's github stats

项目简介

主要功能(当前功能)

  • Redis的申请、审批、配置上线
  • Redis的监控、启动以及停止操作平台化管理
  • 权限管理依赖django 框架 image

环境依赖

  • 操作系统
Ubuntu 18.04
  • 安装依赖
apt install python3-pip
apt-get install libmysqlclient-dev python3-dev
# yum install mysql-devel python3-devel 
pip3 install -r requirements.txt

配置Django

  • 下载项目
make /django # 目录可以自定义
cd /django ; git clone https://github.com/NaNShaner/repoll.git
  • 配置数据库链接
vi /django/repoll/mysite/settings.py
# 修改下文mysql的ip、port、库名、用户名以及密码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'django',
        'USER': 'root',
        'PASSWORD': 'Pass@word',
        'HOST': '127.0.0.1',
        'PORT': '32768',
    }
}
  • 初始化数据库
python3 manage.py makemigrations
python3 manage.py migrate
  • 执行以下命令完成simpleui的静态资源离线可访问
cd /django/repoll
python3 manage.py  collectstatic
  • 创建管理员用户
python3 manage.py createsuperuser #用户名密码,自定义
  • 如需对接ldap请根据setting注释根据实际情况修改配置

启动项目

  • 开启redis的qps监控执行以下命令
cd /django/repoll
python3 manage.py crontab add
  • 启动repoll
cd /django/repoll
python3 manage.py runserver 127.0.0.1:8000 # 这里的IP换成本机服务器IP,端口自定义

访问项目地址

http://127.0.0.1:8000/admin

初始化redis各模式的配置

python3 manage.py loaddata /django/repoll/init_data.json

初始化redis资源池服务器

  • 在平台内点击资源池服务器列表,点击增加输入相关字段即可 image
  • 特别注意!!! 所有资源池中的服务器,安装redis必须使用平台提供的脚本完成安装,命令如下:
sh repoll-init.sh repoll # 密码自定义

标准化申请流程

  • 分配普通用户权限(dev或者ops角色)
  • 领导层进行审批(boss角色)
  • 管理员(dba角色)进行配置上线

demo演示

http://43.143.240.39/ admin/admin

Todo list

  • 支持哨兵模式和集群模式
  • 监控独立展示,包括qps、内存使用率、客户端链接以及慢查询等
  • 支持在线扩缩容的申请、审批、配置生效流程
  • 支持Redis密码
  • 支持导入已存在的redis实例
  • 支持不同Redis集群间的数据迁移、同步、校验等运管功能
  • 支持web console,在线执行redis命令
  • 支持容器化部署
  • 支持Redis实例容器化部署

声明

该项目将长期维护,期望有对redis有平台化管理的朋友加入一起维护。 如果您觉得该项目对您有所帮助,欢迎star

致谢

开发工具由Jetbrains赞助的Pycharm

Open Source Agenda is not affiliated with "Repoll" Project. README Source: NaNShaner/repoll
Stars
262
Open Issues
2
Last Commit
6 months ago
Repository
License

Open Source Agenda Badge

Open Source Agenda Rating