在亚马逊云上升级 NetScaler VPX 实例
您可以升级在 AWS 上运行的 NetScaler VPX 的 EC2 实例类型、吞吐量、软件版本和系统软件。对于某些类型的升级,Citrix 建议使用高可用性配置方法以最大程度地减少停机时间。
注意:
- 适用于 NetScaler VPX AMI(包括实用程序许可证和客户许可证)的 NetScaler 软件版本 10.1.e-124.1308.e 或更高版本不支持 M1 和 M2 实例系列。
- 由于 VPX 实例支持的更改,不支持从 10.1.e-124 或更高版本降级到 10.1.123.x 或更早版本。
- 大多数升级不需要启动新的 AMI,并且可以在当前的 NetScaler AMI 实例上完成升级。如果您确实要升级到新的 NetScaler AMI 实例,请使用高可用性配置方法。
更改亚马逊云上 NetScaler VPX 实例的 EC2 实例类型
如果您的 NetScaler VPX 实例运行的是 10.1.e-124.1308.e 或更高版本,您可以按如下方式从 AWS 控制台更改 EC2 实例类型:
- 停止 VPX 实例。
- 从 AWS 控制台更改 EC2 实例类型。
- 启动实例。
您还可以使用上述过程更改早于 10.1.e-124.1308.e 版本的 EC2 实例类型,除非您想将实例类型更改为 M3。在这种情况下,您必须首先按照标准 NetScaler 升级过程,将 NetScaler 软件升级到 10.1.e-124 或更高版本,然后按照上述步骤操作。
升级 AWS 上 NetScaler VPX 实例的吞吐量或软件版本
要升级软件版本(例如,从 Standard 版升级到 Premium 版)或吞吐量(例如,从 200 Mbps 升级到 1000 Mbps),方法取决于实例的许可证。
使用客户许可证(自带许可证)
如果您使用的是客户许可证,可以从 Citrix® 网站购买并下载新许可证,然后将许可证安装到 VPX 实例上。有关从 Citrix 网站下载和安装许可证的更多信息,请参阅 VPX 许可指南。
使用实用程序许可证(按小时计费的实用程序许可证)
AWS 不支持对基于费用的实例进行直接升级。要升级基于费用的 NetScaler VPX 实例的软件版本或吞吐量,请启动具有所需许可证和容量的新 AMI,并将旧实例配置迁移到新实例。这可以通过使用 NetScaler 高可用性配置来实现,如本页的 [Upgrade to a new NetScaler AMI instance by using a NetScaler high availability configuration] (#upgrade-to-a-new-citrix-adc-ami-instance-by-using-a-citrix-adc-high-availability-configuration) 小节中所述。
升级 AWS 上的 NetScaler VPX 实例的系统软件
如果您需要升级运行 10.1.e-124.1308.e 或更高版本的 VPX 实例,请按照 升级和降级 NetScaler 设备 中的标准 NetScaler 升级过程进行操作。
如果您需要将运行早于 10.1.e-124.1308.e 版本的 VPX 实例升级到 10.1.e-124.1308.e 或更高版本,请首先升级系统软件,然后按如下方式将实例类型更改为 M3:
- 停止 VPX 实例。
- 从 AWS 控制台更改 EC2 实例类型。
- 启动实例。
通过使用 NetScaler 高可用性配置升级到新的 NetScaler AMI 实例
要使用高可用性方法升级到新的 NetScaler AMI 实例,请执行以下任务:
- 从 AWS Marketplace 创建具有所需 EC2 实例类型、软件版本、吞吐量或软件版本的新实例。
- 在旧实例(待升级)与新实例之间配置高可用性。在旧实例和新实例之间成功配置高可用性后,旧实例上的所有配置信息都将自动同步到新实例中。
- 强制将 HA 故障转移从旧实例转移到新实例。结果,新实例成为主实例并开始接收流量。
- 停止、重新配置或从 AWS 中删除旧实例。
先决条件和注意事项
- 确保您了解两个 NetScaler VPX 实例在 AWS 上如何实现高可用性。有关两个 NetScaler VPX 实例在 AWS 上高可用性配置的更多信息,请参阅 在 AWS 上部署高可用性对。
- 您必须在新实例与旧实例相同的可用区中创建新实例,并使其具有完全相同的安全组和子网。
- 高可用性设置需要与用户 AWS Identity and Access Management (IAM) 账户关联的访问密钥和秘密密钥,适用于这两个实例。如果在创建 VPX 实例时未使用正确的密钥信息,则 HA 设置将失败。有关为 VPX 实例创建 IAM 账户的更多信息,请参阅 先决条件。
- 您必须使用 EC2 控制台创建新实例。您不能使用 AWS 一键启动,因为它不接受访问密钥和秘密密钥作为输入。
- 新实例必须只有一个 ENI 接口。
要使用高可用性配置升级 NetScaler VPX 实例,请按照以下步骤操作:
-
在旧实例和新实例之间配置高可用性。要在两个 NetScaler VPX 实例之间配置高可用性,请在每个实例的命令提示符下键入:
add ha node <nodeID> <IPaddress of the node to be added>save config
示例:
在旧实例的命令提示符下,键入:
add ha node 30 192.0.2.30 Done <!--NeedCopy-->在新实例的命令提示符下,键入:
add ha node 10 192.0.2.10 Done <!--NeedCopy-->请注意以下事项:
- 在 HA 设置中,旧实例是主节点,新实例是辅助节点。
- NSIP IP 地址不会从旧实例复制到新实例。因此,升级后,您的新实例将具有与之前实例不同的管理 IP 地址。
- HA 同步后,新实例的
nsroot帐户密码将设置为旧实例的帐户密码。
有关 AWS 上的两个 NetScaler VPX 实例之间高可用性配置的更多信息,请参阅 在 AWS 上部署高可用性对。
-
强制执行 HA 故障转移。要在高可用性配置中强制执行故障转移,请在任一实例的命令提示符下键入:
force HA failover <!--NeedCopy-->强制执行故障转移后,旧实例的 ENI 将迁移到新实例,流量将通过新实例(新的主节点)。旧实例(新的辅助节点)将重新启动。
如果出现以下警告消息,请键入 N 以中止操作:
[WARNING]:Force Failover may cause configuration loss, peer health not optimum. Reason(s): HA version mismatch HA heartbeats not seen on some interfaces Please confirm whether you want force-failover (Y/N)? <!--NeedCopy-->出现警告消息是因为两个 VPX 实例的系统软件不兼容 HA。因此,在强制故障转移期间,旧实例的配置无法自动同步到新实例。
此问题的解决方法如下:
-
在旧实例的 NetScaler shell 提示符下,键入以下命令以创建配置文件 (ns.conf) 的备份:
copy /nsconfig/ns.conf to /nsconfig/ns.conf.bkp -
从备份配置文件 (ns.conf.bkp) 中删除以下行:
set ns config -IPAddress <IP> -netmask <MASK>
例如,
set ns config -IPAddress 192.0.2.10 -netmask 255.255.255.0 -
将旧实例的备份配置文件 (ns.conf.bkp) 复制到新实例的 /nsconfig 目录。
-
在新实例的 NetScaler shell 提示符下,键入以下命令以在新实例上加载旧实例的配置文件 (ns.conf.bkp):
batch -f /nsconfig/ns.conf.bkp
-
在新实例上将配置保存下来。
save conifg
-
在任一节点的命令提示符下,键入以下命令以强制进行故障转移,然后键入 Y 以确认警告消息以确认强制故障转移操作:
force ha failover
示例:
> force ha failover WARNING]:Force Failover may cause configuration loss, peer health not optimum. Reason(s): HA version mismatch HA heartbeats not seen on some interfaces Please confirm whether you want force-failover (Y/N)? Y <!--NeedCopy--> -
-
移除 HA 配置,以便这两个实例不再处于 HA 配置中。首先从辅助节点移除 HA 配置,然后从主节点移除 HA 配置。
要移除两个 NetScaler VPX 实例之间的 HA 配置,请在每个实例的命令提示符下键入:
> remove ha node \<nodeID\> > save config <!--NeedCopy-->有关 AWS 上两个 VPX 实例之间高可用性配置的更多信息,请参阅在 AWS 上部署高可用性对。
示例:
在旧实例(新辅助节点)的命令提示符下,键入:
> remove ha node 30
Done
> save config
Done
<!--NeedCopy-->
在新实例(新主节点)的命令提示符下,键入:
> remove ha node 10
Done
> save config
Done
<!--NeedCopy-->