段亮:华为云视频Cloud Native实践

分布式云”启动新商业引擎,“云原生”引爆亿万级苍穹,“分布式数据及存储”开创未来新篇。

2020年12月17日至18日, “Distributed Cloud|2020全球分布式云大会”在深圳正式拉开帷幕。大会邀请到华为云、腾讯云、阿里云、金山云、浪潮云、蚂蚁集团、政府主管部门、标准制订方、以及深圳TOP200流量主级运营商等云原生、边缘云开发者相关企业共同参与,以推动技术变革,适应时代发展。

在12月18日上午的“X-Meetup音视频技术领导力论坛”上,华为云直播研发负责人段亮带来《华为云视频的Cloud Native实践》为题的主题演讲。演讲中,段亮从介绍云原生的基本特征与架构出发,谈及云原生技术在华为云视频的实践经验,并提出云视频全面实现服务自治是提高产品上线效率的重要途径之一。

云原生,毫无疑问是现在技术圈最火热的词之一。回顾云原生的发展,自2010年在业界提出云原生概念后,企业业务系统的架构逐渐向云原生的架构演进。如今,越来越多的企业拥抱云原生,通过充分利用云基础设施与平台服务,具备微服务架构、弹性伸缩、分布式、高可用、多租户、自动化运维等关键特征的架构实践,使企业业务系统的架构逐渐得到完善。

那为什么企业业务系统需要形成云原生的业务架构系统?对此,段亮将云原生分组织、工程、架构三方面进行讲解。从组织的角度,对研发人员来说,若以前对一个需求进行开发之后,再进行测试,然后发布便完成了任务。但现在,研发人员不仅做需求,还要做设计、开发,最终该需求上线后还要看运营情况和运维能力,才能到云原生的基本架构。因此相对于复杂繁琐的流程,云原生的架构有着更快的上线速度。

从架构的角度,以微服务为例,模块的单一化、细致的故障探测和发现,以及故障时的自动隔离能力,成为与传统基本架构相比最大的优势。而且每个服务可以独立的开发、测试和交付,降低周期,这样的强灵活性,加速了企业业务架构“云原生化”。

段亮:华为云视频Cloud Native实践

对于一些有突发高峰的业务而言,云的弹性价值是非常明显的,而对于无突增高峰的业务而言,云提供的丰富的IaaS、PaaS服务,可以带来非常低的试错和人员投入成本。因此充分利用云基础设施及平台服务,应用必须通过服务接口充分使用云基础设施和平台服务,基于IaaS、PaaS动态分配资源,支持资源池化,适应异构云基础设施。

段亮通过进一步解释弹性伸缩、高可用与自动化运维,让大家对云原生的架构有了更深层次的认识。针对弹性伸缩,段亮举例介绍道:“弹性伸缩的伸主要在音视频的业务上体现。比如一场直播中,会迎来一个爆点,用户量一下就增加几倍甚至是几十倍,那你的资源肯定要快速跟上,这时弹性的伸就派上了作用。而弹性的缩,主要体现在视频业务,比如教育类视频业务的高峰期在白天,而娱乐类的在晚上,因此高、低峰期的业务可能有几十倍的差异,因此需要在空闲时要把资源缩掉。”

对于高可用和自动化运维,段亮这样说:高可用基于不可靠、可抛弃的资源设计高可用、反脆弱系统,应用任意微服务实例失效,系统能够快速发现、隔离并自动恢复,云基础设施和平台服务发生任意单点故障不影响系统整体可用性。自动化运维是系统能够自动化部署、升级和扩缩容,支持自动化监控、告警、故障的定界定位和故障自愈。“这里提到的监控包括全方位的,要从最底层的系统层、资源层再到应用层,一直到最上层黄金指标的全面监控。”段亮补充道。

然而,华为云视频在云原生架构的实践体现在,云视频全面实现服务自治和全自动化的代码扫描、测试、部署,达到十分钟上线。同时,需求的开发上线效率缩短到天。

