机房发来一封通知,说下个月要做网络割接,时间窗口恰好落在公司的促销周。或者反过来:业务做起来了,回头一看,主要客户都集中在另一个区域,原来那个节点怎么调参数都快不起来。这类事情,在企业用服务器的几年里,迟早会碰上一次。
真正让人头疼的往往不是“要不要换个地方”,而是换的时候业务还能不能照常运转。跨机房热迁移想解决的就是这一步:尽量在业务不中断的情况下,把云主机从一个机房搬到另一个机房。下面先说企业为什么会有这种需求,再把热迁移和其他迁移方式分开讲清楚,然后聊聊评估这项能力时该看哪些技术指标,最后结合恒讯科技官网披露的信息,谈谈采购前应该确认什么。
服务器买回来以后,并不会一直待在原地不动。业务在变,机房也在变,下面几种情形是企业最常遇到的。
当初选节点,依据的是当时的用户分布和网络条件。过两年,用户结构变了,或者机房的运营商接入、出口带宽、路由质量有了调整,原来合适的位置就未必继续合适。典型的表现是访问投诉变多、延迟忽高忽低,而且很难靠改配置解决,因为问题出在“位置”本身。
一台机器能撑住的小站,和日均几十万请求的业务系统,对资源、网络和部署方式的要求不是一个量级。有时原节点的资源池已经偏紧,或者缺少适合新业务的网络条件,这时候单纯加配置帮助有限,需要的是换一个更合适的节点,把现有系统整体挪过去。
设备更换、网络调整、机柜搬迁,都是机房运营中的常规动作。服务商通常会提前通知,但通知里的时间窗口不一定落在企业的业务低谷。如果手里有可用的迁移方案,企业就能自己挑时间、主动安排;没有的话,只能等着被动承受。
业务全部压在同一个机房里,电力、网络或者机房级的故障一旦出现,影响就是整体性的。把部分业务放到不同地点,是分散风险的常见思路。不过要先说清楚一点:能迁移,不等于已经做好了容灾,这两件事的区别后面会专门讲。
把整个过程拆开看,大致是这样的。先在目标机房准备好承接环境,也就是目标主机;然后把源主机上的数据做一次全量复制。复制期间业务仍在源主机上运行,新产生的数据变化会被持续记录,并以增量方式同步到目标端。等两边的差异缩小到足够小,就挑一个切换点:短暂停止写入,同步最后一小批变化,再把业务入口指向目标主机。验证没问题之后,源端通常还会保留一段时间作为退路,再择机回收。
名字里的“热”,指的是迁移的大部分时间里业务保持在线。它并不意味着最后切换那一刻毫无感知,这一点放在后面谈价值时还会再提。
不少人把“迁移”“备份”“容灾”混着用,其实它们解决的问题不同。先看四种常见做法的对比:
迁移方式 | 迁移期间的业务状态 | 基本做法 | 需要留意的地方 |
停机迁移 | 先关闭业务 | 停服后整体复制、部署,再恢复运行 | 停机时长随数据量增加,需要提前约定窗口 |
在线迁移(热迁移) | 大部分时间保持运行 | 运行期间复制数据并持续同步变化,最后短暂切换 | 切换瞬间的中断时长,以及数据一致性 |
跨机房迁移 | 取决于所采用的方式 | 资源和数据在不同数据中心之间转移 | 跨机房链路的带宽与延迟,IP及访问地址可能变化 |
备份恢复 | 通常需要中断或重建 | 用备份数据在新环境中还原系统 | 恢复到的是备份时间点的数据,之后的变化无法找回 |
要留意的是,这几个概念说的并不是同一个维度。“在线迁移”描述的是迁移时业务在不在线,“跨机房迁移”描述的是位置跨了数据中心,而“灾难恢复”关心的是故障发生之后能不能恢复、多久恢复,通常需要提前持续复制数据并定期演练。一次成功的跨机房热迁移,结果是业务从A机房搬到了B机房,并不会自动让企业同时拥有两个机房的冗余。把迁移当容灾用,是比较常见的误解。
传统的停机迁移,要选窗口、发通知、安排人值守,数据量越大,等待的时间越长。热迁移把大部分复制工作放到了业务运行期间,真正需要中断的,只剩最后的切换。
但这里不宜说得太满。最后切换仍可能出现短暂中断,长短取决于迁移机制本身、迁移期间的数据变化量,以及应用是否依赖长连接、会话状态或未完成的数据库事务。所以评估一项迁移服务时,“整体用了多久”不如“切换那一下停多久”重要。
用户集中在哪个区域、哪几家运营商的网络更适合,这些都会随着业务发展而变化。有了成熟的迁移能力,部署位置就不再是一次性的决定,可以按目标用户、网络情况和业务规划做调整。
当原有资源需要调整,或者机房有维护计划时,企业可以提前规划迁移,在自己选定的时间完成,而不是被单一节点牵着走。选择多了,业务排期上的压力自然小一些。
更长远的价值在于把迁移写进运维和业务连续性计划里:哪些业务可以迁、迁移的前提是什么、由谁负责、多久做一次小范围演练。有了这套机制,迁移才不会沦为出事以后才临时翻出来的应急手段。
谈迁移,绕不开两个缩写。RPO指的是业务最多能容忍丢失多长时间的数据,比如RPO为零,意思是不能丢任何已提交的数据;RTO指的是业务最多能容忍中断多久。不同业务对这两个数字的要求差别很大,评估迁移服务之前,最好先把自己业务的RPO和RTO定下来,再去对照服务方能提供什么。
在此基础上,下面六个方面是判断一项跨机房热迁移是否靠谱的关键。
1. 数据同步机制。全量复制负责把存量数据搬过去,增量同步负责追上迁移期间的新变化。两者怎么衔接,增量同步的间隔有多短,直接决定了最后切换时需要补多少数据。
2. 数据一致性。这是最容易被忽略的一点。数据库有正在写入的事务、应用有缓存和临时文件时,直接按文件层面复制,可能得到一份“看起来完整、实际上不一致”的数据。需要弄清楚服务方是如何保证迁移期间数据不丢、状态不乱的,数据库是否要单独处理。
3. 网络传输条件。跨机房意味着数据要走两地之间的链路,带宽、延迟和链路质量会直接影响同步速度。数据量大而带宽有限时,迁移时间会被明显拉长。
4. 切换机制。业务如何从源端转到目标端?是靠IP漂移、修改DNS,还是由业务侧调整接入地址?切换时有没有写入冻结?这些细节决定了前面说的“短暂中断”到底有多短。
5. 回退方案。迁移中途出了问题,能不能退回原环境?源端数据会保留多久?一项没有回退路径的迁移,风险是全部压在企业自己身上的。
6. 迁移后的验证。迁移完成不等于结束。应用能否正常启动,数据库数据是否完整,网络连接、域名解析和账号权限是否一切如常,都需要逐项确认,最好提前准备好一份验证清单。
原则上,业务越不能停、数据变化越频繁,对热迁移的关注度就应当越高。常见的几类包括:
ERP、OA等企业内部管理系统。员工日常办公依赖它,白天停一会儿影响很直接,但夜间通常有较宽松的窗口可用。
SaaS平台和互联网应用。用户全天候访问,对可用性的预期较高,对切换时的中断也更敏感。
电商平台及订单处理系统。订单、支付状态的一致性比单纯的“不中断”更重要,促销期间尤其要避开迁移。
数据库及数据处理业务。数据量大、写入频繁,同步机制和一致性保障是首要问题。
有多地区用户访问需求的企业应用。用户分布一旦变化,调整部署地点的需求会反复出现。
不同业务对中断时间的容忍度并不一样:内部系统也许能接受夜间几分钟的停顿,交易类系统则可能连几十秒都需要慎重对待。所以迁移策略应该按业务分别制定,不适合一刀切。
恒讯科技跨机房热迁移是明确的一项服务,约5分钟的数据迁移能力。企业如果希望业务位置有调整的余地,这是一项值得放进比较清单的功能。
同时云主机采用三层存储技术,涉及缓存、沉淀与备份三个环节,并具备集中管理和监控的能力。对企业来说,迁移期间能随时看到资源和运行状态,出了问题也更容易定位,这类管理能力是在迁移之外同样有价值的一面。至于三层存储在具体迁移流程中如何参与,官网没有展开,这部分可以在咨询时让服务方说明。
不管服务方宣传得多好,真正落地之前,下面这些问题最好逐条问清楚、写进沟通记录。
源机房和目标机房是否都在迁移支持范围内,不是所有机房组合都能互相迁移。
操作系统版本和应用程序是否兼容,有没有已知的限制。
数据库是否需要单独同步,还是随整机一起迁移。
迁移后IP、DNS和访问地址是否会变化,如果会,业务侧需要同步调整哪些配置。
是否需要提前安排业务切换窗口,以及这个窗口预计多长。
迁移前有没有完整的数据备份,出现异常时怎么回退。
迁移服务的具体范围、费用和交付标准,是否有书面约定。
把问题换个角度看会更清楚:采购时与其问“能不能迁”,不如问“迁的时候哪一步会停、会停多久、出了问题怎么退”。能把这三个问题答具体的服务,才算得上是真正为业务连续性着想。
对企业来说,跨机房热迁移的意义,是在业务需要调整的时候多出一条可选的路,而不是一个能保证万无一失的承诺。恒讯科技把这项能力列在官网云主机页面上,企业可以把它当作一个具体的追问起点:按上面的清单逐项核对适用条件,再决定它适不适合自己的业务。
Copyright © 2013-2020. All Rights Reserved. 恒讯科技 深圳市恒讯科技有限公司 粤ICP备20052954号 IDC证:B1-20230800.移动站


