vlambda博客
学习文章列表

深度解度:从负载均衡到云原生应用服务

本周三晚8点,F5直播间将会为您带来一场围绕“云原生应用服务变迁”为主题的深度对话,您会详细了解从 Web 时代开始至云原生时代的应用服务交付的市场,技术与人的变化。在您来直播间之前,请静心细读以下文章,我们等待与您在直播间相会。


关注F5视频号预定直播

深度解度:从负载均衡到云原生应用服务
F5Networks
将在07月21日 20:00 直播
视频号

或扫码进入B站,观看直播

深度解度:从负载均衡到云原生应用服务




从负载均衡到云原生应用服务

作者:林静 | F5软件方向解决方案架构师






PART.
0 1


生来简单 Load Balancing



上世纪九十年代,Internet 的快速发展催生了大量在线网站,Web 访问量迅速提升。在当时,一个朴实的诉求是如何提高 Web 网站的访问速度与能力。

彼时,在西雅图市中心斜坡上的 Six Arms 酒吧里,每晚都有几个年轻人在这里热烈的讨论着他们的创业梦想,他们沉迷于人机接口,研究如何突破沉浸式虚拟现实的极限。Michael Almquist 便是其中的一个,他发现当时的服务器满足不了他们的需求,于是他们研究使用负载均衡来帮助解决他们遇到的问题。

1996年,F5 Labs 在西雅图塔五楼的一个破旧办公室里成立,Michael Almquist 是创立人。这样一个技术被投资人发现,将F5Labs从虚拟现实技术领域带入到了一个帮助实现无故障、高效互联网通信的世界。

与 F5 同一年成立的还有 Alteon 与 Radware,只是这两家公司在十多年后才彼此发生了故事。Juniper 也在这一年成立,与 F5 在后续的几年里曾有过一致的市场。

在互联网泡沫破灭以前,这个领域基本是围绕如何对 Web 网站进行负载均衡与优化。因而在早期,也会有“Web 交换机”的说法。其基本思想是通过将连接分发到更多的不同服务器上来实现更大访问能力,当一台服务器宕机后,用户依然可以访问其他可用服务器。核心技术即为 Load Balancing,并附加了一些 Web 优化能力。技术部署形态基本如下:

深度解度:从负载均衡到云原生应用服务


1997年 F5 发布了 BIG-IP 产品。BIG-IP 最早的命名实际叫 BIG/IP,源自于 TCP/IP 这一叫法,BIG 则表达了一个超级 IP 代表众多背后服务 IP 的意思。就在 BIG-IP 发布的同一年,一个叫 Arrow Point 的公司成立,主要面向 Web 优化。

1998年 F5 发布了 3DNS 产品。论 Load Balancing,DNS 一直是一个本源技术,3DNS 产品在 DNS 轮询解析这一基础技术之上扩展空间(源、目标)、时间(可用性)的概念,形成了 three dimensions(3D),这也是 3DNS 命名的由来,后来名称改为 Global Traffic Management(GTM),近几年则又命名为 DNS 以表达完善全面的企业 DNS 架构。我们从名称的变化其实可以看出不同阶段市场方向的重点。使用智能 DNS 技术帮助进一步提升了 Web 访问体验,使得用户可以及时访问到最近可用站点。3DNS 所用的技术理念直至今日依然被广泛使用,无论是全局流量管理还是企业基础 DNS。同年,业界还成立了两家公司,uRoam 和 Netscaler。一家后来被 F5 收购,一家则是 F5 的同领域公司。


PART.
02


成在纷繁 ADC



2000年互联网泡沫达到了鼎盛,而这一年也是该领域相关厂商成立最多的一年。Fine Ground,一个 Web 优化、应用加速与安全厂商;应用前端优化厂商 Redline;广域网优化厂商 Peribit。应用安全厂商 Magnifire。同时 Array 也在这一年成立。如果翻阅资料我们会发现在这个阶段市场关于产品会有很多名词。除了上述提到的“Web交换机”,还有“内容(content)交换机”、四层交换机、七层交换机。不同技术背景的厂商正在进行一场暗自角力。

