01
引言-F5应用策略现状
世界依赖应用,今天我们每个人的衣、食、住、行都需要应用程序。F5的使命是确保运行在任何地点、任何环境的应用都可用并且安全。过去10年,F5一直通过和全球领域专家座谈及问卷调查形成每年的《应用策略现状报告》,供各大组织的CIO、首席架构师参考。前段时间我们发布了2024年《应用策略现状报告》,2024年我们最大的发现是API时代的来临,95%的企业和组织已经部署了API网关平台,41%的组织反馈他们所管理的API的数量超过所管理的应用的数量。

结合过去4年应用策略现状的调研,API的爆发与组织数字化转型的力度成正相关。我们将组织数字化转型分为三个阶段,这三个阶段分别是任务自动化、数字化扩展和人工智能辅助业务。任务自动化就是过去几年我们常能看到的应用快速上线,抢占市场先机;数字化扩展是组织的持续数字化转型阶段;人工智能辅助业务是数字化转型的数智化阶段。这三个阶段的应用特点和组织的重点工作如下表:

-任务自动化是将单个任务数字化,追求更快速地开发、上线、迭代应用程序,借助DevOps平台,云平台实现代码的编译、构建、上线,负载均衡部署、访问策略的部署都通过流水线自动化的方式在数分钟内完成。
-数字化扩展阶段组织的具体工作是应用现代化及实现特定业务的应用组合的现代化,对应用现代化的一个衡量指标是应用能够随需而变,应用可以根据业务需求快速变化。这一阶段应用通常部署在多云多区,组织投入构建应用和工作负载在多云多区及数据中心之间迁移的能力,应用可以按需弹性构建。
-人工智能辅助业务是借助生成式AI提升应用的智能化水平,例如一些知识管理类应用、情感分析类应用、对话式应用、代码生成类应用应用被广泛的讨论。当然一些组织也在布局AI引擎、大模型、训练服务器,但大多数组织都在关注AI应用安全以及AI模型在云和数据中心之间的迁移。

根据2024年F5《应用策略现状报告》,API超越应用,API时代来临的更主要原因是组织将完成现代化的应用程序和工作负载迁移到云、企业和组织着手打造应用程序/工作负载跨多云、多云可用区和数据中心的可移植性能力、以及边缘安全计算及SaaS化服务的使用。2024年调查问卷发现61%的组织通过将应用程序/工作负载迁移到云以实现现代化,提升数字化体验,并希望利用这种运营模式带来的效率提升。59%的组织非常关注跨多云多区和本地数据中心的工作负载的可移植性,并积极构建这种能力,确保应用程序/工作负载能够随时来回在数据中心和多云多可用区之间迁移,95%的组织构建了API网关,依赖跨云和数据中心的灰度发布就是构建这种能力的具体体现。另外有57%的组织利用边缘安全计算服务以及SaaS化的服务。
人工智能辅助业务,即数字化转型的数智化阶段,将进一步加速API的爆发。根据我们的领域专家对谈,数字化转型的第二阶段—数字化扩展所建立的应用服务和安全服务能力可以满足AI应用所需的90%能力,而10%的不满足需求主要集中在AI应用的安全性上。因此,本文将聚焦于数字化扩展阶段,首先探讨企业和组织在应用及实现有特定业务的应用组合的现代化、应用迁移上云,以及构建应用和工作负载在多云、多区及数据中心网络区域的一致性能力过程中常见的问题。随后会说明解决这些常见问题的方案,结合一些实际案例,论证如何借助F5新一代硬件平台、NGINX和F5分布式云提升数字化扩展阶段应用服务和安全服务的可靠性水平。最后,我们将再次回到2024年F5《应用策略现状报告》,结合对领域专家的调研反馈,总结我们的解决方案可以为企业或组织带来的收益。
02
数字化扩展阶段应用服务常见问题
当企业或组织进行数字化转型的第二阶段,也就是数字化扩展阶段时,组织的主要任务是应用程序的现代化、应用程序组合的现代化,以及将现代后的应用迁移到云,并确保在迁移过程中应用和流量负载在跨云和数据中心之间具备可移植性。现代应用指的是容器原生(Container Native)和云原生(Cloud Native)的应用程序,它们涵盖多个维度,包括Docker、Kubernetes、DevOps、微服务架构和云。这些技术已被几乎所有的企业和组织使用,目的是使数字化扩展阶段支持组织数字化业务的服务变得更加简单。但在实际生产中,情况常常并非如此。我们常发现,单一任务需要许多不同的团队提供服务和技能支持,从而使一个应用的交付和上线变得更加复杂,这通常是因为没有有效解决数字化扩展阶段应用服务的几个关键问题。
对流量管理的方式发生了根本变化理解不足
在数字化扩展阶段,组织的首要任务是应用现代化,即用现代应用替换传统应用。要准确规划和建设云环境下的应用服务,避免陷入被动和混乱,首先必须深刻理解流量管理方式的根本变化。如图所示,传统应用部署在传统数据中心,而现代应用部署在多云架构之上。传统应用通常采用单体架构,而现代应用架构基于微服务架构。一个系统被分为多个模块,不同模块属于不同的租户,单个模块由多个微服务组成。现代应用中,90%的流量是API对API、服务对服务,一个系统由成千上百个微服务和API组成。

