在服务软件升级支持为执行零停机升级提供高可用性

在高可用性设置中的定期升级过程中,在某些时候,两个节点运行不同的软件版本。这两个版本可以具有相同或不同的内部高可用性版本号。

如果两个版本都具有不同的高可用性版本号,则不支持现有数据连接的连接故障转移(即使已启用)。换句话说,所有现有数据连接都会丢失,从而导致停机。

若要解决此问题,在服务软件升级 (ISSU) 中可用于高可用性设置。ISSU 引入了迁移功能,该功能替换升级过程中的强制故障转移操作步骤。迁移功能负责遵守现有连接,并包括强制故障转移操作。

执行迁移操作后,新的主节点始终接收与现有连接相关的流量(请求和响应),但将它们引导到旧的主节点。旧的主节点处理数据流量,然后将其直接发送到目标。

增强型 ISSU 的工作原理

高可用性设置中的常规升级过程包括以下顺序步骤:

  1. 升级辅助节点。此步骤包括辅助节点的软件升级和重新启动节点。

  2. 强制故障转移。运行强制故障转移会使升级后的辅助节点变为主节点,主节点变为辅助节点。

  3. 升级新的辅助节点。此步骤包括新辅助节点的软件升级和重新启动节点。

在步骤 1 和步骤 3 之间的时间范围内,两个节点运行不同的软件版本。这两个版本可以具有相同或不同的内部高可用性版本。

如果两个版本具有不同的高可用性版本号,则不支持现有数据连接的连接故障转移(即使已启用)。换句话说,所有现有数据连接都会丢失,从而导致停机。

高可用性设置中的 ISSU 升级过程包括以下步骤:

  1. 升级辅助节点。此步骤包括辅助节点的软件升级和重新启动节点。

  2. ISSU 迁移操作。该步骤包括强制故障转移操作,并处理现有连接。执行迁移操作后,新的主节点始终接收与现有连接相关的流量(请求和响应),但通过 GRE 通道中配置的 SYNC VLAN 将其引导到旧的主节点。旧的主节点处理数据流量,然后将其直接发送到目标。当所有现有连接关闭时,ISSU 迁移操作将完成。

  3. 升级新的辅助节点。此步骤包括新辅助节点的软件升级和重新启动节点。

准备工作

在开始在高可用性设置中执行 ISSU 进程之前,请通过以下必备条件和限制:

  • 确保在高可用性设置的两个节点上配置了 SYNC VLAN。有关详细信息,请参阅将高可用性同步流量限制到 VLAN
  • Microsoft Azure 云中不支持 ISSU,因为 Microsoft Azure 不支持 GRE 通道。
  • 在 ISSU 期间,高可用性配置传播和同步不起作用。
  • IPv6 高可用性设置不支持 ISSU。
  • 以下会话不支持 ISSU:

    • 巨型帧
    • IPv6 会话
    • 大型 NAT (LSN)

配置步骤

ISSU 包括一项迁移功能,该功能可替换高可用性设置的常规升级过程中的强制故障转移操作。迁移功能负责遵守现有连接,并包括强制故障转移操作。

在 ISSU 的高可用性设置过程中,您在升级辅助节点后运行迁移操作。您可以从两个节点中的任何一个执行迁移操作。

CLI 程序

要使用 CLI 执行高可用性迁移操作,请执行以下操作:

在命令提示符处键入:

start ns migration

GUI 程序

要使用 GUI 执行高可用性迁移操作,请执行以下操作:

导航到系统,单击系统信息选项卡, 单击迁移选项卡,然后单击开始迁移

回滚 ISSU 进程

高可用性 (HA) 设置现在支持在服务中软件升级 (ISSU) 过程的回滚。如果您观察到 ISSU 迁移操作期间的 HA 设置不稳定,或者没有按预期执行最佳级别,则 ISSU 回滚功能非常有用。

ISSU 回滚适用于 ISSU 迁移操作正在进行中。如果 ISSU 迁移操作已完成,则 ISSU 回滚不起作用。换句话说,当 ISSU 迁移操作正在进行时,您必须运行 ISSU 回滚操作。

在触发 ISSU 回滚操作时,ISSU 回滚功能会根据 ISSU 迁移操作的状态有所不同:

  • ISSU 迁移操作期间尚未发生强制故障转移。ISSU 回滚停止 ISSU 迁移操作,并删除与两个节点中存储的 ISSU 迁移相关的所有内部数据。当前主节点保持为主节点,并继续处理与现有连接和新连接相关的数据流量。

  • 在 ISSU 迁移操作期间发生了强制故障转移。如果在 ISSU 迁移操作期间发生了高可用性故障转移,则新的主节点(如 N1)处理与新连接相关的流量。旧的主节点(新的辅助节点,如 N2)处理与旧连接(ISSU 迁移操作之前的现有连接)相关的流量。

    ISSU 回滚停止 ISSU 迁移操作并触发强制故障转移。新的主节点 (N2) 现在开始处理与新连接相关的流量。新的主节点 (N2) 还将继续处理与旧连接(ISSU 迁移操作之前建立的现有连接)相关的流量。换句话说,ISSU 迁移操作之前建立的现有连接不会丢失。

    新的辅助节点 (N1) 删除所有现有连接(ISSU 迁移操作期间创建的新连接),并且不处理任何流量。换句话说,ISSU 迁移操作的强制故障转移后建立的任何现有连接将永远丢失。

配置步骤

您可以使用 Citrix ADC CLI 或 GUI 执行 ISSU 回滚操作。

CLI 程序

要使用 CLI 执行 ISSU 回滚操作,请执行以下操作:

在命令提示符处键入:

stop ns migration

GUI 程序

若要使用 GUI 执行 ISSU 回滚操作:

导航到系统,单击系统信息选项卡, 单击迁移选项卡,然后单击停止迁移

在服务中软件升级过程的 SNMP 陷阱

用于高可用性设置的在服务软件升级 (ISSU) 过程在 ISSU 迁移操作的开始和结束时支持以下 SNMP 陷阱消息。

SNMP 陷阱 说明
migrationStarted ISSU 迁移操作开始时,将生成此 SNMP 陷阱并将其发送到配置的 SNMP 陷阱侦听器。
migrationComplete ISSU 迁移操作完成时,将生成此 SNMP 陷阱并将其发送到配置的 SNMP 陷阱侦听器。

主节点(在 ISSU 进程开始之前)始终生成这两个 SNMP 陷阱,并将它们发送到配置的 SNMP 陷阱侦听器。

没有与 ISSU SNMP 陷阱关联的 SNMP 警报。换句话说,无论是否存在 SNMP 警报,都会生成这些陷阱。您只需配置陷阱 SNMP 侦听器。

有关配置 SNMP 陷阱侦听器的更多信息,请参阅Citrix ADC 上的 SNMP 陷阱

在服务软件升级支持为执行零停机升级提供高可用性