在 Google 云端平台上部署 VPX 高可用性对
您可以在Google Cloud Platform 上将两个 NetScaler VPX 实例配置为高可用性 (HA) 主动-被动对。 当您将一个实例配置为主节点,将另一个实例配置为辅助节点时,主节点将接受连接并管理服务器。 辅助节点负责监视主节点。 如果因任何原因主节点无法接受连接,将由辅助节点接替其职责。 此外,主节点的客户端 IP 必须绑定到外部静态 IP 地址,以便流量在故障转移后恢复。
有关 HA 的更多信息,请参阅 高可用性。
这些节点必须位于同一个地理区域;但是,它们可以位于同一个区域,也可以位于不同的区域。 有关更多信息,请参阅 地区和区域。
每个 VPX 实例至少需要三个 IP 子网(Google VPC 网络):
- 管理子网
- 面向客户端的子网 (VIP)
- 面向后端的子网(SNIP、MIP 等)
Citrix 建议对标准 VPX 实例使用三个网络接口。
开始之前的准备工作
- 阅读 在 Google Cloud Platform上部署 NetScaler VPX 实例中提到的限制、硬件要求和注意事项。 此信息也适用于高可用性部署。
- 确保您的 GCP 服务帐户具有以下 IAM 权限:
REQUIRED_INSTANCE_IAM_PERMS = [
"compute.instances.addAccessConfig",
"compute.instances.deleteAccessConfig",
"compute.instances.get",
"compute.instances.list",
"compute.networks.useExternalIp",
"compute.subnetworks.useExternalIp",
"compute.zones.list",
]
<!--NeedCopy-->
如何在 Google 云端平台上部署 VPX 高可用性对
下面是高可用性部署步骤的摘要:
- 在同一地理地区创建三个 VPC 网络。 例如,Asia-east。
- 在同一地理区域创建两个 VPX 实例(主节点和辅助节点)。 它们可以位于同一个区域,也可以位于不同的区域。 例如,Asia east-1a 和 Asia east-Ib。
- 使用 NetScaler GUI 或 ADC CLI 命令在两个实例上配置 HA 设置。
注意:
Stayprimary
和Staysecondary
设置不支持在 Google Cloud Platform 上进行高可用性部署。
步骤 1. 步骤 1. 创建三个 VPC 网络
创建三个 VPC 网络,分别用于与管理 NIC、客户端 NIC 和服务器 NIC 关联。 要创建 VPC 网络,请登录 Google 控制台 > 网络 > VPC 网络 > 创建 VPC 网络。 填写必填字段,然后单击 Create(创建)。 有关更多信息,请参阅 在 Google Cloud Platform 上部署 NetScaler VPX 实例中的“创建 VPC 网络”部分。
步骤 2. 步骤 2. 创建两个 VPX 实例
按照 场景中给出的步骤创建两个 VPX 实例:部署多 NIC、多 IP 独立 VPX 实例。
重要:
为主节点的客户端 IP 地址 (VIP) 分配一个静态外部 IP 地址。 要创建静态外部 IP 地址,请在 Network interface(网络接口)> External IP(外部 IP)下单击“Create IP address”(创建 IP 地址)。
执行故障转移后,当旧主节点成为新辅助主节点时,静态外部 IP 地址将从旧主节点移动并连接到新的主节点。 有关更多信息,请参阅 Google 云文档预留静态外部 IP 地址。
配置 VPX 实例后,可以配置所需的 IP 地址。 有关更多信息,请参阅 配置 NetScaler 拥有的 IP 地址。
步骤 3. 步骤 3. 配置高可用性
在Google Cloud Platform 上创建实例后,您可以使用适用于 CLI 的 NetScaler GUI 来配置 HA。
使用 GUI 配置高可用性
第 1 步。 在两个实例中在 INC 模式下设置高可用性。
- 使用用户名
nsroot
和实例 ID 作为密码登录主节点。 - 在 GUI 中,转到 Configuration(配置)> System(系统)> High Availability(高可用性)。 单击添加。
- 在 Remote Node IP address(远程节点 IP 地址)字段中,添加辅助节点的管理 NIC 的专用 IP 地址。
- 选择“Turn on INC (Independent Network Configuration) mode on self-node”(在自助节点上打开 INC (Independent Network Configuration)模式)。
- 在 Remote System Login Credential(远程系统登录凭据)下,添加辅助节点的用户名和密码,然后单击 Create(创建)。
- 在辅助节点中重复这些步骤。
第 2 步。 添加 IP 集名称,然后单击 Insert(插入)。
- 在 GUI 中,导航到 System(系统)> Network(网络)> IP > Add(添加)。
- 添加“IP Address”(IP 地址)、“Netmask”(子网掩码)、“IP Type (virtual IP)”(IP 类型(虚拟 IP))所需的值,然后单击“Create”(创建)。
- 导航到 System(系统)> Network(网络)> IP Sets(IP 集)> Add(添加)。 添加 IP 集名称,然后单击 Insert(插入)。
- 在“IPv4s”(IPv4)页面中,选择虚拟 IP,然后单击“Insert”(插入)。 单击 Create(创建)以创建 IP 集。
注意:
可以将 IP 集绑定到主 VIP 或二级 VIP。 但是,如果将 IP 集绑定到主 VIP,请使用二级 VIP 添加到虚拟服务器,反之亦然。
第 3 步。 在主实例中添加虚拟服务器。
- 在 GUI 中,转到 Configuration(配置)> Traffic Management(流量管理)> Load Balancing(负载平衡)> Virtual Servers(虚拟服务器)> Add(添加)。
步骤 7. 保存配置。 现在,辅助节点具有与主节点相同的登录凭据。 执行强制故障转移后,辅助节点将成为新的主节点。 旧的主 VIP 的外部静态 IP 将移至新的辅助 VIP。
使用 CLI 配置高可用性
第 1 步。 使用 NetScaler CLI 在两个实例中在 INC 模式下设置高可用性。
在主节点上,键入以下命令。
add ha node 1 <sec_ip> -inc ENABLED in primary
<!--NeedCopy-->
在辅助节点上,键入以下命令。
add ha node 1 <prim_ip> -inc ENABLED in secondary
<!--NeedCopy-->
sec_ip
是指辅助节点的管理 NIC 的专用 IP 地址。
prim_ip
是指主节点的管理 NIC 的专用 IP 地址。
第 2 步。 在两个实例中添加 IP 集。
在两个实例上键入以下命令:
add ipset <ipsetname>
<!--NeedCopy-->
第 3 步。 将 IP 集绑定到两个实例上的 VIP 集。
在两个实例上键入以下命令:
add ns ip <secondary vip> <subnet> -type VIP
<!--NeedCopy-->
注意:
如果 VIP 已配置,请跳过此命令。
bind ipset <ipsetname> <secondary VIP>
<!--NeedCopy-->
注意: 可以将 IP 集绑定到主 VIP 或二级 VIP。 但是,如果将 IP 集绑定到主 VIP,请使用二级 VIP 添加到虚拟服务器,反之亦然。
第 4 步。 在主实例上添加一个虚拟服务器。
键入以下命令:
add <server_type> vserver <vserver_name> <protocol> <primary_vip> <port> -ipset <ipset_name>
<!--NeedCopy-->
注意:
要保存配置,请键入命令
save config
。 否则,在您重新启动实例后,配置将丢失。
用于在 GCP 上部署 VPX 高可用性对的 GDM 模板
可以使用 NetScaler Google Deployment Manager (GDM) 模板在 GCP 上部署 VPX 高可用性对。 有关详细信息,请参阅 NetScaler GDM 模板。