流量管理方式的根本变化在于,传统架构下一个应用系统只需要基于一组IP和端口进行负载均衡。而在现代应用架构下,一个应用系统需要基于域名和请求路径URL在成千上百个微服务之间进行智能流量路由管理。基于特定条件进行转发、蓝绿发布、灰度发布、影子测试等方式,是现代应用智能流量路由的必要手段。例如,随着组织中应用上云和信创等进程的推进,一个应用系统通常存在多个版本,需要将客户的请求在这些版本之间路由。在智能流量路由中,根据源地址将特定省份的请求路由到云上信创版本是一个典型的场景。
缺乏统一的规划与治理
过去10年,企业和组织的IT架构转型以私有云、全栈云和混合云建设为中心,旨在实现基础架构和应用的现代化,进而推进企业业务的数字化转型。特别是近年来,一些大型组织在大力推进全栈云建设,除了实现应用现代化外,还致力于打造自主可控的国产化关键云基础架构。然而,这一进程中存在一个普遍现象,即云建设呈现“多朵云,各自为阵”的现象。不同项目组各自独立,自建IaaS云、PaaS云、容器云和全栈云。例如,我们调研的某国内大型金融机构就存在数十朵云的建设。下图所示为基础架构现状,呈现出多云、多区和传统数据中心区域共存的状态。

由于这些云的建设由不同项目组发起,并在不同时间点进行,除了造成资源重复建设和浪费,更主要的是缺乏架构部门的统一规划和治理。多云建设及应用上云未依据统一标准,导致自动化自服务无法有效实施,甚至存在可靠性和安全性风险。
应用多云多区多活新场景
为了保证应用的绝对可靠性与弹性,一些大型组织过去通过两地三中心的多数据中心多活方式部署应用系统,以确保应用的高可用性与高可靠性。然而,在数字化扩展阶段,随着企业持续推进数字化转型并大力上云,业务的高可靠性现在还依赖于多云、多区、多活的新场景。如图所示,同一个业务系统应用部署在云上三个可用区,包括信创区域和非信创区域,这三个可用区可能位于不同的数据中心。多云多区多活指的是流量在这三个区域之间进行智能调度。与多中心多活相比,多云多区的应用多活更注重切换的迅速性。基于可编程能力的多中心多可用区多活,结合SDN可编程能力以及网络二三层Anycast技术的多平面技术,是云环境技术的主要方向。为了保证在数字化扩展阶段应用和工作负载在多云和数据中心中的可移植性,云建设规划中的云前置区域主要应对这一场景。云前置除了SDN和Anycast双平面外,还需要与云应用交付和现代应用负载调度精密结合,根据Host或URL跨可用区的分发,实现应用在四七层的多可用区调度,并根据业务请求流量百分比,实现平稳过渡的方式进行信创区和非信创区的调度。

新技术新方法论与已有流程和团队结合难问题
在数字化转型的第二阶段,各组织持续投入应用现代化,应用上云,构建多云和传统数据中心之间流量负载可移植可调度的过程中,一些新的技术和新的方法论大量的在落地实施:
-内容缓存:经过统计,云上负载均衡约40%的流量进入了对象存储(内容缓存),对象存储保存静态资源、DevOps流水线中临时文件、系统备份文件等。
-容器入口:容器是云上应用的主要载体,容器应用被K8S中调度管理,K8S是云上应用运行的最小单元,容器入口就是K8S流量入口。
-应用防护:基于单个应用的应用或单组API防护是多云多区架构下应用安全防护的最大特点,与传统DMZ区统一WAF防护方式形成鲜明对比。
-DevOps:DevOps思想已广泛的被采纳,DevOps关键在于打通开发和运维的壁垒以实现应用交付上线与生产运维保证的效率。
这些新场景新方法论的落实实施在一些组织中的管理者来看没有带来生产力的有效提高,这是因为没有有效解决新技术新方法论与已有流程和团队结合难问题,根据我们的调研,大多数组织都基于新技术新方法论进行平台化建设,将传统数据中心网络、安全等能力嵌入在平台中,提升传统部门的技能水平,实现云网一体化,多云统一安全管理治理。