先进的概念

Azure上Citrix ADC VPX的部署指南-GSLB

贡献者

作者:Blake Schindler,解决方案架构师

概述

Citrix ADC是一个应用程序交付和负载平衡解决方案,为web、传统和云本地应用程序提供高质量的用户体验,而不管它们托管在哪里。它有各种各样的形式因素和部署选项,而不会将用户锁定在单一的配置或云中。共享容量许可允许在云部署之间移动容量。

作为服务和应用程序交付领域无可争议的领导者,Citrix ADC部署在全球数千个网络中,以优化、保护和控制所有企业和云服务的交付。Citrix ADC直接部署在web和数据库服务器前面,它将高速负载平衡和内容交换、HTTP压缩、内容缓存、SSL加速、应用程序流可见性和强大的应用程序防火墙结合到一个集成的、易于使用的平台中。通过将网络数据转换为可操作的商业智能的端到端监控,大大简化了满足SLA的过程。Citrix ADC允许使用简单的声明性策略引擎定义和管理策略,而无需编程专业知识。

Citrix VPX

Citrix ADC VPX产品是一种虚拟设备,可以托管在多种虚拟化和云平台上:

  • Citrix虚拟机监控程序

  • VMware ESX

  • 微软Hyper-V

  • Linux KVM

  • 亚马逊网络服务

  • 微软Azure

  • 谷歌云平台

本部署指南重点介绍Microsoft Azure上的Citrix ADC VPX

微软Azure

微软Azure是一套不断扩展的云计算服务,旨在帮助企业应对业务挑战。Azure使用户可以自由地使用他们喜欢的工具和框架在一个庞大的全球网络上构建、管理和部署应用程序。使用Azure,用户可以:

  • 通过Microsoft的持续创新,为未来做好准备,以支持他们今天的发展和他们对明天的产品愿景。

  • 在本地、云中以及Azure与用户见面的边缘无缝运营混合云。

  • Azure致力于开源并支持所有语言和框架,让用户可以自由构建他们想要的方式,并在他们想要的地方部署。

  • 信任他们的云安全,由专家团队和积极主动的、行业领先的合规,受到企业、政府和初创企业的信任。

Azure术语

以下是本文档中用户必须熟悉的关键术语的简要说明:

  • Azure负载均衡器——Azure负载均衡器是一种在网络中分配传入流量的资源。流量分布在负载平衡器集中定义的虚拟机之间。负载均衡器可以是外部的或面向internet的,也可以是内部的。

  • Azure资源管理器(ARM)–ARM是Azure中服务的新管理框架。Azure负载平衡器使用基于ARM的API和工具进行管理。

  • 后端地址池—分配负载的虚拟机网卡的IP地址。

  • BLOB -二进制大对象-任何可以存储在Azure存储中的二进制对象,如文件或图像。

  • 前端IP配置–Azure负载平衡器可以包括一个或多个前端IP地址,也称为虚拟IP(VIP)。这些IP地址充当流量的入口。

  • 实例级公共IP(ILPIP)——ILPIP是一个公共IP地址,用户可以直接分配给虚拟机或角色实例,而不是虚拟机或角色实例所在的云服务。这不会取代分配给云服务的VIP(虚拟IP)。相反,它是一个额外的IP地址,可用于直接连接到虚拟机或角色实例。

注:

在过去,ILPIP被称为PIP,代表公共IP。

  • Inbound NAT Rules–包含将负载平衡器上的公共端口映射到后端地址池中特定虚拟机的端口的规则。

  • IP配置-它可以定义为与单个NIC关联的IP地址对(公用IP和专用IP)。在IP配置中,公共IP地址可以为空。每个NIC可以有多个与其关联的IP配置,最多可达255个。

  • 负载平衡规则–将给定前端IP和端口组合映射到一组后端IP地址和端口组合的规则属性。使用负载平衡器资源的单一定义,用户可以定义多个负载平衡规则,每个规则反映前端IP和端口以及后端IP和与虚拟机关联的端口的组合。

  • 网络安全组(NSG)–NSG包含访问控制列表(ACL)规则的列表,这些规则允许或拒绝虚拟网络中虚拟机实例的网络流量。NSG可以与子网或该子网内的单个虚拟机实例相关联。当NSG与子网关联时,ACL规则将应用于该子网中的所有虚拟机实例。此外,通过将NSG直接关联到单个虚拟机,可以进一步限制到该虚拟机的通信量。

  • 专用IP地址–用于Azure虚拟网络内的通信,当VPN网关用于将用户网络扩展到Azure时,用于用户本地网络。专用IP地址允许Azure资源通过VPN网关或ExpressRoute电路与虚拟网络或内部部署网络中的其他资源通信,而无需使用internet可访问的IP地址。在Azure资源管理器部署模型中,专用IP地址与以下类型的Azure资源关联–虚拟机、内部负载平衡器(ILB)和应用程序网关。

  • Probe–包含用于检查后端地址池中虚拟机实例可用性的运行状况探测。如果某个特定的虚拟机在一段时间内没有响应运行状况探测,那么它将从流量服务中退出。探测使用户能够跟踪虚拟实例的运行状况。如果运行状况探测失败,虚拟实例将自动停止旋转。

  • 公共IP地址(PIP)-PIP用于与Internet通信,包括Azure面向公众的服务,并与虚拟机、面向Internet的负载平衡器、VPN网关和应用程序网关相关联。

  • 区域-地理区域内不跨越国界且包含一个或多个数据中心的区域。定价、区域服务和服务类型在区域级别公开。一个地区通常与另一个地区配对,而另一个地区可以相距数百英里,形成一个地区对。区域对可以用作灾难恢复和高可用性场景的机制。通常也称为位置。

  • 资源组—资源管理器中的容器,用于保存应用程序的相关资源。资源组可以包括应用程序的所有资源,也可以仅包括逻辑分组的资源。

  • 存储帐户–Azure存储帐户允许用户访问Azure存储中的Azure blob、队列、表和文件服务。用户存储帐户为用户Azure存储数据对象提供唯一的命名空间。

  • 虚拟机–运行操作系统的物理计算机的软件实现。多个虚拟机可以在同一硬件上同时运行。在Azure中,虚拟机有各种大小。

  • 虚拟网络-Azure虚拟网络是云中用户网络的表示。它是专用于用户订阅的Azure云的逻辑隔离。用户可以完全控制此网络中的IP地址块、DNS设置、安全策略和路由表。用户还可以进一步将其VNet划分为子网,并启动Azure IaaS虚拟机和云服务(PaaS角色实例)。此外,用户可以使用Azure中可用的连接选项之一将虚拟网络连接到其内部部署网络。本质上,用户可以将其网络扩展到Azure,利用Azure提供的企业级优势完全控制IP地址块。

用例

与需要将每个服务部署为独立虚拟设备的备选解决方案相比,在Azure上的Citrix ADC在单个VPX实例中结合了L4负载平衡、L7流量管理、服务器卸载、应用程序加速、应用程序安全以及其他基本应用程序交付功能。可以通过Azure Marketplace方便地获得。此外,所有内容都由单一的策略框架管理,并使用用于管理内部Citrix ADC部署的相同的、功能强大的工具集进行管理。最终的结果是,Azure上的Citrix ADC支持了几个引人注目的用例,这些用例不仅支持当今企业的即时需求,还支持从传统计算基础设施到企业云数据中心的持续发展。

全局服务器负载平衡(GSLB)

全球服务器负载平衡(GSLB)对于我们的许多客户来说都是巨大的。这些企业拥有为区域客户服务的prem数据中心,但随着对其业务需求的增加,他们现在希望在AWS和Azure的全球范围内扩展和部署其存在,同时为区域客户保持其prem存在。客户也希望通过自动化配置来完成所有这一切。因此,他们正在寻找一种能够快速适应不断变化的业务需求或全球市场变化的解决方案。

通过网络管理员端的Citrix ADC,客户可以使用全局负载平衡(GLB)样式表在prem和云中配置应用程序,并且可以使用Citrix ADM将相同的配置传输到云中。用户可以使用prem或云资源,具体取决于与GSLB的接近程度。这使得无论用户位于世界何处,都能获得无缝体验。

部署类型

多网卡多ip部署(三网卡部署)

  • 用例

    • 多NIC多IP(三个NIC)部署用于实现数据和管理流量的真正隔离。

    • 多NIC多IP(三个NIC)部署还可以提高ADC的规模和性能。

    • 多网卡多ip(三网卡)部署适用于吞吐量通常为1gbps或更高的网络应用,推荐使用三网卡部署。

    • 多网卡多ip(三网卡)部署也用于WAF部署的网络应用。

GSLB多网卡多ip(三网卡)部署

如果客户要部署到安全性、冗余性、可用性、容量和可扩展性至关重要的生产环境中,他们可能会使用三个NIC部署进行部署。使用这种部署方法,复杂性和易管理性对用户来说并不是关键问题。

Azure资源管理器(ARM)模板部署

如果客户正在自定义部署或自动化部署,他们将使用Azure资源管理器(ARM)模板进行部署。

部署步骤

当用户在微软Azure资源管理器(ARM)上部署Citrix ADC VPX实例时,他们可以使用Azure云计算功能,并使用Citrix ADC负载平衡和流量管理功能来满足他们的业务需求。用户可以在Azure资源管理器上部署Citrix ADC VPX实例,既可以作为独立实例,也可以作为active-standby模式下的高可用性对。

但用户可以通过以下两种方式之一在Microsoft Azure上部署Citrix ADC VPX实例:

  • 通过Azure Marketplace。Citrix ADC VPX虚拟设备可以在Microsoft Azure Marketplace中以映像的形式获得。Citrix ADC ARM模板可以在Azure Marketplace中为独立和HA部署类型提供。

  • 使用GitHub上提供的Citrix ADC Azure资源管理器(ARM)json模板。有关更多信息,请参阅的GitHub存储库Citrix ADC Azure模板

Citrix ADC VPX实例如何在Azure上工作

在内部部署中,Citrix ADC VPX实例至少需要三个IP地址:

  • 管理IP地址,称为NSIP地址

  • 用于与服务器场通信的子网IP(SNIP)地址

  • 用于接受客户端请求的虚拟服务器IP (VIP)地址

有关详细信息,请参阅:Microsoft Azure上Citrix ADC VPX实例的网络体系结构

注:

VPX虚拟设备可以部署在任何具有两个或更多内核和超过2 GB内存的实例类型上。

在Azure部署中,用户可以通过三种方式在Azure上配置Citrix ADC VPX实例:

  • 多网卡多IP体系结构

  • 单网卡多IP体系结构

  • ARM(Azure资源管理器)模板

根据需求,用户可以部署这些受支持的体系结构类型中的任何一种。

多网卡多ip架构(三网卡)

在此部署类型中,用户可以将多个网络接口(NIC)连接到VPX实例。任何NIC都可以有一个或多个IP配置—分配给它的静态或动态公用和专用IP地址。

请参考以下用例:

配置多IP多网卡的高可用设置

在Microsoft Azure部署中,两个Citrix ADC VPX实例的高可用性配置是通过使用Azure负载均衡器(ALB)实现的。这是通过在ALB上配置一个运行状况探测器来实现的,该探测器通过每5秒向主和从实例发送一次运行状况探测器来监视每个VPX实例。

在此设置中,只有主节点响应运行状况探测,而次节点不响应。一旦主服务器向health probe发送响应,ALB就会开始向实例发送数据流量。如果主实例错过了两个连续的运行状况探测,ALB不会将流量重定向到该实例。在故障切换时,新的主服务器开始响应运行状况探测,ALB将流量重定向到它。标准的VPX高可用性故障切换时间为3秒。流量切换可能发生的总故障切换时间最多为13秒。

用户可以在Azure上的主动-被动高可用性(HA)设置中部署一对具有多个NIC的Citrix ADC VPX实例。每个NIC可以包含多个IP地址。

以下选项可用于多NIC高可用性部署:

  • 使用Azure可用性集实现高可用性

  • 使用Azure可用性区域的高可用性

有关Azure可用性集和可用性区域的更多信息,请参阅Azure文档:管理Linux虚拟机的可用性

使用可用性集实现高可用性

使用可用性集的高可用性设置必须满足以下要求:

  • 独立于HA的网络配置(INC)配置

  • Azure负载均衡器(ALB)在直接服务器返回(DSR)模式

所有流量都通过主节点。在主节点出现故障之前,次节点将保持待机模式。

注:

为了在Azure云上进行Citrix VPX高可用性部署,用户需要一个可在两个VPX节点之间移动的浮动公共IP(PIP)。Azure负载平衡器(ALB)提供了浮动PIP,在发生故障转移时自动将其移动到第二个节点。

主备部署时,将ALB前端公网IP地址添加为VPX节点的VIP地址。在HA-INC配置中,VIP地址是浮动的,SNIP地址是特定于实例的。

用户可以通过以下两种方式在主动-被动高可用性模式下部署VPX对:

  • Citrix ADC VPX标准高可用性模板:使用此选项配置HA对,默认选项为三个子网和六个NIC。

  • Windows PowerShell命令:使用此选项可根据子网和NIC要求配置HA对。

介绍如何使用Citrix模板在主备HA场景下部署VPX对。如果您想使用PowerShell命令进行部署,请参见使用PowerShell命令配置具有多个IP地址和NIC的高可用性设置

使用Citrix高可用性模板配置HA-INC节点

通过使用标准模板,用户可以以HA-INC方式快速有效地部署VPX实例对。模板创建了2个节点、3个子网、6个网卡。子网用于管理、客户端和服务器端流量,每个子网都有两个网卡用于两个VPX实例。

通过使用Azure可用性集,完成以下步骤来启动模板并部署高可用性VPX对。

  1. 从Azure Marketplace中,选择并启动Citrix解决方案模板。此时将显示模板。

  2. 确保部署类型为资源管理器并选择创建

  3. 这个基础页面出现。创建资源组,并选择好吧

  4. 这个一般设置页面出现。输入详细信息并选择好吧

  5. 这个网络设置页面出现。检查VNet和子网配置,编辑所需设置,然后选择好吧

  6. 这个总结页面出现。检查配置并进行相应的编辑。选择好吧确认。

  7. 这个购买页面出现。选择购买以完成部署。

使用所需配置创建Azure资源组可能需要一些时间。完成之后,在Azure门户中选择Resource Group以查看配置细节,如LB规则、后端池、健康探测。高可用性对分别为ns-vpx0和ns-vpx1。

如果HA设置需要进一步修改,例如创建更多安全规则和端口,用户可以从Azure门户进行修改。

接下来,用户需要使用ALB的前端公共IP (PIP)地址,在主节点上。要找到ALB PIP,请选择铝青铜>前端IP配置

有关如何配置负载平衡虚拟服务器的更多信息,请参阅参考资料部分。

资源:

以下链接提供了与HA部署和虚拟服务器(虚拟服务器)配置相关的附加信息:

相关资源:

使用可用分区实现高可用性

Azure Availability Zones是Azure区域内故障隔离的位置,提供冗余电源、冷却和网络,并提高弹性。只有特定的Azure区域支持可用性区域。有关详细信息,请参阅:Azure中的区域和可用性区域

用户可以使用Azure Marketplace中提供的名为“NetScaler 13.0 HA使用可用性区域”的模板,在高可用性模式下部署VPX对。

通过使用Azure availability Zones,完成以下步骤来启动模板并部署一个高可用性VPX对。

  1. 从Azure Marketplace中选择并启动Citrix解决方案模板。

  2. 确保部署类型为资源管理器并选择创建

  3. 这个基础页面出现。输入详细信息并单击好吧

注:

确保选择了支持可用性区域的Azure区域。有关支持可用性区域的区域的详细信息,请参阅:Azure中的区域和可用性区域

  1. 这个一般设置页面出现。输入详细信息并选择好吧

  2. 这个网络设置页面出现。检查VNet和子网配置,编辑所需设置,然后选择好吧

  3. 这个总结页面出现。检查配置并进行相应的编辑。选择好吧确认。

  4. 这个购买页面出现。选择购买以完成部署。

使用所需配置创建Azure资源组可能需要一些时间。完成之后,选择Resource Group以查看Azure门户中的配置细节,例如LB规则、后端池、健康探测。高可用性对分别为ns-vpx0和ns-vpx1。此外,用户可以在“位置”列下看到位置。

如果HA设置需要进一步修改,例如创建更多安全规则和端口,用户可以从Azure门户进行修改。

ARM (Azure资源管理器)模板

用于Citrix ADC ARM (Azure资源管理器)模板主机的GitHub存储库Citrix ADC Azure模板用于在Microsoft Azure云服务中部署Citrix ADC。存储库中的所有模板都由Citrix ADC工程团队开发和维护。

此存储库中的每个模板都有一个共同定位的文档,描述模板的用法和体系结构。这些模板试图编码Citrix ADC VPX的推荐部署架构,或向用户介绍Citrix ADC,或演示特定功能、版本或选项。用户可以重用、修改或增强模板,以满足其特定的生产和测试需求。大多数模板需要对portal.azure.com进行足够的订阅才能创建资源和部署模板。

Citrix ADC VPX Azure资源管理器(ARM)模板旨在确保以一种简单一致的方式部署独立的Citrix ADC VPX。使用这些内置模板提高可靠性和系统可用性。这些ARM模板支持自带许可证(BYOL)或按小时选择。模板说明中提到或在模板部署期间提供选择选项。

有关如何使用ARM(Azure资源管理器)模板在Microsoft Azure上配置Citrix ADC VPX实例的更多信息,请访问Citrix ADC Azure模板

Citrix ADC GSLB和基于域的服务后端自动缩放,带云负载平衡器

GSLB和DBS概述

Citrix ADC GSLB支持为云负载平衡器使用DBS(基于域的服务)。这允许使用云负载平衡器解决方案自动发现动态云服务。此配置允许Citrix ADC在活动环境中实施全局服务器负载平衡基于域名的服务(GSLB DBS)。DBS允许通过DNS发现扩展Microsoft Azure环境中的后端资源。本节介绍Azure自动缩放环境中Citrix ADC之间的集成。本文档的最后一节详细介绍了设置Citrix ADC的HA对的能力,该对ADC跨越特定于Azure区域的两个不同可用性区域(AZ)。

基于域名的服务–Azure ALB

GLSB DBS利用用户Azure负载平衡器的FQDN动态更新GSLB服务组,以包括在Azure中创建和删除的后端服务器。要配置此功能,用户将Citrix ADC指向其Azure负载平衡器,以动态路由到Azure中的不同服务器。他们可以做到这一点,而无需在Azure中每次创建和删除实例时手动更新Citrix ADC。GSLB服务组的Citrix ADC DBS功能使用DNS感知服务发现来确定自动缩放组中标识的DBS命名空间的成员服务资源。

图:Citrix ADC GSLB DBS带云负载平衡器的自动缩放组件

image-vpx-azure-gslb-deployment-01

配置Azure组件

  1. 登录用户Azure门户并从Citrix ADC模板创建新的虚拟机

  2. 创建Azure负载平衡器

    image-vpx-azure-gslb-deployment-02

  3. 添加创建的Citrix ADC后端池

    image-vpx-azure-gslb-deployment-03

  4. 为端口80创建运行状况探测器。

    使用从负载平衡器创建的前端IP创建负载平衡规则。

    • 协议:TCP

    • 后端端口:80

    • 后端池:在步骤1中创建的Citrix ADC

    • 运行状况探测:在步骤4中创建

    • 会话持久性:没有

    image-vpx-azure-gslb-deployment-04

配置Citrix ADC GSLB基于域的服务

下面的配置总结了在启用GSLB的环境中启用基于域的服务以自动伸缩adc所需的内容。

交通管理配置

注:

需要使用名称服务器或DNS虚拟服务器配置Citrix ADC,通过该服务器为DBS服务组解析ELB /ALB域。有关名称服务器或DNS虚拟服务器的更多信息,请访问:DNS命名服务器

  1. 引导到流量管理>负载平衡>服务器

    image-vpx-azure-gslb-deployment-05

  2. 点击添加要创建服务器,请为Azure负载平衡器(ALB)提供与Azure中a记录(域名)对应的名称和FQDN

    image-vpx-azure-gslb-deployment-06

  3. 重复步骤2,从Azure中的第二个资源添加第二个ALB。

GSLB配置

  1. 单击添加按钮来配置GSLB站点

  2. 网站的名字。

    类型配置为“远程”或“本地”,根据Citrix ADC用户在其上配置站点。“站点IP地址”为GSLB站点的IP地址。GSLB站点使用该IP地址与其他GSLB站点进行通信。当使用云服务时,如果特定的IP位于外部防火墙或NAT设备上,则需要使用公网IP地址。该站点应配置为父站点。确保触发器监视器设置为ALWAYS。另外,请确保勾选底部的度量交换、网络度量交换和持久性会话条目交换三个框。

    Citrix建议您将触发器监视器设置设置为MEPDOWN,请参阅:配置GSLB服务组

    image-vpx-azure-gslb-deployment-07

  3. 点击创建,重复步骤3和步骤4为Azure中的其他资源位置配置GSLB站点(这可以在同一个Citrix ADC上配置)

  4. 引导到流量管理>GSLB>服务组

    image-vpx-azure-gslb-deployment-08

    点击添加添加服务组。为服务组命名,使用HTTP协议,然后在“站点名称”下选择在前面步骤中创建的各自站点。请确保将自动扩展模式配置为DNS,并选中状态和运行状况监视的复选框。点击好吧创建服务组。

    image-vpx-azure-gslb-deployment-09

  5. 点击服务小组成员选择基于服务器的.选择在运行指南开始部分配置的相应的弹性负载均衡服务器。配置流量通过80端口。点击创建

    image-vpx-azure-gslb-deployment-10

  6. 服务组成员绑定应填充从弹性负载平衡器接收的2个实例。

    image-vpx-azure-gslb-deployment-11

  7. 重复步骤5和步骤6,为Azure中的第二个资源位置配置Service Group。(这可以从相同的Citrix ADC GUI完成)。

  8. 最后一步是设置GSLB虚拟服务器。引导到流量管理>GSLB>虚拟服务器

  9. 点击添加创建虚拟服务器。命名服务器,DNS记录类型设置为,服务类型设置为HTTP,并选中“创建后启用”和“AppFlow日志记录”复选框。点击好吧创建GSLB虚拟服务器。

    image-vpx-azure-gslb-deployment-12

  10. 创建GSLB虚拟服务器后,单击没有GSLB虚拟服务器服务组绑定

    image-vpx-azure-gslb-deployment-13

  11. 在ServiceGroup绑定下使用选择服务组名称选择并添加在前面的步骤中创建的服务组。

    image-vpx-azure-gslb-deployment-14

  12. 接下来,通过单击配置GSLB虚拟服务器域绑定没有GSLB虚拟服务器域绑定. 配置FQDN和绑定,其余设置可以保留为默认设置。

    image-vpx-azure-gslb-deployment-15

  13. 配置ADNS服务没有服务.添加服务名称,单击新服务器,然后输入ADNS服务器的IP地址。此外,如果已配置用户ADN,则用户可以选择现有服务器然后从下拉菜单中选择用户ADN。确保协议为ADNS,且流量配置为通过端口53。

    image-vpx-azure-gslb-deployment-16

  14. 将方法配置为租赁连接备份方法如下所示设置轮流捡取

  15. 点击完成查看用户GSLB Virtual Server是否显示为Up。

    image-vpx-azure-gslb-deployment-17

