在 Google Cloud Platform 上部署具有私有 IP 地址的 VPX 高可用性对
您可以使用私有 IP 地址在 GCP 上部署 VPX 高可用性对。客户端 IP (VIP) 必须在主节点上配置为别名 IP 地址。发生故障转移时,客户端 IP 地址将移动到辅助节点,以便流量恢复。
有关高可用性的更多信息,请参阅 高可用性。
开始之前
- 阅读 在 Google Cloud Platform 上部署 NetScaler VPX 实例 中提到的限制、硬件要求和注意事项。此信息也适用于高可用性部署。
- 在您的 GCP 项目中启用 云资源管理器 API。
-
在创建实例时,允许完全访问所有 Cloud API。

-
确保您的 GCP 服务帐户具有以下 IAM 权限:
REQUIRED_INSTANCE_IAM_PERMS = [ "compute.forwardingRules.list", "compute.forwardingRules.setTarget", "compute.instances.setMetadata", "compute.instances.get", "compute.instances.list", "compute.instances.updateNetworkInterface", "compute.targetInstances.list", "compute.targetInstances.use", "compute.targetInstances.create", "compute.zones.list", "compute.zoneOperations.get", ] <!--NeedCopy--> -
如果您在管理接口以外的接口上配置了外部 IP 地址,请确保您的 GCP 服务帐户具有以下附加 IAM 权限:
REQUIRED_INSTANCE_IAM_PERMS = [ "compute.addresses.use" "compute.instances.addAccessConfig", "compute.instances.deleteAccessConfig", "compute.networks.useExternalIp", "compute.subnetworks.useExternalIp", ] <!--NeedCopy--> -
如果您的 VM 没有互联网访问权限,您必须在管理子网上启用 Private Google Access。

- 如果您在主节点上配置了 GCP 转发规则,请阅读 GCP 上 VPX 高可用性对的转发规则支持 中提到的限制和要求,以便在故障转移时将其更新到新的主节点。
如何在谷歌云平台上部署 VPX 高可用性对
以下是高可用性部署步骤的摘要:
- 在同一区域创建 VPC 网络。例如,亚洲东部。
- 在同一区域创建两个 VPX 实例(主节点和辅助节点)。它们可以在同一区域或不同区域。例如,亚洲东部-1a 和亚洲东部-Ib。
- 通过使用 NetScaler GUI 或 ADC CLI 命令,在两个实例上配置高可用性设置。
步骤 1. 创建 VPC 网络
根据您的要求创建 VPC 网络。Citrix® 建议您创建三个 VPC 网络,分别用于关联管理 NIC、客户端 NIC 和服务器 NIC。
要创建 VPC 网络,请执行以下步骤:
- 登录 Google 控制台 > 网络 > VPC 网络 > 创建 VPC 网络。
- 填写必填字段,然后单击“创建”。
有关详细信息,请参阅 在 谷歌云平台 上部署 NetScaler VPX 实例 中的“创建 VPC 网络”部分。
步骤 2. 创建两个 VPX 实例
按照 场景:部署多 NIC、多 IP 独立 VPX 实例 中给出的步骤创建两个 VPX 实例。
重要提示:
将客户端别名 IP 地址分配给主节点。请勿使用 VPX 实例的内部 IP 地址来配置 VIP。
要创建客户端别名 IP 地址,请执行以下步骤:
-
导航到 VM 实例,然后单击“编辑”。
-
在“网络接口”窗口中,编辑客户端接口。
-
在“别名 IP 范围”字段中,输入客户端别名 IP 地址。


故障转移后,当旧的主节点成为新的辅助节点时,别名 IP 地址会从旧的主节点迁移并附加到新的主节点。
配置 VPX 实例后,您可以配置虚拟 IP (VIP) 和子网 IP (SNIP) 地址。有关更多信息,请参阅 配置 NetScaler 拥有的 IP 地址。
步骤 3. 配置高可用性
在 谷歌云平台 上创建实例后,您可以使用 NetScaler 图形用户界面 或 命令行界面 配置高可用性。
通过使用 GUI 配置高可用性
步骤 1。在两个节点上以 INC 启用模式设置高可用性。
在 主节点 上,执行以下步骤:
- 使用用户名
nsroot登录实例,并将 GCP 控制台中的节点实例 ID 作为密码。 - 导航到 配置 > 系统 > 高可用性 > 节点,然后单击 添加。
- 在 远程节点 IP 地址 字段中,输入辅助节点的管理 NIC 的私有 IP 地址。
- 选择 在自节点上启用 INC(独立网络配置)模式 复选框。
- 单击 创建。
在 辅助节点 上,执行以下步骤:
- 使用用户名
nsroot登录实例,并将 GCP 控制台中的节点实例 ID 作为密码。 - 导航到 配置 > 系统 > 高可用性 > 节点,然后单击添加。
- 在Remote Node IP address字段中,输入主节点的管理 NIC 的私有 IP 地址。
- 选中 在本节点上启用 INC(独立网络配置)模式 复选框。
- 单击创建。
在继续操作之前,请确保辅助节点的同步状态在Nodes页面中显示为 SUCCESS。

