正式切换
正式切换的组织、准备和角色分工同切换演练基本一致,这里不再重复介绍。切换实施时,按照正式切换Runbook执行。不同业务系统的切换方案不同,对应的切换Runbook步骤也会不同,下面Runbook切换步骤仅供参考:
- 切换前准备和检查
正式切换前,先要按照Runbook Check List做切换前准备和检查,不同业务系统的切换Runbook准备和检查步骤会有所不同,下面步骤仅供参考:
表1 切换前准备和检查项 大类
前置工作项
责任部门
活动
是否涉及
是否完成
组织和保障准备
确定停机切换窗口
企业项目经理
确定停机切换窗口为:X月X日X时X分开始
是
是
确认停机公告图片和话术
企业项目经理
确认停机公告图片和话术已更新为最新版本
是
是
通知相关人员发布官网公告
企业项目经理
邮件发送通知相关人员进行官网公告发布
是
是
预约会议作战室
企业项目经理
会议室布置安排
是
是
切换相关人员通知和核对
企业项目经理
确认切换参与人员是否可以出席
是
否
企业项目经理
第三方配合切换当晚参与人员和联系方式确定
是
是
企业项目经理
停服切换期间,运营中心值班人员就位
是
是
企业内部发送内部微信群通知
企业项目经理
切换微信群名:XX项目切换群
是
是
云厂家建立后端保障团队
云厂家项目经理
云厂家建立和客户的联合切换保障团队
云厂家单独拉通后端运维和研发组建保障welink群
是
是
第三方/业态影响沟通和提醒
第三方/业态提前通知项
企业项目经理
分别与业态沟通停机影响和应对方案
是
否
运维团队
对于第三方调用固定IP地址的情况,确认配置修改详细步骤
是
否
环境清单核对
确定发版暂停的截至日期
研发团队
确定发版暂停的截至日期
是
否
应用清单检查并刷新启停脚本
研发团队
研发人员Check上云应用清单
是
否
JOB清单检查并刷新脚本
研发团队
Check最新的job清单
是
否
研发团队
检查脚本中的清单是否是最新的
是
否
环境(源端、目的端、迁移任务、执行脚本)检查
云服务基础检查项
运维团队
确认运维提供的测试wifi是否已准备就绪
是
否
运维团队
检查华为云专线同步带宽使用是否有超带宽的告警
是
否
运维团队
云厂家后端保障人员进行日常状态检查
是
否
运维团队
云服务高可性检查,确认目标端云资源是否存在单AZ或单点故障问题
是
否
数据库检查项
数据库相关
检查华为云数据库端口是否和生产保持一致
是
否
数据库相关
检查NTP时钟设置是否一致
是
否
数据库相关
检查中间件Reids数据迁移任务状态正常,无异常报错或告警(包含回退任务)
是
否
数据库相关
检查DRS-mysql数据迁移任务状态‘增量迁移中’,无异常报错或告警(包含回退任务),数据动态比对任务配置完成
是
否
数据库相关
检查DRS-mongodb数据迁移任务状态‘增量迁移中’,无异常报错或告警(包含回退任务)
是
否
数据库相关
检查MySQL数据库源和目的端字符集是否一致
是
是
数据库相关
数据库确认源端和目的端库用户一致
是
是
周边系统配合检查项
大数据相关
修改大数据抽数的数据库地址为IDC备库地址
是
否
执行脚本检查
运维团队
应用服务启动脚本放在执行机
是
否
运维团队
应用心跳检查脚本放在执行机
是
否
日志系统检查
运维团队
检查ELK日志平台,是否能承受大量应用启动时产生的大量日志
是
否
告警监控系统检查
运维团队
监控系统是否正常
是
是
磁盘无用信息清理
运维团队
生产环境检查磁盘使用情况,提前执行脚本批量清理磁盘
是
是
操作指导书、工具、终端和登陆平台准备
通知全员更新到最新的Runbook
项目经理
同步最新生产Runbook地址给切换全员(包含业态人员)
是
否
相关人员准备
项目经理
人员最后一次熟悉整体切换流程以及各自操作指导
是
否
相关人员操作权限检查
ALL
人员登录操作环境检查操作权限(登录系统,OS,操作界面等)
是
否
测试团队
ITSM是否可以正常登录?是否可以正常记录上云项目的问题?
是
否
ALL
登录批处理任务平台后检查当天操作人员是否有操作执行器的权限
是
否
操作终端检查
ALL
具体到人,割接、演练前一晚必须确保笔记本,环境等无异常(DBA单独一根网线,提前准备好大交换机)
是
否
测试客户端检查
测试团队
测试人员清理客户端以及浏览器缓存
是
否
- Runbook切换操作
完成切换前准备和检查后,企业就可以按照Runbook中的计划和步骤进行正式切换了,每个任务都要严格按照Runbook中的操作命令进行操作,不同业务系统对应的切换Runbook步骤会有不同,下面步骤仅供参考,注意步骤顺序标号一致的表示是并行执行。
如果批处理任务较多,切换时间窗有限,可根据优先级分批次进行启动。
表2 切换操作步骤样例 任务
步骤顺序
子任务
源端业务流量转发至维护公告页面
1.1
变更CMDB业务状态为维护中
1.2
外部访问流量转发至维护公告页面
停止源端定时任务
2.1
停止源端的定时任务
2.1
停止源端的数据库定时任务
停止源端应用服务及配置中心
3.1
停止源端应用服务(xxx个)
3.1
停止源端配置中心
消息队列数据迁移
4.1
消息队列MQ数据迁移
4.2
等待&确认kafka消费完成
确认源端的数据层数据静止
5.1
确认源端的redis数据静止
5.1
确认源端的MySQL数据静止
5.1
确认源端的MongoDB数据静止
数据一致性对比
6.1
redis数据一致性对比、停止同步任务
6.1
MongoDB数据一致性对比、停止同步任务
6.1
MySQL 数据一致性对比、停止同步任务
修改数据层的DNS内网域名解析
7.1
修改应用间访问的内部域名-》华为云上应用实例
7.1
修改目的端redis的内网域名-》华为云实例IP
7.1
修改目的端的MySQL的内网域名-》华为云实例IP
7.1
修改目的端MongoDB的内网域名-》华为云实例IP
7.1
修改目的端消息队列MQ的内网域名-》华为云实例IP
7.1
修改目的端Kafka的内网域名-》华为云实例IP
启动配置中心、定时任务调度服务、JOB注册、开启kafka消费开关
8.1
启动配置中心
8.2
启动定时任务调度服务
8.3
批量发布配置中心配置(执行JOB注册)
8.3
批量发布配置中心配置(开启kafka的消费开关)
8.4
检查阿配置中心和定时任务调度服务的开关是否正确
内网停机公告撤销&启动目的端应用&检查
9.1
启动目标端消息队列MQ
9.2
启动目的端应用服务(xxx个服务)
9.3
心跳检查
9.4
基础业务检查
9.5
取消内网转发至维护公告页面
启动目的端的数据库定时任务和优先级最高的定时任务)
10.1
启动数据库定时任务
10.1
启动目的端第一批批处理任务
主流程测试(P0用例)
11.1
主流程测试(P0用例)
- 进行验证测试,确保应用程序在目标云环境中正常运行。
- 验证核心功能和关键业务流程,确保与迁移前一致。
- 监测日志和指标,确保系统运行情况正常。
外网停机公告撤销
12.1
取消外网转发至维护公告页面
启动目的端第二批批处理任务
13.1
启动目的端第二批批处理任务
13.2
P1业务验证
(启动JOB后,P1用例验证)
14.1
验证目的端业务功能
启动目的端第三批批处理任务
15.1
启动目的端第三批批处理任务
启动目的端第二批批处理任务
13.1
启动目的端第二批批处理任务