京东数据库智能运维平台建设之路
作为切换系统的核心组件,分布式检测功能主要解决系统容灾方面的问题。按照京东数据库服务器多数据中心部署的特征,独立的数据中心各部署了一个检测节点,并通过特殊标识的接口域名区分。当发生切换操作时,切换系统会根据传入的故障主机IP等信息,随机选取两个机房接口执行调用,探活操作如果发现有一个节点主机存活,那么认为主机存活;如果发现两个节点都探测为宕机,那么认为主机宕机。 (2)Master故障切换 主库实例故障,切换系统会首先通过分布式检测系统检查实例存活状态,确认宕机后将根据基础信息中的实例切换标识,选择使用自动切换或手动切换,两种切换方式原理相同:先在切换系统上创建切换任务,手动切换需要DBA执行切换按钮,切换操作会通过insert方式插入数据以验证实例运行状态,避免实例夯住和硬盘只读的情况。如果没有存活的从库,则放弃本次操作并以邮件和短信的方式通知DBA。新主库是按照先本地(先连接数少,后QPS负载低),后异地的原则选择,执行切换成功后将变更相应元数据信息,示例如下: 某一主四从的集群,主库 10.66.66.66:3366故障,需要切换,如下:
(3)Slave故障切换 从库实例故障,将故障实例下的域名变更到该集群下的非故障实例上,选择目标实例方式与主库实例选择规则一致。切换成功或失败都会发邮件及短信告知相应的DBA。故障实例恢复后,DBA判断是否需要回切。示例如下: 有一主四从的集群,从库 10.88.88.89:3366故障,需要切换,如下: 监控系统会自动创建任务,并根据先本地后异地原则,然后再查连接数、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从繁杂的备份管理工作中解脱出来,实现自动处理,减少人为干预,并提高备份文件的可用性。关于备份文件可用性问题,以轮询恢复的策略确保每个集群在一个周期内都被恢复到。系统架构设计如下图所示: 架构具备以下几个特点: 调度触发多样化 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |