二、平台介绍
archer
基于inception的自动化SQL操作平台,支持工单、审核、认证、邮件、OSC等功能。
github地址:https://github.com/jly8866/archer
如果对archer做一个分解的话,个人觉得可以分为inception和django
inception是内在,负责审核
django是外在,负责展示
ps:这种理解,不知道原作者会不会很郁闷,哈哈
inception
一个集审核、执行、备份及生成回滚语句于一身的MySQL自动化运维工具
github地址:https://github.com/mysql-inception/inception
Django
Django是一个开放源代码的Web应用框架,由Python写成。采用了MT'V的框架模式,即模型M,模板T和视图V。
三、二次开发
在archer的基础上也做了一些简单的二次开发:
屏蔽单点登录
修复邮件发送bug
显示中文全名
为工程师分配指定的数据库实例
接下来,计划在archer集成更多的功能:
MSDB
数据归档
数据库备份
性能报告
巡检报告
四、小结
目前,已经将archer部署到生产环境,也为新上线的某x项目成功发布DB脚本,后续准备逐步铺开。
总的来说,个人觉得效果还是ok的,起码在数据库自动化和DevOps走出了一步,对比两年前的人工审核SQL,总结两点感受最深的经验:
一定要借助自动化工具/平台,纯人工效率实在低
一定要找到合适的审核点,让大家都来遵守,对于SQL审核来说,就是要把DB操作权限掌握在DBA手里,不能对外开放,这点一定要掐死了!!!是的,掐死了,要狠!!!哈哈
archer安装及使用
https://riverdba.github.io/2017/04/15/archer-install/
https://riverdba.github.io/2017/04/15/archer-install/