2001年,美股重挫,互联网公司泡沫挤破。仅仅依赖给互联网 Web 网站做简单 Load Balancing 的生意模型不再能够持续。梳理2000-2005年间这个领域的收购,可以看出市场开始变得纷繁复杂,大量厂商成立与大量厂商收购:

  • 2000年,Cisco 收购了 Arrow Point,同年创建的Fine Ground也同样被思科在2005年收购,通过这样的收购思科最终完成了其应用内容网络(AON)技术产品的构建。

  • 2003年,F5 收购了 uRoam,构建了后来面向 SSL VPN 及访问身份与策略管理的 APM 模块。

  • 2004年,F5 收购了 Magnifire,构建 WAF 产品能力。即目前的 Advance WAF 模块。

  • 2005年,F5 收购了 Swan Labs 来丰富广域网加速方面的能力,即后来的 WOM 模块。

  • 2005年,Citrix 收购了 Netscaler,成为其后来的应用交付类产品。

  • 2005年,Juniper 通过收购 Peribit 与 Redline 打造其面向应用的产品线。

而在这狂乱的背后,一个标准化的市场领域正在被塑造。从上述各家厂商的收购技术方向可以看出,在当时技术趋势已经比较清晰,市场正在围绕如何更快、更安全的访问应用,并确保应用可用进行构建。

2003年 Gartner 第一次定义了Application Delivery Controller(ADC)概念。在早期,ADC 的定义依然主要是负载均衡技术与卸载类技术的组合,并面向 Web。当前最新的定义则为“应用交付控制器(ADC)部署在数据中心,通过卸载服务器、提供深度有效负载检查和充分利用复杂协议来优化应用性能、安全性和资源效率。它们最初部署用于面向外部的Web应用程序,现在用于为多种类型的业务应用程序和协议提供服务。”可以看出,后来的 ADC 产品更加面向企业复杂应用的处理。这也是为什么有论点认为 ADC 应该成为一种平台,它有类似于中间件的属性,来帮助企业更好的交付应用。

股灾使得这个领域企业开始考虑将技术应用场景从互联网Web网站转向企业应用。2002年对 F5 来说是最为关键的一年,这一年F5确立了TMOS(Traffic Management Operating System)作为 BIG-IP 的基础。这一实时的事件驱动的流量操作系统奠定了后来F5在应用交付网络(ADN)领域的领军地位。而2003年,2004年及,2005年的连续三次收购则帮助 F5 快速地形成了完整的 ADC 产品线。

2004年 TMOSV9 版本发布,将市场带入了一个新的发展轨道。2005年中期,Gartner 宣布 F5 已获得最高 ADC 市场份额。

2006年是 ADC 市场成熟的标志。以F5为代表的 ADC 技术已经形成了领域的事实标准,产品形成了连接管理,协议控制,SSL 卸载,Web 压缩与优化,流量整形,DoS 防护,Web 安全,IPv6,链路负载,GSLB 等丰富的应用交付方面能力。技术架构部署上,基本类似于下图:

深度解度:从负载均衡到云原生应用服务


巩固一个成熟的市场并不是一件容易的事情,需要不断的进行技术研发投入以确保在 行业的竞争力。2006至2008间是历史上 F5 研发投入增长非常高的阶段。尽管当时正值全球经济危机期间,研发投入季度同比增长保持在了30%-40%之间。

而此时,同领域的几个大型企业在研发投入与市场收入上却不成比例。无论是因为缺乏投入还是因为技术路线问题,他们最终因缺乏技术竞争力而逐步退出市场。

  • 2008年 Juniper 放弃其 DX 产品线,宣布退出

  • 2009年 Nortel 终结,Radware 收购 Alteon 资产

  • 2010年 Cisco 停止销售 AON 以及 ACE XML 网关产品

  • 2012年 Cisco 正式停止 ACE 研发

