Citrix ADC

In Service Software Upgrade 支持高可用性以执行零停机时间升级

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

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

要解决此问题,可以对高可用性设置使用 In Service Software Upgrade (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 执行高可用性迁移操作,请执行以下操作:

导航到 System(系统),单击 System Information(系统信息)选项卡, 单击 Migration(迁移)选项卡,然后单击 Start Migration(开始迁移)。

显示 ISSU 统计数据

可以在高可用性设置中查看 ISSU 统计信息,以监视当前的 ISSU 过程。ISSU 的统计信息显示以下信息:

  • ISSU 迁移操作的当前状态
  • ISSU 迁移操作的开始时间
  • ISSU 迁移操作的结束时间
  • ISSU 回滚操作的开始时间

可以使用 CLI 或 GUI 查看任一高可用性节点上的 ISSU 统计信息。

CLI 过程

要使用 CLI 显示 ISSU 统计信息,请执行以下操作:

在命令提示符下,键入:

show ns migration

GUI 过程

要使用 GUI 显示 ISSU 统计信息,请执行以下操作:

导航到 System(系统),单击 System Information(系统信息)选项卡, 单击 Migration(迁移)选项卡,然后单击 Show Migration(显示迁移)。

ISSU 过程的回滚

高可用性 (HA) 设置现在支持 In Service Software Upgrade (ISSU) 过程的回滚。如果您注意到 ISSU 迁移操作期间的高可用性设置不稳定或未按预期的最佳水平执行,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 回滚操作,请执行以下操作:

导航到 System(系统),单击 System Information(系统信息)选项卡, 单击 Migration(迁移)选项卡,然后单击 Stop Migration(停止迁移)。

In Service Software Upgrade 过程的 SNMP 陷阱

适用于高可用性设置的 In Service Software Upgrade (ISSU) 过程支持在 ISSU 迁移操作的开始和结束时使用以下 SNMP 陷阱消息。

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

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

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

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

In Service Software Upgrade 支持高可用性以执行零停机时间升级