跳转到内容
搜索文档

负载均衡参考架构

最后更新 查看 MarkdownAgent 设置

简介

Cloudflare 负载均衡是一种 SaaS 产品,它允许组织为全球用户群托管应用程序,同时大大减少对维护、故障转移、弹性和可扩展性的担忧。使用 Cloudflare 负载均衡使组织能够应对以下挑战:

  • 有效处理大量的传入流量,特别是在出现意外激增或峰值期间。
  • 确保应用程序和服务对用户保持可访问性。
  • 保持快速响应时间并为所有用户提供最佳性能,特别是在高流量时段。
  • 适应不断变化的流量需求,确保基础设施能够容纳增长。
  • 帮助应用程序和服务抵御分布式拒绝服务 (DDoS) 攻击。

Cloudflare 负载均衡建立在 Cloudflare 的连接云之上,这是一个由可编程云原生服务组成的统一智能平台,可实现所有网络(企业和互联网)、云环境、应用程序和用户之间安全的任意对任意连接。它是最大的全球网络之一,数据中心跨越 over 330 cities 个城市并与 over 13,000 network peers 个对等方互连。

因此,Cloudflare 在距全球约 95% 互联网连接人口约 50 毫秒的范围内运行。此外,由于所有 Cloudflare 服务都被设计为在每个网络位置运行,因此所有请求都会在其源头附近进行路由、检查和过滤,从而带来强大的性能和一致的用户体验。

本文档描述了希望部署全局和本地流量管理负载均衡解决方案的组织的参考架构。

此文档适合谁,您将学到什么?

本参考架构专为对其组织现有基础设施负有一定责任或有所了解的 IT、Web 托管和网络专业人员设计。拥有路由、DNS 和 IP 寻址等网络概念的经验以及对负载均衡器功能的基本了解将会很有用。

为了更好地建立对 Cloudflare 及其负载均衡解决方案的基准理解,我们推荐以下资源:

阅读此参考架构的人员将了解:

  • Cloudflare 负载均衡如何应对私有网络负载均衡和全局流量管理用例。
  • Cloudflare 的全球网络如何增强 Cloudflare 负载均衡的功能。
  • Cloudflare 负载均衡器的功能,以及它们如何应用于各种用例。
  • Cloudflare 负载均衡器的结构及其各种配置。

在现代应用程序中处理动态工作负载

概念和术语

端点 (Endpoint)

在本文档中,“端点”一词是指拦截和处理传入公共或私有流量的任何服务或硬件。

引导 (Steering)

引导是负载均衡器的主要功能——即根据一组策略处理、发送和转发请求的过程。

第 7 层 (Layer 7)

OSI 模型 的第 7 层(应用层)是 SSH、FTP、NTP、SMTP 和 HTTP(S) 等协议驻留的地方。

第 4 层 (Layer 4)

第 4 层(传输层)负责两个设备之间的端到端通信。Cloudflare 的公共第 4 层负载均衡器由 Spectrum 产品启用。

SSL/TLS 卸载 (SSL/TLS Offloading)

SSL/TLS 卸载是在负载均衡器和 Web 服务器中使用的技术,旨在处理加密/解密过程而不影响端点性能。

负载均衡器解决的挑战

  1. 性能 (Performance): 确保应用程序及时响应用户请求和输入
  2. 可用性 (Availability): 保持应用程序的正常运行时间
  3. 可扩展性 (Scalability): 根据用户行为或需求增加、缩小或重新定位应用程序资源

负载均衡器允许组织托管多个端点并在它们之间分配流量,从而确保没有单一端点不堪重负。

没有负载均衡器时,端点负载无法均匀分配
Figure 1: Endpoint performance can suffer without a load balancer

流量管理的类型

全局流量管理器 / 全局流量管理 (GTM)

全局流量管理器负责将(通常来自互联网的)请求路由到适当的区域或数据中心。

全球流量管理将流量导向正确的区域或数据中心
Figure 4: Global traffic management load balancer overview

私有网络负载均衡 (Private Network Load Balancing)

私有网络负载均衡在数据中心或地理位置内引导流量。

私有网络负载均衡负责将流量导向最终端点或目标
Figure 5: Private Network Load Balancer overview

本地与基于云的负载均衡器

  • 本地负载均衡器:通常基于硬件,侧重于最大性能。
  • 基于云的负载均衡器:部署在公共云基础架构上的软件,可以在最靠近请求来源的地方处理请求。

Cloudflare 负载均衡架构和设计

Cloudflare 架构的固有优势

Cloudflare 负载均衡利用任播 (anycast) 技术,这意味着我们可以从全球每个数据中心宣布我们服务的 IP 地址。

Cloudflare 的全球 anycast 网络确保始终选择最近的数据中心
Figure 6: Load balancers hosted on Cloudflare’s global anycast network
将 GTM 与私有网络负载均衡功能合并到单个负载均衡器配置中
Figure 10: Cloudflare combines the function of GTM and Private Network Load Balancing

Cloudflare 负载均衡器的结构

Cloudflare 负载均衡器中的步骤
Figure 11: The basic process flow through a Cloudflare Load Balancer

定义 Cloudflare 负载均衡器分为三个主要组件:

  1. 运行状况监视器 (Health monitors)
  2. 端点池 (Endpoint pools)
  3. 负载均衡器 (Load balancers)

引导类型和方法

  • 流量引导 (Traffic steering)
  • 端点引导 (Endpoint steering)
  • 加权引导 (Weighted steering)

引导方法包括:

  • 关闭 - 故障转移 (Off - failover)
  • 随机引导 (Random steering)
  • 哈希引导 (Hash steering)
  • 地理引导 (Geo steering)
  • 动态引导 (Dynamic steering)
  • 邻近引导 (Proximity steering)
  • 最小未决请求引导 (LORS)

运行状况监视器 (Health monitors)

运行状况监视器在配置到端点池后决定端点的运行状况。

用于监视端点状态的 HTTPS 运行状况监视器
Figure 16: HTTPS health monitor configuration

端点和端点池

端点是应用其策略后处理连接和请求的实际服务器。它们可以是物理服务器、虚拟机或无服务器应用程序。

部署模型

Cloudflare 提供三种部署模型:

  • 第 7 层 HTTP(S) 负载均衡
  • 仅 DNS 负载均衡
  • Spectrum 负载均衡
负载均衡器与端点类型的所有可能组合
Figure 22: The combinations of public and private load balancers and endpoints and how they connect

保护和保障负载均衡器

所有 Cloudflare 负载均衡器部署模型都附带固有的保护,如 DDoS 保护和 WAF 托管规则。

总结

Cloudflare 全局任播网络是一个强大的负载均衡平台。Cloudflare 中的负载均衡配置不仅提供了管理流量的简便方法,还集成了业界领先的安全和性能功能,为任何规模的企业提供完整的全局和本地流量管理解决方案。

这篇文档对您有帮助吗?