在云计算发展的十余年间,企业对云计算的诉求发生了巨大变化。曾经,企业上云更多集中在一些可见的云资源层面,然而随着上云的不断深入,很多企业发现业务数字化仅靠资源层很难实现,尤其是在以大数据甚至大规模技术为主导的智能化领域。
如今,无论是传统企业还是互联网企业,都已从过去的“搬迁上云”转变到了“深度用云”的全新阶段。企业已不再满足于简单地将物理机转移至虚拟机,而是更希望借助云原生的能力实现降本增效,云原生已成为了企业用云标准的新范式。
近日,在腾讯云 TVP 与 51CTO 联合主办的 LeaTech 全球 CTO 领导力峰会中,51CTO 对腾讯云副总裁 黄俊洪进行了专访,51CTO副总裁杨文飞与腾讯云副总裁黄俊洪展开了深度对话。面对一系列有关云计算行业发展及云原生实践的焦点问题,黄俊洪毫无保留地向 51CTO 分享了诸多自己深刻而独到的见解。
访谈伊始,黄俊洪便向 51CTO 介绍了腾讯发布的云原生改造白皮书,并对腾讯在企业云原生改造方面所积累的宝贵经验进行了分享。据黄俊洪介绍:腾讯内部将企业云原生改造划分为四个主要阶段,分别为:开发云原生、计算云原生、架构云原生以及数据云原生。
开发云原生阶段主要解决“企业研发运维流程效率”问题。企业组织架构、研发运维流程是否符合 DevOps 理念,是否能够支持对应用进行快速迭代、测试、发布、试错和优化;是否能建设和使用软件流程中的工具平台,提升团队协作效率,同时根据流程规范搭建自动化平台,减少人为因素导致的低效或失误是衡量该阶段完成效果的两个关键因素。
计算云原生阶段则重点关注“容器化”、“Serverless 化”两大关键词。改造目标是降低 IaaS 层的异构和差异、资源的部署和调度的关注。
架构云原生阶段需要深入复杂的软件架构层面,虽然难度较大,但收益非常可观。在改造过程中,一些成熟的框架服务的使用,能让改造事半功倍。例如微服务平台、服务网格等,它们集成了很多运维能力,包括日志、监控、服务注册和发现、故障容灾等。除了提高研发效率外,也能提升改造后系统的整体运维能力。
而在数据云原生阶段,企业的云原生改造已经进入到深水区,目标是将Kubernetes、Serverless 的技术和理念应用到“数据服务”中,让“数据服务”也具备极致的弹性伸缩能力,在资源成本上能够做到最优。
黄俊洪表示:任何企业的转型或改造都不是一蹴而就的,伴随着企业数字化与智能化的不断深入,未来企业对上云的核心诉求也将发生变化——不再只满足于简单地使用云上的 IaaS 能力,实体经济的转型将更需要贴近业务的 PaaS 和 SaaS 能力。
例如在政务领域,结合更多 AI、大数据等能力才能为企业创造更大价值;而金融领域则需要构建自身的 PaaS 平台,来快速响应客户的业务需求和提升平台的开发效率;工业领域 PaaS 则能为企业提供云服务所必需的各种中间件、分层的动态扩展机制、开发和运维等支撑能力,帮助企业快速构建面向工业领域的云服务。
而在腾讯方面,为了能更好地实现自主可控以及对用户的持续赋能,在过去几年中,腾讯 ToB 业务主动调整了收入结构。在加大音视频、大数据、数据库等 PaaS 领域投入的同时,将“健康可持续”作为业务的增长目标,并采取了包括提高自研产品竞争力、鼓励产品被集成、丰富伙伴生态在内的一系列举措。希望能够以“长期主义”心态来推动整个产业互联网的长期可持续发展。
在谈及有关企业研发效能提升的问题时,黄俊洪提到:云原生能够为研发效能提升带来新的变化。作为综合性的解决方案,云原生领域中包含许多不同的技术和工具,其目的就是为了提高应用程序的可移植性、弹性和可靠性。而基于云原生的效能提升推进则可以分为规划、架构、开发、集成部署和运维多个阶段进行。
在规划阶段,可以通过分析现有的技术性指标来确定需要改进的方向,重点是建立与业务目标一致的清晰且定义明确的计划,可以通过项目协同、OKR 工具等进行实施。
应用程序架构设计阶段,需要优先考虑应用程序的可伸缩性和容错性,以实现应用程序的快速迭代和部署。此时,重点关注应用程序的整体架构设计,包括微服务的设计、容器化设计和服务网格的构建等。
应用程序开发阶段,则要着重优化开发过程和开发环境。侧重点是使用云原生技术构建高质量的微服务和容器化应用,例如可以使用 CI 工具自动化构建流程,通过缩短构建时间和提高构建质量来提高开发效率。同时也需要关注开发过程的自动化和测试的质量控制。
集成和部署阶段,需要将应用程序和基础设施进行集成,自动化部署和管理应用程序的生命周期。在这个阶段主要关注基础设施自动化和容器编排,前者可使用自动化工具来管理和维护基础设施;后者使用容器编排工具(如 Kubernetes)来管理和协调应用程序的部署、扩展、故障恢复等任务。通过全生命周期管理,将云原生应用程序快速、可靠地发布到开发测试与生产环境中。
在运维阶段,要重点关注应用程序的稳定性、可靠性和可维护性。重点是建设与使用云原生的可观测性,包括日志分析、监控和链路追踪等。可以使用监控工具对应用程序进行实时监控,包括应用程序性能、资源使用情况;使用日志分析工具对应用程序的日志进行分析,及时发现并解决问题。
黄俊洪强调称:虽然上述不同阶段通过云原生技术可以协助实现研发效能的量化与推进,但在具体推进阶段企业还是需要根据不同团队的实际情况进行调整,并不断总结经验,不断优化和升级云原生基础设施和应用程序,这样才能从最适合企业、团队的路径完成研发效能提升的目标。
对于研发效能工具和研发管理模式的变化趋势,黄俊洪则表示,随着未来企业软件以及研发团队规模的不断增加,研发效能工具和管理模式的持续演进将成为必然。
自动化工具的广泛应用将是未来最明显的一大趋势,随着自动化工具的不断发展,研发过程中许多重复性工作和手动操作将会自动化。例如自动化测试、自动化构建和自动化部署、DevSecOps 能力以及可复用的模版等将会变得越来越普及。
另一方面是平台工程的普及与实践,也就是云原生背景下应具备面向服务的 DevOps 服务,除了需要通过平台级能力为开发团队提供自动化的工程平台,还需要 IaC、声明式、GitOps 等技术手段帮助开发团队屏蔽复杂的底层基础设施,从而降低研发团队对云原生底层技术的学习门槛。
而数据驱动的研发效能管理也将是未来企业将更加关注的管理模式,通过价值流工具捕获关键节点指标,通过数据来衡量研发效能,从而提高生产力。这将需要企业在数据收集、分析和利用方面进行投资。
最后一点,则是开源工具的逐步普及。今天我们可以看到,开源工具在研发领域中的应用已经越来越广泛了,未来企业中的研发团队也会更多地采用开源工具来提高效率和降低成本。
在访谈末尾,黄俊洪分享了自己对于如今云原生领域大火的 FinOps 理念的一些认知与理解。黄俊洪认为:FinOps 的本质是财务管理、企业经营和成本优化的组合。之所以 FinOps 会受到如此关注,主要是由于云原生技术栈确实提供了一系列提高资源利用率的基础能力,如对资源更细粒度的管控和分配、自动伸缩能力等。
对企业而言,理论上将业务迁移到云原生平台以后,利用率应该大大提升才对。但企业对云原生的技术认知往往还停留在以前的阶段,在虚拟机上怎么用资源,到了云原生平台照旧,并没有意识到可以在保证业务稳定的前提下,采用成本更优化的手段。
尤其在疫情这几年,各企业对于成本优化的诉求更加强烈,但根据腾讯云的观察,不少国内企业还处在业务迁上云原生的时期,当企业面对业务压力时,成本管控的优先级自然会先“放一放”;只有当业务趋于稳定,应用的容器化、架构的现代化接近完成时,企业才会将关注点转到成本优化上,但这并不是一个理想的状态。
根据 FinOps 的理念,实际上,云成本优化应该从上云的第一天就开始规划,并且不断优化。如果企业能够很好地借助云厂商提供的智能推荐、智能调度等能力,节省 20% 云成本对每一家企业用户而言都会是一个很容易达成的目标。
对于 FinOps 技术未来的发展方向,黄俊洪则做出了如下几点预测。
成本清晰化:越来越多云平台已经在提供基础账单的基础上增加了多维账单查询、标签管理、成本分配等能力;第三方 FinOps 工具也在努力将费用与不同部门、不同业务的真实用量关联,让不同业务的云成本开销清晰化。
流程标准化:FinOps 的实践是一个不断完善标准化流程的过程, FinOps 的全生命周期包括预算、资源申领、配额下发、成本优化、核算等全流程,中间配合货币化结算、成熟度模型等标准化手段推动,未来的 FinOps 实践会越来越标准。
成本管控智能化:成本浪费的核心原因是云用户对业务资源需求不能精确把握,对资源使用方法不科学导致的后果。用户学习不同云的多种计费模型,学习不同特征业务的资源需求的成本非常高,靠人力的精准优化难度大。智能化的云平台和优化工具基于资源画像和成本模型,基于不同预测算法可以给出合理优化建议,降低成本优化的落地门槛。
归根结底,伴随着各领域企业的持续发展,腾讯云也在根据企业的需求变化不断优化自身的云计算基础设施与云原生技术能力。从始至终,腾讯云在技术层面的深耕都未曾停歇,这也是如今腾讯云能够在云上提供如此丰富产品能力的核心原因。对企业而言,无论是此前提到的 FinOps 技术,还是如今非常火爆的 LLM 大模型,利用云上的算力集群都能够更加充分地发挥它们的技术价值。更好地帮助企业实现它们的诉求,无论在过去、现在还是将来,都会是腾讯云最核心的目标与责任。