Citrix ADC用于混合和多云部署的全局负载平衡

Citrix ADC混合和多云全局负载平衡(GLB)解决方案使用户能够在混合云、多云和内部部署中跨多个数据中心分布应用程序流量。Citrix ADC混合和多云GLB解决方案可帮助用户在混合或多云中管理负载平衡设置,而无需更改现有设置。此外,如果用户有内部部署设置,他们可以在完全迁移到云之前,使用Citrix ADC混合和多云GLB解决方案在云中测试他们的一些服务。例如,用户只能将一小部分流量路由到云,并在本地处理大部分流量。Citrix ADC混合和多云GLB解决方案还允许用户从单个统一控制台跨地理位置管理和监控Citrix ADC实例。

混合多云架构还可以通过避免“供应商锁定”和使用不同的基础设施来满足用户合作伙伴和客户的需求,从而提高企业的整体性能。使用多云架构,用户可以更好地管理其基础设施成本,因为他们现在只需为使用的内容付费。用户还可以更好地扩展其应用程序,因为他们现在可以按需使用基础架构。它还允许您从一个云快速切换到另一个云,以利用每个提供商的最佳产品。

Citrix ADC混合和多云GLB解决方案的体系结构

下图说明了Citrix ADC混合和多云GLB特性的架构。

image-vpx-azure-gslb-deployment-18

Citrix ADC GLB节点处理DNS名称解析。这些GLB节点中的任何一个都可以从任何客户端位置接收DNS请求。接收DNS请求的GLB节点返回由配置的负载平衡方法选择的负载平衡器虚拟服务器IP地址。GLB节点之间使用度量交换协议(MEP)交换度量(站点、网络和持久性度量),MEP是一种专有的Citrix协议。有关MEP协议的更多信息,请参阅:配置度量交换协议

GLB节点中配置的监视器监视同一数据中心中负载平衡虚拟服务器的运行状况。在父子拓扑中,GLB和Citrix ADC节点之间的度量通过使用MEP进行交换。但是,在父子拓扑中,在GLB和Citrix ADC LB节点之间配置监视器探测是可选的。

Citrix Application Delivery Management (ADM)服务代理支持在Citrix ADM和数据中心中的托管实例之间进行通信。有关Citrix ADM服务代理以及如何安装它们的更多信息,请参见:开始

注:本文档做了以下假设:

  • 如果用户有现有的负载平衡设置,则该设置已启动并正在运行。

  • 在每个Citrix ADC GLB节点上配置SNIP地址或GLB站点IP地址。当与其他数据中心交换度量时,此IP地址用作数据中心源IP地址。

  • 在每个Citrix ADC GLB实例上配置ADNS或ADNS-TCP服务以接收DNS流量。

  • 所需的防火墙和安全组在云服务提供商中配置。

安全组配置

用户必须在云服务提供商中设置所需的防火墙/安全组配置。有关AWS安全功能的更多信息,请参阅:AWS/文档/亚马逊专有网络/用户指南/安全. 有关Microsoft Azure网络安全组的详细信息,请参阅:Azure/网络/虚拟网络/规划虚拟网络/安全

此外,在GLB节点上,用户必须为ADNS服务/DNS服务器IP地址打开端口53,为MEP流量交换打开GSLB站点IP地址的端口3009。在负载平衡节点上,用户必须打开适当的端口以接收应用程序流量。例如,用户必须打开端口80以接收HTTP流量,打开端口443以接收HTTPS流量。打开端口443,用于Citrix ADM服务代理和Citrix ADM之间的NITRO通信。

对于动态往返时间GLB方法,用户必须打开端口53以允许UDP和TCP探测,具体取决于配置的LDNS探测类型。UDP或TCP探测是使用其中一个SNIP启动的,因此必须为绑定到服务器端子网的安全组执行此设置。

Citrix ADC混合和多云GLB解决方案的能力

Citrix ADC混合和多云GLB解决方案的一些功能在本节中介绍:

兼容其他负载均衡解决方案

Citrix ADC混合和多云GLB解决方案支持多种负载均衡解决方案,如Citrix ADC负载均衡、NGINX负载均衡、HAProxy负载均衡和其他第三方负载均衡。

注:

只有在使用基于邻近性和非度量的GLB方法以及没有配置父子拓扑时,才支持Citrix ADC以外的负载平衡解决方案。

GLB方法

Citrix ADC混合和多云GLB解决方案支持以下GLB方式。

  • 基于指标的最大下界的方法。基于度量的GLB方法通过度量交换协议从其他Citrix ADC节点收集度量。

    • 最少连接:客户端请求路由到活动连接最少的负载平衡器。

    • 最小带宽:客户端请求路由到当前提供最小流量的负载平衡器。

    • 最少数据包:客户端请求被路由到在过去14秒内收到最少数据包的负载平衡器。

  • 基于非度量的GLB方法

    • 循环:客户端请求被路由到负载平衡器列表顶部的负载平衡器的IP地址。然后,该负载平衡器移动到列表的底部。

    • 源IP哈希:根据客户端IP地址的哈希值选择负载均衡器。

  • 基于邻近度的GLB方法

    • 静态邻近性:客户端请求路由到最接近客户端IP地址的负载平衡器。

    • RTT (Round-Trip Time):根据RTT值(客户端本地DNS服务器到数据中心连接的时间延迟)选择性能最好的负载均衡器的IP地址。