Nortel,Cisco,Juniper 的失败案例充分说明 ADC 领域是一个高技术投入的市场。需要不断的技术积累,也需要不断的技术突破。一直以来,F5 的年研发投入占收入比基本都在17%-18%左右,高于软件及互联网行业的15.7%均值。年研发投入额接近 F5 中国市场同年收入的5倍。不断的高研发投入确保了 F5 在行业的技术领军地位。

正是因为 ADC 产品的成熟,在2009年左右,市场一度发出 Load Balancing 已死的论调,以强调企业应重视 ADC 产品的能力。F5 ADC 类产品具有丰富的面向应用的能力,例如丰富且深度的协议控制、基于事件的可编程架构、面向连接的精细化管理,免 reload 的高动态性配置、全面的自动化及 API 接口、丰富的可观测能力。企业可以充分开放这些能力将其提供给应用团队、中间件团队。

在 ADC 产品快速发展的的这一阶段,另一个领域也在不断的发展,这就是以 NGINX、HAproxy 为代表的软负载领域。

NGINX 从2004年9月开始发展,HAproxy 从2005年12月开始发展,这两个产品的源起与 F5 的源起类似,都是因为自身业务的实际需要而开发。NGINX 为了解决网站的高并发问题,而 HAproxy 则是为了解决作者本身所在安全公司的一个应用会话保持的问题。最终逐步演化为了如今典型反向代理软件。

时间上看,从 ADC 类硬件产品在2003年确立开始,软负载类产品就与硬件 ADC 类产品一同发展。云以及头部互联网公司对软负载的使用加速了软负载产品场景的应用,将其更加曝光于大众,从而被更多人了解。无论是 LVS,Tengine,Openresty,ELB 等。

2016年则是企业市场对于软负载认知拐点。伴随着企业对数字化转型,DevOps,双模 IT,弹性架构,企业私有云的进一步深入,软负载开始被普遍提及并应用。

基于对软负载市场的理解,F5 从2009年开始发布 TMOS 的 Virtual Edition(VE),积极构建相关产品的云中初始化能力、加强 DevOps 类工具生态建设如 Ansible/Terraform 模块等,开放命令式与声明式接口实现更多 Gitops 能力。这些能力可以让企业更快更好的部署 F5 VE 软 ADC 产品以适应业务的需要。有一个有趣的数字,F5 利用19年时间在中国部署了5万套硬件设备,平均每年2600余台。而仅在2020春节疫情期间,就快速帮助用户部署了3000套软件 ADC。软负载易于部署的优势得到了极大的发挥。

随后,2019年 F5 收购了 NGINX 进一步加强软负载领域市场。


PART.
03


归于简单 Service Proxy



随着应用架构的发展,应用正从传统的单体应用转变为分布式或微服务。无论是分布式还是微服务架构,其核心是将一个应用的多个服务拆分,形成相对独立的服务工作单元。而拆分的直接结果就是需要有一套额外的机制来确保这些独立的工作单元能够协调统一的工作,这离不开分布式计算、存储、消息等。当这些独立的服务单元需要相互通信时,就需要思考如何让这些通过网络进行通信的服务之间运行的更可靠、更安全、更优化。这本就是应用交付领域所关注的,只是从原来面向用户、面向网络转变为了面向服务。我们称之为 Service Proxy。

分布式内的接入网关,或者微服务的 API 网关都是典型的 ADC 类需求,如身份识别、SSL 卸载、内容路由、应用安全、限流限速、DDOS 等。这些场景很长时间以来是由开发者驱动,由于软件的特性,使得开发者更加容易接触到类似 NGINX 这类软件产品。这是一个相对于传统 ADC 产品,用户角色的一个典型变化。

在微服务、云原生等环境下,服务与服务之间的通信接口更加简单与统一,这使得对反向代理类软件的技术需求也开始变得简单,不再需要如此复杂丰富的特殊协议支持,不再需要复杂的网络技术特性需求。需要的是让软负载类产品能够具备更加高动态性的配置,能够与注册中心、配置中心联动实现服务的发现与策略的导入,需要产品足够轻量易部署且能适合虚机、容器等多种场景的使用,需要性能上足够的快,需要提供足够的可观测数据,需要足够的弹性部署能力等等。

