不用暗夜割接,灰度发布如何助力5G小步快跑?
凌晨三点、熬夜、数据备份、战战兢兢、一步一检查、业务中断、测试验证、紧急回退、大BOSS亲自到场…这是通信工程师们熟悉的割接场景。
每一次软件版本升级,尤其是核心网,牵一发而动全身,错一处而毁全网,对于网络运维是一件非常痛苦的事。
同样是软件升级,电信业为什么这么难,而互联网巨头们却轻轻松松就实现了呢?
亚马逊每小时要部署1万个软件,谷歌每月要更改一半源代码,微信版本升级了N次,为什么他们能在用户几乎无感知下频繁的进行软件升级?
进入5G时代,随着高清直播、VR/AR、云游戏、工业控制、无人机、自动驾驶、远程医疗等各种眼花缭乱的5G新应用兴起,业务需求之多、变化之快超出了以往2/3/4G任何一个时代,这不但要求网络功能可根据业务需求快速升级,还要求业务能快速试错。
面对5G时代的业务需求,电信业能不能像互联网巨头那样轻松、频繁的进行软件升级呢?
可以。
这需要灰度升级。
灰度升级,也叫灰度发布,是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。灰度发布开始到结束期间的这一段时间,称为灰度期。
灰度发布通过小粒度快速试错来降低业务变更风险,已成为互联网行业业务上线发布的基础能力之一。那电信业的灰度发布如何实现呢?
在面向5G演进的核心网网络中,华为进一步基于Cloud Native等概念方法,将电信业务特点与IT先进理念完美结合,打造了业界唯一的5G核心网灰度升级方案,可助力5G业务敏捷可靠上线,并已成功实现业界首商用落地。
以下就以华为灰度升级方案为例,来看一看它是如何实现的?
软件架构微服务,让发布升级小快灵
说到微服务,先来简单了解一下网络云化的演进历程。
如上图,网络云化经历了从网络功能虚拟化(NFV)到云原生(Cloud Native)的演进历程,总的来说就是“分解”、“再分解”的过程。
NFV将软硬件一体的传统专用网络设备解耦为软件(VNF)和通用硬件,网络功能软件不再受专用硬件限制,可灵活部署于通用硬件之上,从而让运营商通过软件升级即可推出新功能和新服务。
可这还不够,脱离了专用硬件的VNF是大颗粒的电信软件包,非常庞大、复杂,动辄涉及数百万行软件代码,这意味着从软件开发到发布、测试整个过程工作量巨大,估计要耗费一年的时间,无法敏捷响应快速变化的5G业务需求。
怎么办?那就基于云原生的设计原则,将大颗粒的VNF进一步分解为多个小颗粒的微服务,比如接入管理微服务、对话管理微服务、数据库管理微服务、接口管理微服务等。
微服务不仅颗粒小,且具有独立的生命周期管理,可以实现更细粒度的软件开发、发布、测试和升级,这就提升了运营敏捷性,可加速创新和新业务上线,适应瞬息万变的市场业务变化。
如果把传统的电信软件比作雕版印刷,单个汉字错误则导致整版废弃,耗时费力;那么,微服务则完全颠覆了传统软件架构,就像活字印刷一样,个体错误不会导致整版返工,效率呈指数级提升。
华为灰度升级方案正是基于软件微服务架构,将大颗粒的软件包分解成相互独立的小软件模块,以微服务的方式进行版本的开发,测试和发布,每个微服务有自己独立的版本号,升级时自动判断源版本和目标版本中每个微服务的版本号,只升级有变化的微服务,这样即可实现小快灵的增量软件发布。
周边设备无感知,大白天也可升级操作
微服务解决了电信软件过于庞大、复杂的问题,但要让网络功能更具弹性和鲁棒性,还需无状态设计和软件三层解耦。
注意,这里的三层解耦架构不是指NFV的硬件层、虚拟化层和VNF层“三层解耦”,而是将软件分为无状态的三层架构。
众所周知,传统电信网元会一直保存相关UE的上下文信息,以确保连接不中断,称为有状态。这种有状态设计是电信软件在虚拟机/容器之间灵活迁移的羁绊。
为此,行业参考IT软件的无状态设计,将上下文信息与服务软件分离,并组成独立的状态数据库层,从而使得服务处理软件(VNF组件)成为敏捷、弹性的无状态服务处理层。
同时,再通过接口层的独立的负载均衡软件模块,可有效、快速的均衡服务处理软件之间的负载,以支撑整个系统的大吞吐量。
这就将电信软件分为了三层:数据层、服务处理层和负载均衡层。
华为灰度升级解决方案正是基于无状态和软件三层解耦设计的。
在传统有状态下,电信软件的版本发布上线是排他性的,同一时间只能存在一个软件版本,而且升级过程要想做到业务无损,首先要做的就是花费大量时间将待升级设备上的用户迁移到Pool内其他设备上,需要评估这些在网设备的软硬件资源,业务模型等,同时针对周边无线,数通等设备进行相关的配置联动修改,牵一发动全身。如果无法采用Pool方式迁移用户,采用直接升级方式,必须在夜间进行操作,会导致业务中断30分钟以上,无法实现业务无损。
而华为灰度升级方案打破了非黑即白的软件版本发布规则,基于软件三层解耦及无状态设计原则,实现多个版本会话的数据兼容,多版本服务或微服务实例共存,并通过负载均衡的智能业务分发能力实现外部网络设备无感知。
系统内可同时存在两个软件版本,通过逐步滚动升级的方式,迁移至最终目标版本,无需提前准备用户迁移设备,无需关联修改无线,数通等设备,实现不分时段的全天候升级操作,业务“0”中断。
用户迁移分批次,业务变更低风险
传统电信软件版本升级完成后,所有用户就不得不接受新版本的考验,一旦出现问题,所有用户业务受损,损失无法估量。因此用户在版本间的迁移不应该是一蹴而就的,灰度升级场景下,系统支持在新版本上进行业务拨测,减少或避免测试床测试。使用测试用户进行已有特性和新特性的测试。当拨测发现问题后,可进行回退操作。回退时仅删除拨测用户,对其它用户无影响。支持小粒度试错迁移,支持分批次迁移。第一批次可迁移少量用户,以验证迁移过程的正确性。有问题可回退,只影响该部分用户。后续批次也可新旧版本长期共存,以便观察业务,无问题再进行下一批次迁移,进一步提高升级过程的可靠性。
就这样,通过灰度发布,既解决了传统升级割接难的问题,降低业务变更风险,也让网络能敏捷、健壮的应对多样化和快速变化的5G新业务,进一步促进5G行业数字化,实现小步快跑上5G。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Android市场等不来爆款小屏手机
这届新iPhoneSE或许会成为目前苹果在中国市场卖的最好的一款小屏iPhone。在4月份推出之后仅仅开售7天,数据显示它就卖了93万台。 最新的报告数据显示,得益于新款iPhone SE的发布,iPhone在中国市场4月的销量达到了390万台,较3月的156万部增长160%,其中新款iPhone SE的贡献占到近25%的销量。对比过往iPhoneSE系列在国内冷清的局面,新iPhoneSE总算打了一次翻身仗。 据@it科技站 爆料,iPhone SE成本比iPhone 8还低18%,为217美元(合1539元人民币)。从这个价格来看,新iPhoneSE的售价接近是材料成本的2倍左右。 早前有其他专业机构估算iPhone 11 Pro Max(512GB版本)的材料成本为490.5美元。从价格来看,iPhone11 Pro Max(512GB版本)刚上市的价格达到1万2,是材料成本的三倍,对比材料成本,iPhoneSE确实算是良心价。这意味着苹果在利润上做出了较大的妥协。 新iPhoneSE的大卖,某种意义上印证了苹果若在价格上做出妥协,不仅仅是大屏手机能大卖,小屏iPhone的需求依...
- 下一篇
多维解读我国网络综合治理体系构建
当前,在国际多变复杂的环境下,我们一定要从维护国家网络安全、意识形态安全、政治经济安全的政治高度,推进国家治理体系和治理能力现代化的战略高度,深刻认识加快建立完善网络综合治理体系的极端重要性和迫切性,切实把这项工作抓紧抓好抓实。 加强互联网内容建设,营造清朗的网络空间,是党的十九大作出的“建立网络综合治理体系”的战略部署。我们必须从网络生态体系治理的角度出发,坚持系统性谋划、综合性治理、体系化推进,逐步建立起涵盖领导管理、正能量传播、内容管控、社会协同、网络法治、技术治网等各方面的网络综合治理体系,全方位提升网络综合治理能力。 对于网络综合治理体系,可以从不同的维度和视角理解和解读,尤其是从法学、技术、话语权研究和社会符号学相结合的多角度来探讨依法治理、技术治理、话语治理和社会治理的多元共治体系。 法学视角 网络综合治理体系是社会综合治理体系的重要组成部分,其中依法治网是构建网络综合治理体系的基础,是国家在网络空间行使主权的具体体现。依法治网是在党的集中统一领导下,充分发挥新时代中国特色社会主义思想的巨大优势,凝聚全社会力量,综合运用多种手段,尤其是充分利用法治的手段,治理网络空间的突...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- MySQL8.0.19开启GTID主从同步CentOS8
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Hadoop3单机部署,实现最简伪集群