有关负载均衡方法的更多信息,请参见:负载平衡算法

GLB拓扑

Citrix ADC混合和多云GLB解决方案支持主-被动拓扑和父-子拓扑。

  • 主-被动拓扑—提供灾难恢复,并通过防止故障点来确保应用程序的持续可用性。如果主数据中心宕机,则被动数据中心可以正常运行。有关GSLB主-被动拓扑的更多信息,请参见:为灾难恢复配置GSLB

  • 父子拓扑–如果客户使用基于度量的GLB方法来配置GLB和LB节点,并且LB节点部署在不同的Citrix ADC实例上,则可以使用父子拓扑。在父子拓扑中,LB节点(子站点)必须是Citrix ADC设备,因为父站点和子站点之间的度量交换是通过度量交换协议(MEP)进行的。

有关父子拓扑的详细信息,请参见:使用MEP协议的父子拓扑部署

IPv6支持

Citrix ADC混合和多云GLB解决方案也支持IPv6。

监控

Citrix ADC混合和多云GLB解决方案支持内置监视器,并提供安全连接选项。但是,如果LB和GLB配置在同一个Citrix ADC实例上,或者使用parent-child拓扑,则配置监视器是可选的。

坚持不懈

Citrix ADC混合和多云GLB解决方案支持以下功能:

  • 源基于IP的持久性会话,因此,如果来自同一客户端的多个请求在配置的超时窗口内到达,则将它们定向到同一服务。如果超时值在客户端发送另一个请求之前过期,则丢弃会话,并使用配置的负载平衡算法为客户端的下一个请求选择新服务器。

  • 溢出持久性,以便备份虚拟服务器继续处理其接收的请求,即使主服务器上的负载低于阈值。有关详细信息,请参阅:配置溢出

  • 站点持久性,以便GLB节点选择一个数据中心来处理客户端请求,并为所有后续DNS请求转发所选数据中心的IP地址。如果配置的持久性应用于已关闭的站点,则GLB节点使用GLB方法选择新站点,并且新站点对于来自客户端的后续请求变得持久。

使用Citrix ADM StyleBooks进行配置

客户可以在Citrix ADM上使用默认的多云GLB样式表,以混合和多云GLB配置配置Citrix ADC实例。

客户可以使用LB Node StyleBook的默认multicloud GLB StyleBook来配置Citrix ADC负载均衡节点,这些节点是父-子拓扑中的子站点,处理应用程序流量。只有当用户希望在父-子拓扑中配置LB节点时,才使用此StyleBook。但是,每个LB节点必须使用这个StyleBook单独配置。

Citrix ADC混合和多云GLB解决方案配置的工作流程

客户可以使用Citrix ADM上附带的多云GLB样式表,以混合和多云GLB配置配置Citrix ADC实例。

下图显示了配置Citrix ADC混合和多云GLB解决方案的工作流。工作流图中的步骤将在该图之后进行更详细的解释。

image-vpx-azure-gslb-deployment-19

以云管理员身份执行以下任务:

  1. 注册Citrix云帐户。

    要开始使用Citrix ADM,请创建一个Citrix Cloud公司帐户,或加入公司中某个人创建的现有帐户。

  2. 用户登录Citrix云后,单击管理Citrix应用程序交付管理平铺以首次设置ADM服务。

  3. 下载并安装多个Citrix ADM服务代理。

    用户必须在其网络环境中安装和配置Citrix ADM service agent,以实现Citrix ADM与数据中心或云中托管实例之间的通信。在每个区域中安装一个代理,以便他们可以在托管实例上配置LB和GLB配置。LB和GLB配置可以共享一个代理。有关上述三项任务的更多信息,请参阅:开始

  4. 在Microsoft Azure/AWS云/本地数据中心上部署负载平衡器。

    根据用户在云端和本地部署的负载平衡器的类型,相应地进行配置。例如,用户可以在Microsoft Azure资源管理器(ARM)门户、亚马逊Web服务(AWS)虚拟私有云和内部数据中心中配置Citrix ADC VPX实例。通过创建虚拟机和配置其他资源,将Citrix ADC实例配置为独立模式下的LB或GLB节点。有关如何部署Citrix ADC VPX实例的更多信息,请参阅以下文档:

  5. 执行安全配置。

    在ARM和AWS中配置网络安全组和网络ACL,以控制用户实例和子网的入站和出站流量。

  6. 在Citrix ADM中添加Citrix ADC实例。

    Citrix ADC实例是用户希望从Citrix ADM发现、管理和监视的网络设备或虚拟设备。要管理和监视这些实例,用户必须将实例添加到服务中,并注册LB(如果用户使用Citrix ADC for LB)和GLB实例。有关如何在Citrix ADM中添加Citrix ADC实例的更多信息,请参阅:开始

  7. 使用默认的Citrix ADM样式本实现GLB和LB配置。

    • 使用多云GLB样式表在选定的GLB Citrix ADC实例上执行GLB配置。

    • 实现负载平衡配置。(如果用户在托管实例上已经有LB配置,则可以跳过此步骤。)

    用户可以通过以下两种方式之一在Citrix ADC实例上配置负载平衡器:

    • 手动配置实例以平衡应用程序的负载。有关如何手动配置实例的详细信息,请参阅:设置基本的负载平衡

    • 使用样本。用户可以使用一个Citrix ADM StyleBooks (HTTP/SSL Load Balancing StyleBook或HTTP/SSL Load Balancing (with Monitors) StyleBook)在选定的Citrix ADC实例上创建负载平衡器配置。用户还可以创建自己的StyleBooks。有关StyleBooks的更多信息,请参见:样式表

  8. 使用LB节点的多云GLB StyleBook要在以下任何情况下配置GLB父子拓扑,请执行以下操作:

    • 如果用户使用基于度量的GLB算法(最少的数据包、最少的连接、最少的带宽)来配置GLB和LB节点,并且LB节点是否部署在不同的Citrix ADC实例上

    • 如果需要站点持久性

