WS运维管理平台
- 用户管理
- 资产管理
- CMDB
- 运维工单
- LDAP认证
- 发布系统
- 数据库管理系统
- 任务调度
- 内部portal
- 应用健康检查
* Python 3.6.3
* Django 1.11.7
* Nginx 1.12.2
```
django启动: scripts/gunicorn.sh start
celery启动: 将 supervisor_conf/celery_worker.ini 复制到 /etc/supervisord.d/ 中,启动 supervisor: supervisord -c /etc/supervisord.conf
```
- 用户管理
1. 用户的增删改查
2. 用户组的增删改查
3. 权限的增删改查
4. 用户组的权限管理
5. ldap 认证
- 资产管理
1. 服务器的增删改查
2. cmdb 的增删改查
3. 阿里云服务器的自动增删改查、阿里云服务器信息的自动更新
4. 阿里云服务器信息的手动一键更新
5. 阿里云服务器上部署的应用自动增删改到 cmdb
6. IDC 服务器信息实现手动批量更新(由于公司网络及防火墙的原因,需从IDC中的跳板机执行脚本批量post信息到平台的接口,实现更新)
7. IDC 机房信息的增删改查
- 运维工单
见 workform/莴笋运维平台工单设计思路.txt
1. 包括: 上线工单、sql工单、防火墙工单、其他运维工单、工单列表、我的工单(已审核、待审核、我发出的)
2. 工单涉及的每个流程的增删改查,及定义每个流程可以审批的人/组
3. 工单类型及该类型要求的审批流程的增删改查
4. 工单审批: 不通的工单类型、不同的流程,只有可以审批的人可见并审批
5. 展示工单各个流程下的审批状态和结果
- 发布系统
1. 基于不同的环境(生产,预发布/灰度)发布与回滚
2. 基于权限限制发布: 发布人的权限不同,能够发布的应用也是不同的
3. 版本的记录:jenkins 打包时会将相关信息(版本号,应用名,打包人等) post 到本平台的接口
4. 根据版本的状态,确定要发布或回滚的最终版本,其中回滚的版本只能是之前上线过的版本
5. 记录发布历史、发布脚本执行过程、发布状态
- 数据库管理
1. 数据库集群、实例、服务器等信息的增删改查
2. 结合工单系统,实现同一个工单提交多个库的 SQL
3. 基于 inception 实现 SQL 提交前的语法检查、影响行数检查
4. 基于 inception 实现 SQL 的执行(执行报错后结束或继续执行)、备份与回滚(批量回滚/回滚指定语句),并查看执行或回滚结果
5. 基于 inception 实现 OSC 功能,包括 OSC 和中止 OSC 并且显示执行进度
6. 自定义高危 SQL
7. SQL 操作统计
- 任务调度
1. 基于 celery 实现定时任务的增删改查
2. 记录 定时任务或者实时触发任务的执行结果,主要的点是 task_name 与 task_id 的关联
- 内部 portal
1. 主要是 公司内部系统的汇总及访问跳转
- 健康检查
1. 基于 nginx 的健康检查模块,监控应用的健康状态
2. 修改了 该模块的 前端展示样式(将nignx_health_check/ngx_http_upstream_check_module.c替换掉原模块中的同名文件,然后重新编译nginx),相对更美观
3. 对健康检查的结果做了告警,如果是down、就告警(钉钉+微信)
暂时先略