加入收藏 | 设为首页 | 会员中心 | 我要投稿 衢州站长网 (https://www.0570zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

京东数据库智能运维平台建设之路

发布时间:2018-09-01 01:52:38 所属栏目:建站 来源:京东商城技术架构
导读:副标题#e# 运维自动化来源于工作中的痛点,京东数据库团队面对的是商城成千上万的研发工程师,这种压力推动我们不断变革,然而变革不是一蹴而就,也经历过从手工到脚本化、自动化、平台化、智能化的艰难转变,所以说是需求在驱动运维体系的建设,而运维自动

监控系统会自动创建任务,并根据先本地后异地原则,然后再查连接数、QPS,确定目标实例为10.88.88.88:3366,进行自动切换,DBA可在切换任务列表查看详情。

京东数据库智能运维平台建设之路

切换成功的任务会显示回切按钮,DBA可以执行回切,并查看回切的具体信息。

京东数据库智能运维平台建设之路

(4)主从计划性切换 

主从计划性切换实现了按单集群,多集群的批量切换。执行批量切换时可以查看子任务切换的具体步骤,切换后会有前后架构的对比,具体示例如下:

集群1

京东数据库智能运维平台建设之路

批量创建任务,选择原则根据先本地后异地,先连接数后QPS,10.66.66.66:3366选择目标主库为:10.88.88.89:3366。

批量执行切换:

京东数据库智能运维平台建设之路

切换子任务详细信息,可查看到每个子任务的切换结果,执行步骤及前后架构:

京东数据库智能运维平台建设之路

京东MySQL数据库切换系统各功能模块都已组件化、服务简化了DBA的操作流程,缩短了数据库切换的时间。

5、数据库自动化备份恢复

(1)架构设计  

京东数据库备份系统在设计之初,就是为了将DBA从繁杂的备份管理工作中解脱出来,实现自动处理,减少人为干预,并提高备份文件的可用性。关于备份文件可用性问题,以轮询恢复的策略确保每个集群在一个周期内都被恢复到。系统架构设计如下图所示:

京东数据库智能运维平台建设之路

架构具备以下几个特点:

调度触发多样化 

调度中心支持三种类型的触发方式interval、crontab和date:

  • interval是周期调度,可以指定固定间隔时长的任务调度,支持时间单位有weeks、days、hours、minutes、seconds,并支持设定调度开始时间和结束时间以及时区设置。 
  • crontab是定时调度,与Linux的crontab基本相同,支持year、month、day、week、day_of_week、hour、minute、second,并且支持设置调度开始时间和结束时间以及时区设置。 
  • date是一次性定时调度,支持时区设置。 

并发控制

由于调度任务设置具有不均衡性,可能某一时刻需要调度的任务较多,容易引起调度系统出现问题,因此执行任务通过控制并发数来使任务调度执行运行更加平稳。

触发和执行分层

任务触发本身是轻量级集的,而任务执行一般都比较重,因此对触发和执行进行了分层设计,来防止因为执行时间过长导致后续触发出现问题。

维护期间任务不丢失

Linux的crontab在停机维护期间要运行的任务开机后并不会再次执行,而基于APScheduler的调度中心则会在启动后运行指定间隔内尚未执行的任务,减少因维护而错失任务的执行。

备份策略增删改查

之前公司的备份系统是需要指定特定的IP,经常因为服务器维护而导致备份失败,故在设计之初就将备份策略与高可用结合在一起,备份策略指定域名而不是IP。从库因为故障切换时DBS会将此从库上的域名切换到集群内的其他从库,相应的备份也跟随到了此从库,保证了备份服务器是可用的。

失败自动重试 

备份很可能因为偶然因素而失败,因此加入了备份重试的功能,会对6小时以内的备份失败任务进行备份重试,最多重试3次,来获得更高的备份成功率。

自动恢复检测

(编辑:衢州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读