使用样式本在Citrix ADC LB节点上配置GLB

客户可以使用LB节点的多云GLB StyleBook如果他们使用基于度量的GLB算法(最少的数据包、最少的连接、最少的带宽)来配置GLB和LB节点,并且LB节点是否部署在不同的Citrix ADC实例上。

用户还可以使用此样式本为现有父站点配置更多子站点。此样式簿一次配置一个子站点。因此,从这个样式本创建尽可能多的配置(配置包),就像子站点一样。样式本在子站点上应用GLB配置。用户最多可以配置1024个子站点。

注:

使用此处找到的多云GLB样式本:使用StyleBooks配置GLB配置父站点。

此样式本做出以下假设:

  • 配置了SNIP地址或GLB站点IP地址。

  • 所需的防火墙和安全组在云服务提供商中配置。

使用LB节点的multicloud GLB StyleBook在Parent-Child拓扑中配置子站点

  1. 引导到应用>配置,然后单击创造新的

  2. 这个选择样式本页面显示可供客户在Citrix应用程序交付管理(ADM)中使用的所有样式本。向下滚动并选择LB节点的多云GLB StyleBook

样式簿显示为一个用户界面页面,用户可以在该页面上输入此样式簿中定义的所有参数的值。

注:

数据中心和站点这两个术语在本文档中可以互换使用。

  1. 设置以下参数:

    • 应用程序名称. 输入要为其创建子站点的GLB站点上部署的GLB应用程序的名称。

    • 协议. 从下拉列表框中选择已部署应用程序的应用程序协议。

    • 健康检查(可选)

      • 健康检查类型. 从下拉列表框中,选择用于检查代表站点上应用程序的负载平衡器VIP地址的运行状况的探测器类型。

      • 安全模式. (可选)选择如果需要基于SSL的运行状况检查,则启用此参数。

      • HTTP请求. (可选)如果用户选择HTTP作为健康检查类型,请输入用于探测VIP地址的完整HTTP请求。

      • HTTP状态响应代码列表.(可选)当健康检查类型选择“HTTP”时,输入VIP健康时响应HTTP请求所需的HTTP状态码列表。

  2. 正在配置父站点。

    提供要在其下创建子站点(LB节点)的父站点(GLB节点)的详细信息。

    • 网站的名字.输入父站点的名称。

    • 站点IP地址.输入父站点与其他站点交换指标时作为源IP地址的IP地址。假设每个站点的GLB节点上已经配置了该IP地址。

    • 站点公共IP地址. (可选)输入用于交换指标的父站点的公共IP地址(如果该站点的IP地址为NAT'ed)。

  3. 配置儿童网站。

    提供子站点的详细信息。

    • 网站的名字.输入站点的名称。

    • 站点IP地址. 输入子站点的IP地址。这里,使用配置为子站点的Citrix ADC节点的专用IP地址或SNIP。

    • 站点公共IP地址. (可选)输入用于交换指标的子站点的公共IP地址(如果该站点的IP地址为NAT'ed)。

  4. 配置主GLB服务(可选)

    只有当LB虚拟服务器的IP地址不是公网IP地址时,才需要配置主GLB业务。通过配置本地GLB服务列表,用户可以在应用部署的站点配置本地GLB服务列表。

    • 服务IP. 输入此站点上负载平衡虚拟服务器的IP地址。

    • 服务公共IP地址. 如果虚拟IP地址是私有的,并且有一个公共IP地址与之NAT'ed,请指定公共IP地址。

    • 服务端口. 输入此站点上GLB服务的端口。

    • 网站的名字.输入GLB服务所在的站点名称。

  5. 点击目标实例并在要部署GLB配置的每个站点上选择配置为GLB实例的Citrix ADC实例。

  6. 点击创建在所选Citrix ADC实例(LB节点)上创建LB配置。用户也可以单击排练检查将在目标实例中创建的对象。用户创建的样式本配置将显示在“配置”页面上的配置列表中。用户可以使用Citrix ADM GUI检查、更新或删除此配置。

有关如何在Microsoft Azure上部署Citrix ADC VPX实例的更多信息,请参阅在Microsoft Azure上部署Citrix ADC VPX实例

有关Citrix ADC VPX实例如何在Azure上工作的更多信息,请访问Citrix ADC VPX实例如何在Azure上工作

有关如何在Citrix ADC VPX实例上配置GSLB的更多信息,请参阅在Citrix ADC VPX实例上配置GSLB

有关如何在Azure上的活动待机高可用性设置上配置GSLB的更多信息,请访问在主备高可用安装中配置GSLB

先决条件

在Azure上部署Citrix VPX实例之前,用户需要一些必备知识:

  • 熟悉Azure术语和网络详细信息。有关信息,请参阅上一节中的Azure术语。

  • 了解Citrix ADC设备。有关Citrix ADC设备的详细信息,请参阅:Citrix ADC 13.0
  • 有关Citrix ADC网络的知识,请参阅网络主题:网络

Azure GSLB先决条件

Citrix ADC GSLB服务组的先决条件包括一个正常运行的Amazon Web Services / Microsoft Azure环境,具备配置安全组、Linux Web服务器、在AWS内配置Citrix ADC、弹性ip和弹性负载均衡器的知识和能力。

GSLB DBS服务集成要求用于AWS ELB和Microsoft Azure ALB负载平衡器实例的Citrix ADC版本12.0.57。

Citrix ADC GSLB服务组功能增强

GSLB服务组实体:Citrix ADC版本12.0.57

GSLB服务组支持使用DBS动态发现进行自动缩放。

DBS功能组件(基于域的服务)必须绑定到GSLB服务组

例子:

>添加服务器sydney\u服务器LB-sydney-XXXXXXXXX.ap-Southwest-2.elb.amazonaws.com>添加gslb服务组sydney\u sg HTTP-自动缩放DNS-siteName sydney>绑定gslb服务组sydney\u sg sydney\u服务器80<--需要复制-->

限制

在ARM上运行Citrix ADC VPX负载平衡解决方案会带来以下限制:

  • Azure体系结构不支持以下Citrix ADC功能:

    • 群集

    • IPv6

    • 免费ARP(GARP)

    • L2模式(桥接)。对于与SNIP位于同一子网中的服务器,L2(MAC重写)支持透明虚拟服务器。

    • 标记VLAN

    • 动态路由

    • 虚拟MAC

    • USIP

    • 巨型帧

  • 如果您认为可能需要随时关闭并临时解除分配Citrix ADC VPX虚拟机,请在创建虚拟机时分配静态内部IP地址。如果未分配静态内部IP地址,Azure可能会在每次重新启动时为虚拟机分配不同的IP地址,并且虚拟机可能变得不可访问。

  • 在Azure部署中,仅支持以下Citrix ADC VPX型号:VPX 10、VPX 200、VPX 1000和VPX 3000。有关更多信息,请参阅Citrix ADC VPX数据表。

  • 如果使用型号高于VPX 3000的Citrix ADC VPX实例,则网络吞吐量可能与该实例的许可证指定的吞吐量不同。但是,其他特性(如SSL吞吐量和每秒SSL事务数)可能会有所改进。

  • Azure在虚拟机资源调配期间生成的“部署ID”对ARM中的用户不可见。用户无法使用部署ID在ARM上部署Citrix ADC VPX设备。

  • Citrix ADC VPX实例在初始化时支持20 Mb/s吞吐量和标准版功能。

  • 对于XenApp和XenDesktop部署,可以在以下模式下配置VPX实例上的VPN虚拟服务器:

    • 基本模式,其中“ICAOnly VPN虚拟服务器”参数设置为“ON”。基本模式完全适用于未授权的Citrix ADC VPX实例。

    • SmartAccess模式,其中“ICAOnly VPN虚拟服务器”参数设置为“OFF”。SmartAccess模式只能在未授权的Citrix ADC VPX实例上为5个Citrix ADC AAA会话用户工作。

注:

要配置智能控制功能,用户必须对Citrix ADC VPX实例应用高级许可证。

Azure VPX支持的型号和许可

在Azure部署中,仅支持以下Citrix ADC VPX型号:VPX 10、VPX 200、VPX 1000和VPX 3000。有关更多信息,请参阅Citrix ADC VPX数据表。

Azure上的Citrix ADC VPX实例需要许可证。以下授权选项可用于在Azure上运行的Citrix ADC VPX实例。

  • 基于订阅的许可:Citrix ADC VPX设备在Azure Marketplace上作为付费实例提供。基于订阅的许可是一种按量付费的选项。用户按小时收费。Azure Marketplace上提供了以下VPX型号和许可证类型:
VPX模型 许可类型
VPX10 标准、先进的溢价
VPX200 标准、先进的溢价
VPX1000 标准、先进的溢价
VPX3000 标准、先进的溢价

从NetScaler 12.0 56.20版开始,用于内部部署和云部署的VPX Express不需要许可证文件。有关Citrix ADC VPX Express的更多信息,请参阅Citrix ADC许可概述中的“Citrix ADC VPX Express许可证”部分,可在以下位置找到:许可证概述

注:

不管从Azure Marketplace购买基于订阅的每小时许可证,在极少数情况下,部署在Azure上的Citrix ADC VPX实例可能会提供默认的NetScaler许可证。这是由于Azure实例元数据服务(IMDS)的问题造成的。

在对Citrix ADC VPX实例进行任何配置更改之前,请执行热重启,以启用正确的Citrix ADC VPX许可证。

港口使用指引

用户可以在创建NetScaler VPX实例时或在配置虚拟机后,在NSG中配置更多入站和出站规则。每个入站和出站规则都与公共端口和专用端口相关联。

在配置NSG规则之前,请注意以下有关用户可以使用的端口号的指导原则:

  1. NetScaler VPX实例保留以下端口。当使用公共IP地址从internet请求时,用户不能将这些端口定义为专用端口。端口21、22、80、443、8080、67、161、179、500、520、3003、3008、3009、3010、3011、4001、5061、9000、7000。但是,如果用户希望面向internet的服务(如VIP)使用标准端口(例如,端口443),则用户必须使用NSG创建端口映射。然后将标准端口映射到Citrix ADC VPX上为此VIP服务配置的不同端口。例如,VIP服务可能正在VPX实例上的端口8443上运行,但映射到公共端口443。因此,当用户通过公共IP访问端口443时,请求被定向到专用端口8443。

  2. “公网IP”不支持动态打开端口映射的协议,如被动的FTP、ALG等。

  3. 高可用性不适用于使用与VPX实例关联的公共IP地址(PIP)而不是在Azure负载均衡器上配置的PIP的流量。有关详细信息,请参阅:配置单IP地址单网卡的高可用性设置

  4. 在NetScaler网关部署中,用户不需要配置SNIP地址,因为在未配置SNIP时,NSIP可以用作SNIP。用户必须使用NSIP地址和一些非标准端口号来配置VIP地址。对于后端服务器上的回拨配置,必须指定VIP端口号以及VIP URL(例如,URL:port)。

注:

在Azure资源管理器中,Citrix ADC VPX实例与两个IP地址相关联——一个公共IP地址(PIP)和一个内部IP地址。当外部流量连接到PIP时,内部IP地址或NSIP不可路由。要在VPX中配置VIP,请使用内部IP地址(NSIP)和任何可用的空闲端口。不要使用PIP配置VIP。

例如,如果Citrix ADC VPX实例的NSIP为10.1.0.3,可用空闲端口为10022,则用户可以通过提供10.1.0.3:10022(NSIP地址+端口)组合来配置VIP。