HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

我们为什么要在上云前先做主备机房切换这件事?

  • 2020-04-15
  • 本文字数:1922 字

    阅读完需:约 6 分钟

我们为什么要在上云前先做主备机房切换这件事?

开书之前,需要先把「为什么要在上云前先做主备机房切换这件事?」的始末原由说明白。


简单来说,主备机房切换只是我们 “上云五步骤” 中的初始化环节,最终实现将我们的应用逐步逐步的搬上云:



看到这样的步骤,许多老师会萌生吐槽的极大冲动,您先别急,容我来对 “上云五步骤” 做些解释:


1、出于成本的考虑,除 UCloud 之外(包括阿里与腾讯),没有一家供应商允许将 ‘IOE’ 搬入他们的机房,所以最终选择在 ‘UCloud 万国模块’ 内搭建我们的新机房,然后通过内网与 UCloud 进行互联。

2、出于成本的考虑,专线扩容的申请被 CEO 驳回,最终无法实现伪双活的方案(要求拿出应用视角的流量数据提供参考,由于缺乏完美的监控体系,无法做到)。

3、出于成本的考虑,也同时考虑到将来迁移至云机房后的折旧因素,新机房的硬件投入只有老机房的 50%。


除了以上三点之外,还有一些细节,因为不是重点就不一一举例了,说多了都是泪。

那些客观条件下的迁移方案

方案一:整体冷切

策略:利用周末交易停止,访问量下降的环境优势,进行整体环境切换。


方式:核心业务数据库 1:0.5 建立环境,核心业务应用 1:0.3 建立环境、非核心业务数据库直接搬迁,非核心业务应用直接搬迁


优势:


  • 只须考虑搬迁设备的安全及留足设备上下架时间

  • 只须考虑域名及 CDN 切换时间


缺点:


  • 整机搬迁存在设备搬迁后故障,无法启动的问题,设备搬迁的数量较多,此情况易出现,搬迁前须做好数据库导出独立存储的准备;

  • 设备一次性迁移数量较多,搬迁过程中上下架时间较长,加上外高桥机房对设备有严格的出入管理,报关、检查时间较长;

  • 当发现备节点无法承接业务时,回退时间较长;

  • 停机时间较长;

方案二:降级冷切

  • 策略:利用周末交易停止,访问量下降的环境优势,进行主机房降级,备机房升级的切换。

  • 方式:将主节点所有业务应用+数据库数量由 1:0.5,将下架设备集中运往备份节点,进行环境调试,完成备份机房由 0.5 升级为 1 的过程。


优势:


  • 停机时间短,预计总停机时间在数小时内(第二次切换须进行大面积程序验证,预计耗时 N 小时以上)

  • 数据风险较小,核心及非核心业务数据部分在切换前都采用热备方式进行双向同步

  • 提供回退保障,在备份节点业务出现无法启动情况下,可以快速将服务切换回原主节点

  • 在切换前可以通过提前验证的方式提高切换质量

  • 部分关键设备(如数据库),由单机转换成大容量虚拟机,可有效保障切换顺利

  • 切换时间可控性强,包括联合测试、运营进行线上检测也可灵活安排

  • 缺点:

  • 整须提前搭建环境,须前期占用一部分人力资源搭建第二套全环境

方案三:伪双活逐步切换

  • 策略:两端通过负载均衡设备进行访问均衡,逐步将业务从主节点切换至备份节点。

  • 方式:利用机房内负载均衡设备将部分主机房流量引入备份机房,然后备份机房配置数据库实现写回源、读本地,逐步将访问全部切换至备份机房,然后直接将访问切换至备份机房。

  • 优势:

  • 访问停机少,前期分流存在多次闪断,后期有一次 N 分钟的 DNS 切换

  • 缺点:

  • 业务访问环境构建复杂,除两节点搭建前端应用外,还须快速配置后端访问节点,易出现人为操作故障(在数据库配置错误的情况下也易出现脏数据,届时对清算、交易可能产生较大的数据恢复难度)

  • 前端应用在未实现统一配置管理的情况下,靠人工配置危险系数极高

  • 双向伪双活对主备间带宽要求较高,目前 X 兆带宽只能保证业务数据库的同步

  • 产生的成本最高,线路费用、人工费用、多次搬迁存在的风险



其实,最终我们执行的是方案一和方案二的结合:


切换当天:整体冷切,将老机房的所有硬件数量由 1 容量,迁移至新机房的 0.5 容量,并通过降级、限流等手段,顺利的挺过了首个交易日。


切换后的三天内:将老机房的硬件逐步下架运往新机房,并完成备份机房由 0.5 升级为 1 的过程。

最后说两句

对于一家金融企业来说,IT 投入后的当即收益才是最重要的。


近几年以来,为了满足公司在效率、质量上不断攀升的需求,我们陆续推出了持续集成/中间件/自动化运维等多项自主研发平台,不仅利用 ‘适配器思维’ 帮助应用系统降低接入成本,而且确实帮助某些系统在松耦合、自动化上带来了颠覆性的变化。然而对于机房切换这种既无法量化收益,又开销不小的项目,期望在项目初期就获得较多投入是不太可能的,所以在方案制定的初期就要在成本上多加考虑。


去年在圈内流行过这么一句话,CTO 就是为了 CEO 曾经吹过的牛 B,含着泪也要去实现的人,至少不害死 CEO。


其实在我看来,对于大部分企业(尤其是金融企业)的 CTO,由于技术团队性质属于成本中心,所以与 CEO 之间多半都是成本与价格间的博弈。


在给你有限的资源与成本中,拿出可靠、可行的方案,并在不妨碍业务原则的前提下达到预期,才是我们该去做的。


本文转载自头哥侃码公众号。


原文链接:https://mp.weixin.qq.com/s/ZwP3R7u8yJ5QdGoRMfDPSw


2020-04-15 16:44920

评论

发布
暂无评论
发现更多内容

用二维码介绍旅游行程,扫码就能获取路线信息

草料二维码

二维码 草料二维码 旅游行程 旅游简介

异构智算,打赢智算时代「牧野之战」

白洞计划

AI

人工智能|思维链

霍格沃兹测试开发学社

开讲在即!免费参加第五届“解放军总医院—麻省理工学院医疗大数据学术交流及 Datathon 活动”会前培训班

ModelWhale

什么原因让你想当程序员?

源字节1号

小程序 开源 前端 后端

观测云:全球布局的监控先锋

可观测技术

【YashanDB知识库】v$instance视图中实例角色含义不明确

YashanDB

yashandb 崖山数据库 崖山DB

Elasticsearch基本概念与使用

爱吃小舅的鱼

elasticsearch 数据分析

MobPush 撤回/取消推送

MobTech袤博科技

Java 开发者 产品动态

C#开源、简单易用的Dapper扩展类库 - Dommel

EquatorCoco

C# 开源

体育赛事直播APP开发:现成源码专注优化用户界面与体验

软件开发-梦幻运营部

如何通过一条SQL变更多个分库分表?

NineData

数据库 sql NineData 库分组 DDL变更

观测云:企业数据安全的守护者

可观测技术

想做出好看的PPT课件?这3款AI生成PPT工具助你一臂之力!

彭宏豪95

人工智能 效率工具 PPT 办公软件 AI生成PPT

【YashanDB知识库】yac修改参数后关闭数据库hang住

YashanDB

yashandb 崖山数据库 崖山DB

盘点那些国际知名黑客(上)

网络安全服务

黑客

AV-Comparatives发布企业杀毒软件测评报告

财见

【YashanDB知识库】23.1.3.101版本创建物化视图coredump

YashanDB

yashandb 崖山数据库 崖山DB

简化运维,提升效率:观测云在企业监控中的独特优势

可观测技术

参加的活动或展会每年都是同一批人 ToB企业该怎么办

客户在哪儿AI

ToB营销 活动营销 ToB增长 大客户营销

面试题:如何解决缓存和数据库的一致性问题?

王磊

Java

MobPush 鸿蒙端SDK API

MobTech袤博科技

Java 开发者 产品动态

淘宝店铺商品API返回值分析:优化商品展示与推荐

技术冰糖葫芦

API Explorer API 编排 API 文档 pinduoduo API

内网穿透

源字节1号

小程序 开源 前端 后端

轻松获取天气信息:免费天气API一览

幂简集成

API 天气api 免费API

【论文解读】大模型算法发展

合合技术团队

算法 LLM

客户在哪儿AI助大客户销售最高成功概率的见到目标客户决策层

客户在哪儿AI

ToB营销 ToB获客 ToB增长 大客户营销

我们为什么要在上云前先做主备机房切换这件事?_语言 & 开发_头哥侃码_InfoQ精选文章