ADC

跨不同 AWS 区域部署具有专用 IP 地址的 VPX 高可用性对

可以在 INC 模式下使用专用 IP 地址在两个不同的子网或两个不同的 AWS 可用性区域中配置两个 Citrix ADC VPX 实例。此解决方案可以轻松与带 弹性 IP 地址的现有多区域 VPX 高可用性对集成。因此,您可以一起使用这两个解决方案。

有关高可用性的更多信息,请参阅 高可用性。有关 INC 的更多信息,请参阅 在不同子网中配置高可用性节点

注意:

此部署受 Citrix ADC 13.0 版本 67.39 以后的版本的支持。此部署与 AWS Transit Gateway 和 VPC 对等互连兼容。

必备条件

确保与您的 AWS 帐户关联的 IAM 角色具有以下 IAM 权限:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeAddresses",
                "ec2:AssociateAddress",
                "ec2:DisassociateAddress",
                "ec2:DescribeRouteTables",
                "ec2:DeleteRoute",
                "ec2:CreateRoute",
                "ec2:ModifyNetworkInterfaceAttribute",
                "iam:SimulatePrincipalPolicy",
                "iam:GetRole"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
<!--NeedCopy-->

如何跨不同 AWS 区域部署具有专用 IP 地址的 VPX 高可用性对

下面是使用专用 IP 地址在两个不同子网或两个不同的 AWS 可用性区域中部署 VPX 对的步骤摘要。

  1. 创建 Amazon 虚拟私有云。
  2. 在两个不同的可用性区域中部署两个 VPX 实例。
  3. 配置高可用性
    1. 在两个实例中在 INC 模式下设置高可用性。
    2. 在 VPC 中添加指向客户端接口的相应路由表。
    3. 在主实例中添加虚拟服务器。

对于步骤 1 和 2,请使用 AWS 控制台。对于步骤 3,请使用 Citrix ADC VPX GUI 或 CLI。

步骤 1. 创建 Amazon 虚拟私有云 (VPC)。

步骤 2. 在具有相同数量的 ENI(网络接口)的两个不同的可用性区域中部署两个 VPX 实例。

有关如何在 AWS 上创建 VPC 和部署 VPX 实例的更多信息,请参阅在 AWS 上 部署 Citrix ADC VPX 独立实例场景:独立实例

步骤 3. 通过选择与 Amazon VPC 子网不重叠的子网来配置 ADC VIP 地址。如果您的 VPC 为 192.168.0.0/16,要配置 ADC VIP 地址,可以从以下 IP 地址范围中选择任何子网:

  • 0.0.0.0 - 192.167.0.0
  • 192.169.0.0 - 254.255.255.0

在此示例中,选择了 10.10.10.0/24 子网并在此子网中创建了 VIP。可以选择 VPC 子网以外的任何子网 (192.168.0.0/16)。

步骤 4. 添加指向 VPC 路由表中的主节点的客户端接口 (VIP) 的路由。

在 AWS CLI 中,键入以下命令:

aws ec2 create-route --route-table-id rtb-2272532 --destination-cidr-block 10.10.10.0/24 --gateway-id <eni-client-primary>
<!--NeedCopy-->

在 AWS GUI 中,执行以下步骤以添加路由:

  1. 打开 Amazon EC2 控制台
  2. 在导航窗格中,选择 Route Tables(路由表),然后选择路由表。
  3. 选择 Actions(操作),然后单击 Edit routes(编辑路线)。
  4. 要添加路线,请选择 Add route(添加路线)。对于 Destination(目标),输入目标 CIDR 块、单个 IP 地址或前缀列表的 ID。对于网关 ID,请选择主节点的客户端接口的 ENI。

路由表-编辑路由

注意

必须在主实例的客户端 ENI 上禁用 Source/Dest Check(源/目标检查)。

要使用控制台禁用网络接口的源/目标检查,请执行以下步骤:

  1. 打开 Amazon EC2 控制台
  2. 在导航窗格中,选择 Network Interfaces(网络接口)。
  3. 选择主客户端接口的网络接口,然后选择 Actions(操作),然后单击“Change Source/Dest”(更改源/目标)。检查
  4. 在对话框中,选择 Disabled(已禁用),然后单击 Save(保存)。

更改源-目标检查

步骤 5. 配置高可用性。可以使用 Citrix ADC VPX CLI 或 GUI 设置高可用性。

使用 CLI 配置高可用性

  1. 在两个实例中在 INC 模式下设置高可用性。

    在主节点上:

    add ha node 1 <sec_ip> -inc ENABLED
    <!--NeedCopy-->
    

    在辅助节点上:

    add ha node 1 <prim_ip> -inc ENABLED
    <!--NeedCopy-->
    

    <sec_ip> 是指辅助节点的管理 NIC 的专用 IP 地址。

    <prim_ip> 是指主节点的管理 NIC 的专用 IP 地址。

  2. 在主实例上添加一个虚拟服务器。必须从选定的子网进行添加,例如 10.10.10.0/24。

    键入以下命令:

    add \<server\_type\> vserver \<vserver\_name\> \<protocol\> \<primary\_vip\> \<port\>
    <!--NeedCopy-->
    

