多节点高可用性下的软件升级
概述
通过按顺序升级每台设备,可以在 MNHA 配置中部署的 SRX 系列防火墙进行升级,同时将中断降至最低。根据您的设备架构,使用以下 CLI 命令之一启动 Junos 升级 - request system software add 或 request vmhost software add 。
| 从 Junos OS 版本 | 到 Junos OS 版本 | 使用软件升级方法 |
|---|---|---|
| 20.4 | 20.4 之后的任何发布 | 不 |
| 22.3 | Junos OS 的下一个版本 | 是的 |
-
22.4R1 及更高版本与早期 Junos OS 版本不兼容,无法在常规升级期间同步会话。在这种情况下,请使用 独立节点升级过程。
-
从 22.3 升级到下一版本可能会导致短暂的流量中断。
-
在从 21.4R1 开始的升级过程中,您可能会看到
Peer Hardware Incompatible: SPU SLOT MISMATCH。 -
在 23.4R2 之前版本的临时升级阶段,NAT 会话不会同步。
-
始终将两个节点升级到相同的 Junos OS 版本。
有关 Junos OS 版本的升级和降级支持的信息,请参阅发行说明中的 Junos OS 版本和延长生命周期终止版本的升级和降级支持政策 。
将多节点高可用性的 SRX 系列防火墙从早期的 Junos OS 版本升级到 Junos OS 22.4R1 或更高版本时,可以使用 独立节点升级过程。Junos OS 22.4R1 及更高版本与早期 Junos OS 版本不兼容,无法在常规升级期间同步会话。
准备工作
在采用 MNHA) 配置对 SRX 系列设备执行升级之前,建议以受控方式将流量重定向远离设备。这可以使用以下方法之一来完成:
-
手动故障切换 — 触发手动故障切换,将流量转移到对等设备。
-
软件升级模式 — 使用以下命令临时配置设备:
user@host# set chassis high-availability software-upgrade
此命令引入设备故障,故障代码为 SU(软件升级)。因此,服务冗余组 (SRG) 1 及更高版本将在要升级的设备上转换为不合格状态(而不是活动或备份)。这会导致关联的流量自动故障转移到其他 MNHA 集群成员。
注意:如果您的 MNHA 集群仅配置了 SRG0 并包含该install-on-failure-route选项,那么您仍然可以使用该set chassis high-availability software-upgrade配置将流量正常移出设备,从而重定向流量。
软件升级
准备清单
规划软件升级时,请考虑以下最佳实践:
- 确保两个节点都处于联机状态并运行相同的 Junos OS 版本。使用 show version 命令检查设备上当前的 Junos OS 软件版本。
- 验证存储可用性:
show system storage - 检查硬件状态:
show chassis fpc pic-statusshow chassis alarms
- 确保没有未提交的更改。
- 备份配置和许可证密钥。
- 在两台设备上将 Junos OS 映像下载到 /var/tmp。
- 确保您的高可用性设置运行正常,并且机箱间链路 (ICL) 已启动。
show chassis high-availability information - 使用 中的清单准备 SRX 系列防火墙以进行升级。
有关准备设备升级的详细信息,请参阅准备软件安装和升级 (Junos OS)。
下载软件
从两个 SRX 系列防火墙上的 瞻博网络支持 页面下载 Junos OS 映像,并将其保存在 /var/tmp 位置。例:
user@host> request system software add /var/tmp/junos-install-vsrx3-x86-64-22.3R1.3.tgz no-copy
升级过程
按照此过程中的步骤升级在多节点高可用性 (MNHA) 设置中配置的 SRX 系列设备。在此示例中,集群由两台设备组成:srx-01(当前处于活动状态)和 srx-02(当前处于备份状态)。升级过程从备份节点 (SRX-02) 开始,然后是活动节点 (SRX-01),以确保将服务中断降至最低。
确保您的多节点高可用性设置运行正常,并且机箱间链路 (ICL) 已启动。
在 SRX-01 设备上
user@srx-01> show chassis high-availability informationNode failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: ONLINE Local-id: 1 Local-IP: 10.22.0.1 HA Peer Information: Peer Id: 2 IP address: 10.22.0.2 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 2 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: ACTIVE Activeness Priority: 200 Preemption: ENABLED Process Packet In Backup State: NO Control Plane State: READY System Integrity Check: N/A Failure Events: NONE Peer Information: Peer Id: 2 Status : BACKUP Health Status: HEALTHY Failover Readiness: READY在 SRX-02 设备上
user@srx-02> show chassis high-availability informationNode failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: ONLINE Local-id: 2 Local-IP: 10.22.0.2 HA Peer Information: Peer Id: 1 IP address: 10.22.0.1 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 1 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: BACKUP Activeness Priority: 1 Preemption: DISABLED Process Packet In Backup State: NO Control Plane State: READY System Integrity Check: COMPLETE Failure Events: NONE Peer Information: Peer Id: 1 Status : ACTIVE Health Status: HEALTHY Failover Readiness: N/A- 在备份节点 (SRX-02) 上启动软件升级过程并提交配置
user@srx-02# set chassis high-availability software-upgrade
此命令触发 SRG0 的本地故障切换,并将 SRG1(如果存在)标记为不合格,从而允许对等节点承担或保留活动角色
- 验证多节点高可用性的状态。输出显示节点状态:脱机 [ SU ],表示节点已准备好进行软件升级。您可以看到,SRG1 的状态已更改为 INELIGIBLE。
user@srx-02> show chassis high-availability information Node failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: OFFLINE [ SU ] Local-id: 1 Local-IP: 10.22.0.1 HA Peer Information: Peer Id: 2 IP address: 10.22.0.2 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 2 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: INELIGIBLE Activeness Priority: 200 Preemption: ENABLED Process Packet In Backup State: NO Control Plane State: N/A System Integrity Check: IN PROGRESS Failure Events: NONE Peer Information: Peer Id: 2 Status : ACTIVE Health Status: HEALTHY Failover Readiness: N/A 确认其他设备 (SRX-01) 处于活动状态且运行正常。
user@srx-01> show chassis high-availability informationNode failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: ONLINE Local-id: 2 Local-IP: 10.22.0.2 HA Peer Information: Peer Id: 1 IP address: 10.22.0.1 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 1 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: ACTIVE Activeness Priority: 1 Preemption: DISABLED Process Packet In Backup State: NO Control Plane State: READY System Integrity Check: N/A Failure Events: NONE Peer Information: Peer Id: 1 Status : INELIGIBLE Health Status: UNHEALTHY Failover Readiness: NOT READY命令输出显示 SRG1 的状态为 ACTIVE。
请注意,在
Peer InformationSRG1 的部分下,状态为INELIGIBLE,表示另一个节点处于不合格状态。- 在 SRX-02 设备上安装 Junos OS 软件。
user@srx-02> request system software add /var/tmp/junos-install-vsrx3-x86-64-22.3R1.3.tgz no-copy
- 安装成功后,
request system reboot使用命令重新启动设备。 - 重新启动后检查 Junos OS 版本。
user@srx-02> show versionHostname: srx-02 Model: vSRX Junos: 22.3R1.3输出确认设备已升级到正确的 Junos OS 版本。
- 检查设备上多节点高可用性的状态。
user@srx-02> show chassis high-availability informationNode failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: OFFLINE [ SU ] Local-id: 1 Local-IP: 10.22.0.1 HA Peer Information: Peer Id: 2 IP address: 10.22.0.2 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 2 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: INELIGIBLE Activeness Priority: 200 Preemption: ENABLED Process Packet In Backup State: NO Control Plane State: N/A System Integrity Check: COMPLETE Failure Events: NONE Peer Information: Peer Id: 2 Status : ACTIVE Health Status: HEALTHY Failover Readiness: N/A输出继续将节点状态
OFFLINE [ SU ]显示为 ,SRG1 状态显示为INELIGIBLE。 - 移除
software-upgrade语句并提交配置。user@srx-02# delete chassis high-availability software-upgrade
移除该
software-upgrade语句时,将清除节点故障切换状态和任何已安装的路由。在移除此语句之前,节点将保持脱机状态,并且所有 SRG 都处于“不合格”状态。只要对等方保持运行状况,这就可以有效地隔离节点在升级期间处理流量。 -
再次检查多节点高可用性状态,确认设备处于联机状态,整体状态正常运行。
user@srx02> show chassis high-availability information Node failure codes: HW Hardware monitoring LB Loopback monitoring MB Mbuf monitoring SP SPU monitoring CS Cold Sync monitoring SU Software Upgrade Node Status: ONLINE Local-id: 1 Local-IP: 10.22.0.1 HA Peer Information: Peer Id: 2 IP address: 10.22.0.2 Interface: ge-0/0/2.0 Routing Instance: default Encrypted: YES Conn State: UP Cold Sync Status: COMPLETE Services Redundancy Group: 0 Current State: ONLINE Peer Information: Peer Id: 2 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: BACKUP Activeness Priority: 200 Preemption: ENABLED Process Packet In Backup State: NO Control Plane State: READY System Integrity Check: IN PROGRESS Failure Events: NONE Peer Information: Peer Id: 2 Status : ACTIVE Health Status: HEALTHY Failover Readiness: N/A输出
Node Status: ONLINE显示 和 SRG1 状态为BACKUP,表示节点已重新联机,并且在备份角色下正常运行。 -
检查接口、路由协议、播发的路由等,以确认您的设置运行正常。
现在,您可以使用相同的过程继续升级另一台设备 (SRX-01)。
(选答)如果遇到任何问题而无法完成升级,可以回滚设备上的软件,然后重新启动系统。request system software rollback使用命令恢复以前安装的软件版本。
使用 install-on-failure-route 升级软件
对于仅使用 SRG0(不支持 A/B 状态)的设置,我们建议配置 install-on-failure-route。可以在路由策略中引用此路由,以便在软件升级方案或节点故障期间通告不太受欢迎的路径。在此方法中,您可以通过更改路由来转移流量。在这里,流量仍可通过节点,并且接口保持开启状态。
-
为升级期间用于分流流量的路由创建专用的自定义虚拟路由器。
set routing-instances MNHA-signal-routes instance-type virtual-router
- 为 SRG0 配置
install-on-failure-route语句。在这里,您已将 IP 地址为 10.39.1.3 的路由配置为节点发生故障时要安装的路由。set routing-instances MNHA-signal-routes instance-type virtual-router set chassis high-availability services-redundancy-group 0 install-on-failure-route 10.39.1.3 routing-instance MNHA-signal-routes set chassis high-availability services-redundancy-group 1 active-signal-route 10.39.1.1 routing-instance MNHA-signal-routes set chassis high-availability services-redundancy-group 1 backup-signal-route 10.39.1.2 routing-instance MNHA-signal-routes
当节点发生故障时,路由表将安装语句中提到的路由。
- 根据路由的存在情况配置匹配的路由策略并定义策略条件。此处包括路由 10.39.1.3 作为 的路由匹配条件
if-route-exists。set policy-options condition active_route_exists if-route-exists address-family inet 10.39.1.1/32 set policy-options condition active_route_exists if-route-exists address-family inet table MNHA-signal-routes.inet.0 set policy-options condition backup_route_exists if-route-exists address-family inet 10.39.1.2/32 set policy-options condition backup_route_exists if-route-exists address-family inet table MNHA-signal-routes.inet.0 set policy-options condition failure_route_exists if-route-exists address-family inet 10.39.1.3/32 set policy-options condition failure_route_exists if-route-exists address-family inet table MNHA-signal-routes.inet.0
创建策略语句以将条件引用为匹配术语之一。
set policy-options policy-statement mnha-route-policy term 4 from protocol static set policy-options policy-statement mnha-route-policy term 4 from protocol direct set policy-options policy-statement mnha-route-policy term 4 from condition failure_route_exists set policy-options policy-statement mnha-route-policy term 4 then metric 100 set policy-options policy-statement mnha-route-policy term 4 then accept
- 如前面的步骤(软件升级)中所述启动软件升级。
Deprecated 方法(故障时关机接口)
从 Junos OS 24.3R1 版开始, shutdown-on-failure 该功能将被弃用(而不是立即删除),以提供向后兼容性,并有机会使您的配置符合新配置。作为此更改的一部分,已弃用 [set chassis high-availability services-redundancy-group 0 shutdown-on-failure interface-name] 配置语句。
以前,必须通过关闭接口来手动转移流量。现在,您可以使用 software-upgrade 命令使节点在升级期间保持脱机状态,并且所有 SRG 都处于不合格状态。这有效地将节点与处理流量隔离开来。
如果您使用的是 Junos OS 22.4 或更低版本,我们建议您在升级期间使用旧版方法分流流量。