使用 Citrix Netscaler VPX 进行全局负载均衡
全球服务器负载均衡(GSLB)是一种在多个服务器之间分配流量的机制,这些服务器通常位于不同的地理位置。 全局均衡服务器接收来自客户机的流量请求,并使用管理员选择的条件将其重定向到特定地理位置。
为此,您可以使用以下方法:
- NetScaler VPX: 与常规本地负载平衡一样,VPX 使用类似的对象层次结构来平衡多个地理位置之间的流量负载。 通过基于 DNS 的全局查询,NetScaler 可选择与所选站点相对应的相应记录,该选择基于管理员预先配置的标准。 接下来的章节将对这一内容进行扩展。
还有其他技术可用于内容分布(例如 HTTP 重定向),这些技术也可以使用 Citrix Netscaler VPX 来实现。
关于 VPX 上的 GSLB
可以通过在 CLI/GUI 上激活 NetScaler VPX 的 GSLB 功能来启用该功能。
GSLB 使用的组件与本地负载均衡部署上使用的组件相同,其中实体是使用分层模型定义的。
可以出于以下几个目的实施 GSLB:
- 负载分配: 在多个地点之间高效、智能地分配资源。
- **灾难恢复:**当主位置关闭或无法呈现服务时使用。 在这种情况下,可由备用地点接替。
- 性能调整: 允许您将内容放置在更靠近终端系统的位置,或以增强相关服务的方式放置。
部署 GSLB 的主要组件或实体包括
-
虚拟服务器: VIP 是客户机向其发送请求的 IP 地址。 NetScaler 终止 VIP 上的客户端连接,然后启动与(本地)负载平衡服务中配置的服务器的连接。
-
**DNS(域名系统)和名称服务器:**GSLB 上的名称解析的工作方式与常规 DNS 非常类似。 不同之处在于用于确定地址解析的标准,GSLB 使用预先配置的负载平衡方法来处理这种解析。 NetScaler 可以配置为以不同方式与 DNS 进行交互:
- 权威 DNS (ADNS)。 NetScalers 通过使用 ADNS 模式,可对特定域及其上的所有记录具有权威性。
- DNS 子授权。 当 DNS 服务器(域的权威)将子域的责任委托给 NetScaler 系统时,就会出现这种情况。
- DNS 代理。 在此方式下进行配置时,NetScaler 会将 DNS 请求转发到处理名称解析的其他服务器(外部)。
-
**方法:**方法是 GSLB 虚拟服务器用于从拓扑中选择最佳 GSLB 服务的算法。 算法用于评估与实际选择标准相对应的性能方面。 提供了以下方法:
- 轮循:在 GSLB 服务之间交替处理收到的请求,而不考虑其负载。
- Round Trip Time (RTT):度量客户机的本地 DNS 服务器与 (GSLB) 站点之间的时间或延迟时间。 NetScaler 使用不同的机制,如 ICMP echo request (PING)、UDP 和 TCP,来收集 RTT 指标。
- 静态邻近性:使用 IP 地址数据库确定客户端本地 DNS 服务器与站点之间的邻近度,然后以此为标准进行选择。
- 最少连接数:衡量每项服务的最少活动连接数,作为选择标准。
- Least Response Time:选择具有最少活动连接数和最短平均响应时间的站点。
- 最小带宽:选择当前管理流量(Mbps)最小的站点。
- 最少数据包:选择过去 14 秒内接收数据包最少的服务。
- Source IP address Hash:根据客户机 IPv4 或 IPv6 地址的散列值来选择服务。
- Custom Load:选择未处理任何活动事务的服务。 如果负载平衡设置中的所有服务都在处理活动事务,设备会选择负载(CPU 使用率、内存和响应时间)最小的服务。
-
MEP(指标交换协议): 用于在站点之间交换指标(负载和网络)和持久性信息的专有协议。 MEP 在 GSLB 拓扑中的不同站点与 NetScalers 之间提供运行状况检查。 通过使用由管理员设置的条件,MEP 为站点提供了一种方法来根据先前配置的选择参数传达和处理流量。 MEP 使用 TCP 端口 3009 和 3011。 禁用 MEP 时,方法的选择仅限于在标有星号 (
*
) 之前列出的选项。选择的任何其他方法将还原为循环法。 -
**监视:**NetScaler 引擎使用 MEP 或与相关服务绑定的显式监视器,定期对远程 GSLB 服务的状态求值。 监视器的使用方式就像常规负载均衡服务一样。 对于 GSLB,您不需要向本地服务添加监视器,因为这是由 MEP 控制的。
-
持久性: 为特定域建立站点首选项的功能。 在此特定用例中,不会对流量进行负载均衡,而是由同一数据中心对流量进行处理。 在某些应用(如电子商务)中,交易数据对每台服务器都是独一无二的,因此这一过程会很有帮助。
-
**GSLB 站点:**站点可以定义为在其中配置/提供 NetScaler 系统的数据中心或位置。 NetScaler 系统管理被视为该站点“本地”的每个 GSLB 站点,而所有其他远程站点都被视为“远程”站点。
-
GSLB 服务: 它是一个代表(并绑定到)(常规)虚拟服务器或 VIP 的对象。 这可以是本地(同一站点)或远程对象。
-
GSLB 虚拟服务器: GSLB 虚拟服务器分配给属于不同(GSLB)站点的一个或多个 GSLB 服务。 通过它接收的流量会在与之绑定的站点之间实现负载平衡。 根据方法和用例来选择站点。
-
**GSLB 域:**表示 GSLB 虚拟服务器负责的域或区域。
-
ADNS 服务: 由 IP 地址和端口组合表示的服务,它是向 NetScaler 授权的域发送 DNS 请求的地方。 NetScaler 将这些服务发送到绑定到该域的 GSLB 虚拟服务器,以获得响应。