这得益于华为云对云原生的架构能力早已有统一的指南,从云原生的架构设计指南、架构模式库、规范体系建设以及架构评价标准,让华为云在业务架构上少走了很多弯路。段亮表示,“我们通过多次产品和开发、各类业务场景等经验梳理出的架构设计的模式库,对我们的产品设计,成为重要的参照。”

段亮:华为云视频Cloud Native实践

以华为云视频的点播服务为例,随用户量的增加,出现需求交付的效率跟不上,运维越来越复杂,原先的架构跟不上等问题,但华为云视频通过对架构详细的优化,让问题迎刃而解。对此,段亮分享:“我们针对微服务架构进行分解、功能的更加单一化以及各服务之间的交互方式等方面进行了整体优化,提高了业务效率。并且随着业务形态的变化,我们的微服务架构、云原生架构也会有相对应的变化。”截止当前,华为云视频各云服务、微服务数已达约200个,API接口数2千个。

段亮:华为云视频Cloud Native实践

华为云在RTC用户接入微服务容器化实践中,发现容器可以随时销毁,为做多AA部署带来很多方便,因此段亮认为,容器化是云原生架构实践中必然要做的事。

实时转码服务的弹性伸缩实践上,华为云视频有着多样的弹性策略,并根据资源的实时负载情况灵活的弹性伸缩。段亮介绍:“在云原生上,弹性伸缩已经是基本功能,尤其是视频业务在使用的时候需要有一些考虑,可以通过CPU资源去弹性,也可以通过网络带宽的上限限制来做弹性,还可以通过业务量来做弹性。这样即便业务量有几十倍的差异,但是CPU的利用率,基本上是最平缓的。”

段亮:华为云视频Cloud Native实践

在以上实践的基础上,经过多轮演进,华为云视频从两方面实现云原生的高效开发。

首先华为云视频统一OPS平台,当前已实现统一的运维能力中心VideoOps,业务服务轻量级开发集成,快速构建业务OPS能力;支持海量数据实时分析处理;同时支持智能异常指标检测,支撑业务功能快速上线。

其次,华为云视频做到了工程能力的灰度发布和服务自治。

灰度发布基于CCE+CSE实现灰度发布,支持按流量比例灰度、按租户灰度,从点播服务推广到其他云服务,确保上线版本不影响现网客户。

段亮:华为云视频Cloud Native实践

而服务自治基于伏羲流水线,实现微服务的静态检查、合规扫描、AIpha测试、Gamma测试、自动部署、灰度发布、在线测试等能力,来支撑业务功能快速上线。

段亮:华为云视频Cloud Native实践

段亮指出,这也是华为云视频能够将云原生高效开发的核心能力。当前,华为云视频每月的变更次数接近500次,直播服务今年以来已实施1200多次变更。

段亮:华为云视频Cloud Native实践

最后,段亮对演讲内容进行总结,他认为所有研发云原生架构实践都要回到最终的一点,即分布式和高可用上,包括三方面:一是,云视频各个服务全部容器化后,已支持多AZ跨可用区部署。二是,直播服务通过直播流向双Region推流,实现直播核心业务的跨Region容灾,在410事故发生时,直播业务自动切换,现网业务几乎无影响。三是,各服务也基于第三方服务不可靠,做了相关高可用设计,像直播截图、录制、点播录制、时移回看,转码服务的实时转码等。以转码服务为例,为避免出现redis,CCE,网络等第三方服务的故障引入风险,设计多集群横向扩展部署方案,增加整体可靠性。

相信华为云视频在云原生的架构实践上珍贵的经验和总结,使更多企业得到启发,设计出自己的云原生架构,真正实现落地。

展开阅读全文

页面更新:2024-04-02

标签:华为   灰度   视频   分布式   伸缩   基础设施   架构   弹性   上线   故障   能力   业务   系统   资源   科技   企业   段亮

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top