合同上写着“零停机”,工具文档里也写着“零停机”。可周六那天,3号产线本该发出400台产品,却冷冰冰地停在那里,847条IDoc堵在一个没人按生产量验证过的系统里。
![]()
工厂经理叫Dietrich。他不在乎“零停机”这个技术术语是什么意思。他在乎的是3号产线什么时候能回来。运营总监Sara从周四起就没睡过觉,从H+3开始每30分钟打一次电话。项目经理一直说“我们还在按计划推进”——这句话已经从进度汇报变成了祈祷。
到第11个小时,从2009年就守着这套系统的首席DBA Klaus,在电话会议的沉默里说了一句:“我们需要更多时间。”
14小时后,写锁才释放。14个小时的“零停机”。Dietrich从没问过技术定义,他只想让3号产线回来。
词汇鸿沟是怎么把项目撕开的
SAP技术文档里的“零停机”,指的是升级过程中系统不发生计划外不可用。运营团队理解的“零停机”,是“我能过账收货”。这是两件事。
如果这两个定义没有在签工作说明书之前写下来、达成一致,你就是在为第11个小时那场没人想开的对话埋雷。
一个准备充分的中型系统NZDT升级,写锁窗口通常是2到4小时。数据量大、自定义ABAP代码多的大型系统,这个窗口会显著拉长。厂商给的基准数字来自参考系统——硬件最优、代码干净、数据量受控。你的生产系统不是那个参考系统。
还有一件事得说在前面:回滚方案要在彩排里测,不能只测正向迁移。要计时。如果回滚比切换窗口还长,它就不是可用的回滚方案,只是一份让人心里好受的文档。4小时窗口里跑6小时的回滚,那叫意向声明。这一点埋在大多数项目计划里,它不该被埋着。
切换后48小时,五件事总会出问题
上线检查清单管的是切换。切换之后的48小时,才是迁移真正被验证的地方。这五种失败模式在不同系统规模、行业、地区反复出现,它们不是边缘案例,是规律。
- IDoc积压爆炸。切换窗口里排队的IDoc会在系统开放时同时重启处理。如果入站处理能力没有为这波洪峰扩容,队列堆积的速度会快过处理速度。头24小时每30分钟查一次IDoc错误队列,不是每小时,是每30分钟。30分钟发现和2小时发现的区别,是可恢复和升级到COO的区别。
- 定时任务重启出错。切换时正在跑的后台任务会被取消。在新系统上重启后,有的干净完成,有的重复处理已处理过的数据,有的因为用户ID没完全迁移而报权限错误。在向用户开放系统前,把任务日志和基线对一遍。这是30分钟的事,能挡掉3小时的救火。
- 测试里能跑的自定义代码,在生产数据量上失败。测试数据下1分钟跑完的选择屏幕,在生产上跑45分钟然后超时。这几乎总是被小测试数据集掩盖的性能问题,通常和索引有关,但诊断它需要生产环境权限。头48小时要有开发资源待命——是待命,不是随叫随到,这两者不一样。
- 没测全的集成端点。中间件配置在测试环境端到端测过。生产环境是不同的网段、不同的防火墙规则、不同的证书有效期。第一笔触达外部系统的生产交易就会发现问题。头4小时要有网络工程师和集成中间件团队待命。
- 没人想起来要测的那件事。每次切换都有一个。升级时加了个权限对象却没维护对应角色。号码段被重置成1,和现有数据撞车。一张货币表没被纳入迁移范围。这一项没法具体规划,只能通用规划:头48小时设作战室,决策者在场,有权绕过三级变更审批直接修。切换后问题处理得好的团队,不是清单最好的,是决策链最短的。
真正管用的架构:蓝绿
能让大型SAP环境实现真正接近零停机的模式,是把蓝绿部署搬到SAP上:源系统和目标系统并行跑,迁移窗口内通过SLT或SDI在两者之间复制数据,切换时把用户重定向到目标系统。回滚就是把用户重定向回去。理论切换窗口是分钟级,不是小时级,因为目标系统本来就在跑,你只是移动指针。
两个并行系统在编预算时显得很贵。改变我想法的是这个数字:行业停机成本估算显示,中型制造商一次计划外SAP中断,在产量损失和恢复人力上的代价大约在每小时5万到15万美元区间。你的实际数字会因行业和规模而异,但即便按下限算,14小时的切换超时,代价也不是一套额外系统的价格,而是它的好几倍——再加上一位运营总监从此不再完全信任IT团队的组织损伤。
蓝绿的实际难点是并行期间的数据一致性。在源系统产生数据的交易类型,必须在切换前对目标系统可见。这需要仔细分析哪些交易类型会产生必须同步的数据,并定义一套冻结顺序,确保重定向那一刻的一致性。这是活儿。但比周六晚上解释14小时超时,活儿少得多。
零停机是目标,不是保证。真正做到接近零停机的团队,先用业务语言定义它,再倒推技术方案——而且他们的回滚方案永远比正向方案短。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.