注意:
一旦辅助节点与主节点完成同步,辅助节点将拥有与主节点完全相同的登录凭据。
步骤 2。在两个节点上添加虚拟 IP 地址和子网 IP 地址。
在主节点上,执行以下步骤:
- 导航到 系统 > 网络 > IP 地址 > IPv4 地址,然后单击添加。
- 要创建客户端别名 IP (VIP) 地址:
- 输入在 VM 实例中为客户端子网配置的别名 IP 地址和网络掩码。
- 在IP Type字段中,从下拉菜单中选择Virtual IP。
- 点击 创建。
- 要创建服务器 IP (SNIP) 地址:
- 输入主实例面向服务器的接口的内部 IP 地址以及为服务器子网配置的子网掩码。
- 在 IP 类型 字段中,从下拉菜单中选择 子网 IP。
- 点击 创建。

在辅助节点上,执行以下步骤:
- 导航到 系统 > 网络 > IP > IPv4,然后点击 添加。
- 要创建客户端别名 IP (VIP) 地址:
- 输入主 VM 实例上为客户端子网配置的别名 IP 地址和子网掩码。
- 在 IP 类型 字段中,从下拉菜单中选择 子网 IP。
- 点击 创建。
- 要创建服务器 IP (SNIP) 地址:
- 输入辅助实例面向服务器的接口的内部 IP 地址以及为服务器子网配置的子网掩码。
- 在 IP 类型 字段中,从下拉菜单中选择 子网 IP。
- 点击 创建。

步骤 3。在主节点上添加负载均衡虚拟服务器。
- 导航到 配置 > 流量管理 > 负载均衡 > 虚拟服务器 > 添加。
-
添加名称、协议、IP 地址类型 (IP 地址)、IP 地址 (主客户端别名 IP 地址) 和端口的所需值,然后点击 确定。

步骤 4。在主节点上添加服务或服务组。
- 导航到 配置 > 流量管理 > 负载均衡 > 服务 > 添加。
- 添加服务名称、IP 地址、协议和端口的所需值,然后点击 确定。
步骤 5。将服务或服务组绑定到主节点上的负载均衡虚拟服务器。
- 导航到 配置 > 流量管理 > 负载均衡 > 虚拟服务器。
- 选择在 步骤 3 中配置的负载均衡虚拟服务器,然后点击 编辑。
- 在 服务和服务组 选项卡中,点击 无负载均衡虚拟服务器服务绑定。
- 选择在 步骤 4 中配置的服务,然后点击 绑定。
步骤 5。保存配置。
强制故障转移后,辅助节点成为新的主节点。旧主节点的客户端别名 IP (VIP) 和服务器别名 IP (SNIP) 将移动到新的主节点。
使用 CLI 配置高可用性
步骤 1。使用 NetScaler CLI 在两个实例中以 INC Enabled 模式设置高可用性。
在主节点上,键入以下命令。
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。在两个节点上添加 VIP 和 SNIP。
在主节点上键入以下命令:
add ns ip <primary_client_alias_ip> <subnet> -type VIP
<!--NeedCopy-->
注意:
输入在 VM 实例中为客户端子网配置的别名 IP 地址和子网掩码。
add ns ip <primary_snip> <subnet> -type SNIP
<!--NeedCopy-->
primary_snip 指的是主实例面向服务器的接口的内部 IP 地址。
在辅助节点上键入以下命令:
add ns ip <primary_client_alias_ip> <subnet> -type VIP
<!--NeedCopy-->
注意:
输入在主 VM 实例上为客户端子网配置的别名 IP 地址和子网掩码。
add ns ip <secondary_snip> <subnet> -type SNIP
<!--NeedCopy-->
此 secondary_snip 指的是辅助实例面向服务器接口的内部 IP 地址。
注意:
输入为 VM 实例中的服务器子网配置的 IP 地址和子网掩码。
步骤 3。在主节点上添加一个虚拟服务器。
键入以下命令:
add <server_type> vserver <vserver_name> <protocol> <primary_client_alias_ip> <port>
<!--NeedCopy-->
步骤 4。在主节点上添加一个服务或服务组。
键入以下命令:
add service <service_name> <service_ip_address> <protocol> <port>
<!--NeedCopy-->
步骤 5。将服务或服务组绑定到主节点上的负载平衡虚拟服务器。
键入以下命令:
bind <server_type> vserver <vserver_name> <service_name>
<!--NeedCopy-->
注意:
要保存配置,请键入命令
save config。否则,重新启动实例后,配置将丢失。