深度解度:从负载均衡到云原生应用服务

(我们已很难直接看到一个具象存在的负载均衡器)

2017年左右,伴随着云原生的发展,Service Proxy 开始大量出现。围绕 Ingress Controller,Sidecar,API 网关的产品层出不穷,如Linkerd,Envoy,Gloo,Mosn等等。从传统ADC 到如今以服务为中心的现代轻量级解耦式 Service Proxy,技术正在回归到类似面向 Web 的简单的负载均衡时代,客户端负载均衡或服务端负载均衡。

2017年底,F5 推出了基于 Istio 的商业服务网格解决方案产品 Aspen Mesh。帮助用户更可靠的使用服务网格技术。

2019年,F5 收购 NGINX。基于 NGINX 打造现代应用 API 网关,K8S Ingress Controller,云原生应用保护,NGINX 服务网格等产品方案。

2021年,F5 收购初创公司 Volterra。帮助企业基于 K8S 技术实现多云及边缘应用管理。

这些产品的推出使得 F5 快速覆盖了云原生 Service Proxy 发展的三个方向。

深度解度:从负载均衡到云原生应用服务

(云原生下的ServiceProxy发展的三个方向)


当前,伴随着云、PaaS 的发展。已经到了基础架构(I&O)引导创新的阶段,企业基础架构正在变为支撑企业业务创新的核心引擎,Service Proxy 作为这类 Infrastructure 组件,正在扮演这越来越重要的角色。它决定了企业的基础架构是否能够更好、更优、更安全的运行。


PART.
04


面向当下 Enterprise Cloud Native Application Service



当我们回到企业的实际场景,用一张图来表达这个相关领域的变化时候,可以看到相关领域产品的部署位置在不断的提升,从基础的网络硬件变成了云化环境下的一个服务组件,以及成为云原生环境下的一个逻辑资源对象。从看得见摸得着变成了看得见摸不着,从看得见摸不着变成了看不见摸不着。企业应充分重视能够覆盖所有场景的软负载类产品选型,确保企业能够在统一的技术与专业服务下演进企业应用架构,避免技术风险。

深度解度:从负载均衡到云原生应用服务

(负载均衡,一个不断提升的位置)

云原生架构是企业未来的方向,然而企业的云原生架构并不会一蹴而就。它必然是在企业现有IT基础设施之上慢慢演进,在这样一个演进的进程中,企业正在建设的云原生环境需要利用企业的已有基础设施。企业的已有基础设施也要面向云原生环境进行改变,两者之间需要相互融合。

基础设施如此,人员亦如此。随着企业基于平台能力构建的提升,我们可以清晰的看到 I&O 人员正在成为未来数据中心技术创新的主力。该领域的主导角色人员从网络人员变成了开发人员,而最终变成了平台人员。


总结



可以看出,从1996到2006,再到2016。应用交付领域每一个10年变化都呼应了市场的需求变化,切合了应用架构的变革。从单纯的 Web 负载均衡到复杂的企业应用交付,从单体应用到分布式、微服务架构。所面向的人群也从网络人员到应用人员到如今的平台、基础架构人员。无论是 ADC 功能的纷繁复杂,还是 Service Proxy 的简单高效,应用交付领域的产品已成为企业最重要的基础设施组件。

企业如何在云原生进程中走的更顺,如何让云原生环境应用交付更加平滑。企业需要一套真正能够面向企业当下实际环境的云原生应用服务方案。F5 为此提出了6大企业云原生应用服务方案,我们将以6次线上研讨会来探讨企业如何更好的走向云原生。

如果您对这些方案感兴趣,请扫描海报中二维码报名。

深度解度:从负载均衡到云原生应用服务


end



活动推荐


扫描图中二维码查看活动详情


深度解度:从负载均衡到云原生应用服务

深度解度:从负载均衡到云原生应用服务