使用 GUI 配置高可用性

  1. 在两个实例上在 INC 模式下设置高可用性。

  2. 使用用户名 nsroot 和实例 ID 作为密码登录主节点。

  3. 导航到 Configuration(配置)> System(系统)> High Availability(高可用性),然后单击 Add(添加)。

  4. 远程节点 IP 地址 字段中,添加辅助节点的管理 NIC 的专用 IP 地址。

  5. 选择在自助节点上打开 NIC(Independent Network Configuration, 独立网络配置)模式。

  6. Remote System Login Credential(远程系统登录凭据)下,添加辅助节点的用户名和密码,然后单击 Create(创建)。

  7. 在辅助节点中重复这些步骤。

  8. 在主实例中添加虚拟服务器

    导航到 Configuration(配置)> Traffic Management(流量管理)> Virtual Servers(虚拟服务器)> Add(添加)。

    添加虚拟服务器

场景

在这种情况下,将创建一个 VPC。在该 VPC 中,在两个可用性区域中创建了两个 VPX 实例。每个实例都有三个子网 - 一个用于管理,一个用于客户端,一个用于后端服务器。

下图说明了 AWS 上在 INC 模式下的 Citrix ADC VPX 高可用性设置。不属于 VPC 的自定义子网 10.10.10.10 用作 VIP。因此,10.10.10.10 子网可以跨可用性区域使用。

在故障转移之前,在 INC 模式下设置高可用性

故障转移后,在 INC 模式下设置高可用性

对于这种情况,请使用 CLI 配置高可用性。

  1. 在两个实例上以 INC 模式设置高可用性。

    在主节点和辅助节点上键入以下命令。

    在主节点上:

    add ha node 1 192.168.4.10 -inc enabled
    <!--NeedCopy-->
    

    此处,192.168.4.10 是指辅助节点的管理 NIC 的专用 IP 地址。

    在辅助节点上:

    add ha node 1 192.168.1.10 -inc enabled
    <!--NeedCopy-->
    

    此处,192.168.1.10 是指主节点的管理 NIC 的专用 IP 地址。

  2. 在主实例上添加一个虚拟服务器。

    键入以下命令:

    add lbvserver vserver1 http 10.10.10.10 80
    <!--NeedCopy-->
    
  3. 保存配置。

  4. 强制故障转移后:

    • 辅助实例将成为新的主实例。
    • 指向主 ENI 的 VPC 路由迁移到辅助客户端 ENI。
    • 客户端流量将恢复到新的主实例。

适用于 HA 专用 IP 解决方案的 AWS Transit Gateway

您需要使用 AWS Transit Gateway 才能使专用 VIP 子网在内部网络内、跨 AWS VPC、区域和本地网络进行路由。VPC 必须连接到 AWS Transit Gateway。AWS Transit Gateway 路由表中的 VIP 子网或 IP 池的静态路由将创建并指向 VPC。

AWS Transit Gateway

要配置 AWS Transit Gateway,请执行以下步骤:

  1. 打开 Amazon VPC 控制台
  2. 在导航窗格上,选择 Transit Gateway 路由表
  3. 选择 由选项卡,然后单击 创建静态路由。

    AWS Transit Gateway 路由表

  4. 创建一条静态路由,其中 CIDR 指向您的专用 VIPS 子网,连接点指向具有 ADC VPX 的 VPC。

    创建静态路由

  5. 单击 创建静态路由,然后选择 关闭

故障排除

如果您在跨多区域高可用性配置高可用性专用 IP 解决方案时遇到任何问题,请检查以下要点进行故障排除:

  • 主节点和辅助节点都具有相同的 IAM 权限集。
  • 在主节点和辅助节点上均启用 INC 模式。
  • 主节点和辅助节点的接口数量相同。
  • 创建实例时,遵循在两个节点上连接接口的相同顺序。在主节点上,如果先连接客户端接口,然后连接服务器接口。然后,在辅助节点上也遵循相同的顺序。如果有任何不匹配,请分离接口,然后按正确的顺序重新连接接口。
  • 如果流量不流动,请确保“Source/dest. Check”首次在主节点的客户端界面上被禁用。
  • 确保 cloudhadaemon 命令 (ps -aux | grep cloudha) 在命令行管理程序中运行。
  • 确保 Citrix ADC 固件版本为 13.0 Build 70.x 或更高版本。
  • 有关故障转移过程的问题,请查看以下位置的日志文件:/var/log/cloud-ha-daemon.log
跨不同 AWS 区域部署具有专用 IP 地址的 VPX 高可用性对