11月8日,2022 vivo开发者大会以线上直播的形式召开,此次大会以“MORE,近你所想”为主题。在次日的云与基础架构分会场,vivo介绍了近年来其在云原生和容器技术层面的最新探索和实践。vivo互联网容器技术负责人潘良彪、互联网容器研发高级工程师束迎亚等6位专家分别在现场做了主题演讲。
拥抱云原生,助力算法降本提效
2018年起,vivo以容器作为基础底座,打造了 vivo的一站式云原生机器学习平台。向上支撑了算法中台,为算法工程师提供数据管理、模型训练、模型管理、模型部署等能力,为广告、推荐和搜索等业务赋能,成功为算法实现了降本、提效,让云原生和容器价值初露锋芒。
基于机器学习平台的试点成果,经过算法场景的试点实践和价值分析,vivo对内部战略做了升级。确定基于云原生理念去构建行业一流的容器生态,实现规模化的降本提效目标。为了更好匹配战略落地拥抱云原生,vivo还对内部技术架构重新规划和升级,新增引入统一流量接入平台、容器运维管理平台、统一名字服务、容器监控等平台和能力,支撑容器生态在公司内部的全面建设和推广。
对此,vivo互联网容器技术负责人潘良彪也详细介绍了vivo在容器集群高可用建设中的具体实践,包括在容器集群高可用建设、容器集群自动化运维、容器平台架构升级、容器平台能力增强、容器生态打通等层面的打磨和建设。目前,vivo容器产品能力矩阵逐渐趋于完善,并将围绕全面容器化、拥抱云原生和在离线混部三个方向继续发力。
vivo互联网容器技术负责人 潘良彪
不惧千锤百炼, Kubernetes 集群升级推动平台能力跃升
vivo 在云原生技术领域已经深耕多年。从2017年开始接触并积累容器技术,之后搭建与运维 Kubernetes 集群,到如今提供成熟的容器化平台解决方案,并在公司内部推广接入在线业务和离线训练任务。对于vivo而言 ,业务全面容器化可以说是公司级别战略,在平台能力陆续更新上线的背景下,容器化集群无损升级则成了重要课题。
针对这一课题,vivo互联网容器研发高级工程师束迎亚在演讲中分享了 vivo 在容器化集群无损升级过程中的一些实践经验。
在满足API 兼容性、控制逻辑一致性以及Kubelet 稳定性三个关注点的前提下,vivo最终选择将1.10版本升级到1.17版本。升级后,容器化平台充分利用高版本Kubernetes 以及第三方控制器新特性,功能矩阵持续完善。对用户,需求能高效得到建设且稳定性更好,收益显著;对运维同事,统一的内部集群 Kubernetes 版本使得运维复杂度大大降低,工作效率显著提高。接下来,vivo将围绕效率建设、自动化建设、标准化建设继续进行Kubernetes 集群的升级管理。
vivo互联网容器研发高级工程师 束迎亚
保持监控系统能力稳步提升,为业务服务提供长效保障
vivo自2018年开启了监控系统的自研之路,期间不断转型、升级,系统服务能力渐趋成熟。从2022年开始,vivo建设了统一监控平台,将基础监控、应用监控和自定义监控进行统一,包含统一配置服务和统一检测服务。从监控的建设历程来看,vivo一路覆盖了 IaaS、PaaS、DaaS、CaaS等平台,其职能也从DevOps向AIOps迈进。
vivo将基础设施层、系统服务器层、系统服务层、业务应用层、客户体验层视为系统的监控对象,通过不同的服务体系达成监控全覆盖,以满足各类环境部署诉求。此外,系统还支持多种采集方式,SDK和API采集主要应用在自定义监控场景,Agent 主要采集主机类指标,由此建立起一套完备的监控体系。
vivo互联网监控服务架构师陈宁宁在演讲中表示,随着公司业务发展,业务模型、部署架构越来越复杂,故障定位很困难,定位问题成本高,而监控系统在面对复杂、异构、调用关系冗长的系统时,就起到了重要作用。未来,vivo将在场景串联、可观测性、服务能力化等层面进一步探索,深挖产品价值,并构建其统一可观测平台,通过多维能力的提升,保障业务的可用性,提升业务服务质量。
vivo互联网监控服务架构师 陈宁宁
加速数据库服务建设,让云原生时代数据运维难题迎刃而解
2020年左右进入后移动互联网时代,社会数字化程度进一步加深,云原生的概念应运而生,微服务架构,资源弹性,容器等云原生技术广为传播。数据库的稳定性方面,因为开源数据库的高可用体系普遍成熟而大大缓解。数据库规模方面,实例数量和品类都进一步大增。数据库安全方面,2021年8月我国正式出台了个人信息保护法,个人隐私数据保护成为了数据库运维的时代重点。
在以上时代背景下,vivo互联网云平台架构师邓松认为,数据库运维面临着大规模数据库实例难以有效运维、数据库难以做好资源弹性伸缩以及个人隐私数据安全难以保障这三个方面的挑战。对此,vivo也给出了自身的应对方案。
首先,vivo自研了数据库运维平台DaaS来支撑数据库运维工作。在规模覆盖、效率提升、故障告警处理等层面均衡发力,保障了数据的稳定性,以工单自助,故障自愈为核心,实现了数据库的高效运维。
其次,在数据库资源弹性管理层面,vivo重视资源成本优化。围绕资源分配、资源弹性伸缩、资源隔离分别给出了智能化解决方案,并通过套餐自动优化,进一步降低了管理成本。最后,基于个人隐私数据,平台也提供了对业务几乎无影响的MySQL的透明加密方案,来减轻因为隐私数据加密带来的研发和运维工作量。
vivo互联网云平台架构师 邓松
步履不停,vivo持续探索消息平台新可能
长期以来,vivo在超大规模消息中间件方面也是动作频频。在线业务侧,vivo选择RocketMQ构建消息平台,意在依托其丰富的功能特性满足业务间削峰、解耦、异步化的需求。大数据侧,vivo选择具备高并发、高可用、高吞吐的消息流组件Kafka构建超大规模数据处理能力的数据接入服务。在大数据业务全链路中,Kafka作为统一数据接入服务和实时数仓服务,是大数据生态体系建设中不可或缺的重要组件之一。
基于此,vivo互联网中间件架构师罗明波从资源隔离、流量均衡、限流、集群治理四个维度分享了Kafka在vivo的最佳实践。vivo kafka消息中间件团队在三年时间内,根据实际的业务场景和生产数据规模沉淀了较多的实践经验。未来,也将以项目启动、稳定性建设、能力进阶、稳定运营四个阶段为基准,展开对Pulsar组件的长续规划和建设。
vivo互联网中间件架构师 罗明波
除此之外,vivo基于RocketMQ的消息中间件平台建设也有着丰富的实践经验。在会上,vivo互联网中间件架构师刘润云分享了保障消息平台高可用落地的三个方面,包括集群部署架构和平台系统架构、日常运维操作平台化以及构建集群的监控大盘和完善平台的的监控告警能力。以高可用建设落地为基础,vivo通过建设AMQP消息网关的方式完成了在线业务超过1000个服务从RabbitMQ到RocketMQ的无缝迁移,实现了在线业务消息中间件组件的统一。
围绕在线业务消息平台的未来发展方向,vivo也有着十分明确的规划。在新特性引入层面,vivo表示希望可以调研升级到RocketMQ5.0版本架构,力求借该版本的存算分离架构来更好的解决其当前遇到的存储瓶颈问题;通过Pop消费实现更好的消费负载均衡;并基于gRPC协议建设统一的消息网关能力。此外,在平台能力提升层面,vivo则希望可以探索消息中间件容器化部署,提供消息中间件的快速弹性扩缩容能力,更好的支持业务需求。
vivo互联网中间件架构师 刘润云
vivo将在消息中间件运维领域继续深入研究,期望可以建设拥有更高性能、更丰富功能特性的消息平台,为各位开发者与合作伙伴提供更优质的服务!