<div align="center">
<img src="https://github.com/NaNShaner/repoll/blob/develop/images/R.png" width="350">
</div>
[![ice](https://img.shields.io/badge/developing%20with-Simpleui-2077ff.svg)](https://github.com/newpanjing/simpleui)
![](https://img.shields.io/badge/build-passing-green.svg)
![Django CI](https://github.com/NaNShaner/repoll/workflows/Django%20CI/badge.svg)
# repoll
使用django框架编写的redis的管理平台,[项目wiki](https://github.com/NaNShaner/repoll/wiki)
![Anurag's github stats](https://github-readme-stats.vercel.app/api?username=NaNShaner&show_icons=true&theme=radical)
## 项目简介
### 主要功能(当前功能)
- Redis的申请、审批、配置上线
- Redis的监控、启动以及停止操作平台化管理
- 权限管理依赖django 框架
![image](https://github.com/NaNShaner/repoll/blob/master/images/main.png)
# 环境依赖
- 操作系统
```
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
* 下载项目
```angular2html
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',
}
}
```
* 初始化数据库
```bash
python3 manage.py makemigrations
python3 manage.py migrate
```
* 执行以下命令完成simpleui的静态资源离线可访问
```
cd /django/repoll
python3 manage.py collectstatic
```
* 创建管理员用户
```bash
python3 manage.py createsuperuser #用户名密码,自定义
```
* 如需对接ldap请根据setting注释根据实际情况修改配置
# 启动项目
* 开启redis的qps监控执行以下命令
```bash
cd /django/repoll
python3 manage.py crontab add
```
* 启动repoll
```bash
cd /django/repoll
python3 manage.py runserver 127.0.0.1:8000 # 这里的IP换成本机服务器IP,端口自定义
```
# 访问项目地址
```
http://127.0.0.1:8000/admin
```
# 初始化redis各模式的配置
```bash
python3 manage.py loaddata /django/repoll/init_data.json
```
# 初始化redis资源池服务器
* 在平台内点击资源池服务器列表,点击增加输入相关字段即可
![image](https://github.com/NaNShaner/repoll/blob/develop/images/ResourcePool.png?raw=true)
* 特别注意!!!
所有资源池中的服务器,安装redis必须使用平台提供的脚本完成安装,命令如下:
```bash
sh repoll-init.sh repoll # 密码自定义
```
# 标准化申请流程
* 分配普通用户权限(dev或者ops角色)
* 领导层进行审批(boss角色)
* 管理员(dba角色)进行配置上线
# demo演示
http://repoll.club:8091/
admin/admin
# Todo list
- [x] 支持哨兵模式和集群模式
- [x] 监控独立展示,包括qps、内存使用率、客户端链接以及慢查询等
- [x] 支持在线扩缩容的申请、审批、配置生效流程
- [x] 支持Redis密码
- [x] 支持导入已存在的redis实例
- [ ] 支持不同Redis集群间的数据迁移、同步、校验等运管功能
- [ ] 支持web console,在线执行redis命令
- [ ] 支持容器化部署
- [ ] 支持Redis实例容器化部署
# 声明
该项目将长期维护,期望有对redis有平台化管理的朋友加入一起维护。
如果您觉得该项目对您有所帮助,欢迎star
# 致谢
开发工具由[Jetbrains](https://www.jetbrains.com/)赞助的Pycharm
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。 Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。 [1] Redis支持主从同步
资源推荐
资源详情
资源评论
收起资源包目录
Django开发的Redis管理平台Repoll,旨在提高企业对redis实例平台化管理,助力运维转型。.zip (81个子文件)
新建文本文档.txt 2KB
repoll-master
init_data.json 3KB
.github
workflows
docker_ci.yml 712B
codeql-analysis.yml 3KB
.gitattributes 61B
LICENSE 11KB
templates
memory.html 2KB
500.html 203B
import_ext_ins.html 778B
change_list.html 208B
manage.py 804B
favicon.ico 19KB
polls
__init__.py 227B
tests.py 125B
admin.py 25KB
migrations
__init__.py 0B
apps.pyc 504B
models.pyc 2KB
urls.pyc 324B
apps.py 275B
apis.py 17KB
models.py 36KB
__init__.pyc 150B
urls.py 849B
scheduled.py 8KB
handlers.py 49KB
tools.py 9KB
admin.pyc 271B
__pycache__
__init__.cpython-37.pyc 145B
apps.cpython-37.pyc 554B
static
bootstrap.min.css 118KB
bootstrap.min.js 36KB
simple_chart.html 253B
macro 6KB
jquery.min.js 82KB
tasks.py 17KB
views.py 3KB
forms.py 3KB
requirements.txt 258B
repoll-init.sh 3KB
images
main.png 260KB
addServer.png 106KB
R.png 13KB
login.png 534KB
ResourcePool.png 263KB
static
style.css 131B
bootstrap.min.css 118KB
bootstrap-4.3.1-dist.zip 697KB
bootstrap.min.js 36KB
js
bootstrap.js 129KB
bootstrap.bundle.js.map 393KB
bootstrap.bundle.min.js.map 305KB
bootstrap.min.js 57KB
bootstrap.bundle.min.js 77KB
bootstrap.bundle.js 218KB
bootstrap.js.map 245KB
bootstrap.min.js.map 186KB
css
bootstrap-grid.css.map 148KB
bootstrap.min.css 152KB
bootstrap-grid.css 63KB
bootstrap-grid.min.css.map 106KB
bootstrap-reboot.min.css.map 32KB
bootstrap.css.map 481KB
bootstrap.css 188KB
bootstrap-reboot.css 5KB
bootstrap-reboot.css.map 75KB
bootstrap-grid.min.css 47KB
bootstrap.min.css.map 611KB
bootstrap-reboot.min.css 4KB
favicon.ico 19KB
jquery.min.js 82KB
README.md 4KB
mysite
__init__.py 0B
settings.pyc 3KB
urls.pyc 1KB
wsgi.py 390B
__init__.pyc 146B
urls.py 3KB
settings.py 8KB
__pycache__
settings.cpython-37.pyc 3KB
__init__.cpython-37.pyc 146B
共 81 条
- 1
资源评论
野生的狒狒
- 粉丝: 3393
- 资源: 2436
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于 Ant 的 Java 项目示例.zip
- 各种字符串相似度和距离算法的实现Levenshtein、Jaro-winkler、n-Gram、Q-Gram、Jaccard index、最长公共子序列编辑距离、余弦相似度…….zip
- 运用python生成的跳跃的爱心
- 包括用 Java 编写的程序 欢迎您在此做出贡献!.zip
- (源码)基于QT框架的学生管理系统.zip
- 功能齐全的 Java Socket.IO 客户端库,兼容 Socket.IO v1.0 及更高版本 .zip
- 功能性 javascript 研讨会 无需任何库(即无需下划线),只需 ES5 .zip
- 分享Java相关的东西 - Java安全漫谈笔记相关内容.zip
- 具有适合 Java 应用程序的顺序定义的 Cloud Native Buildpack.zip
- 网络建设运维资料库职业
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功