Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

示例:执行统一 ISSU

此示例说明如何执行统一不中断服务的软件升级 (ISSU)。

要求

此示例使用以下硬件和软件组件:

  • 具有双路由引擎的 MX480 路由器

  • Junos OS 13.3R6 版作为开始版本

  • Junos OS 14.1R4 版作为最终版本

开始之前

在执行统一 ISSU 之前,请确保您:

  • 通过使用 请求系统软件验证服务内升级命令, 执行兼容性检查,以确保设备上的软硬件组件以及设备上的配置支持统一 ISSU

  • 阅读 统一 ISSU 系统要求 一章,预测可能影响升级的任何特殊情况。

    • 验证您的平台是否支持统一 ISSU 功能。

    • 验证安装在平台中的现场可更换设备 (RSU) 是否支持统一 ISSU 功能,或者是否可以接受使用不支持统一 ISSU 的部分 RSU 执行升级的结果。

    • 验证在平台上配置的协议和功能是否支持统一 ISSU 功能,或者是否可以接受使用不支持统一 ISSU 的某些协议和功能执行升级的结果。

  • 请 https://www.juniper.net/support/ 从瞻博网络支持网站下载 软件包,并将 软件包放在本地服务器上。

    最佳实践:

    访问设备的“下载软件”网页时,记录 md5 校验和。将软件包下载到设备后,使用 file checksum md5 命令确认软件包未以任何方式修改。有关验证 md5 校验和的更多信息,请参阅 https://kb.juniper.net/InfoCenter/index?page=content&id=KB17665

    注意:

    从 Junos OS 16.1R1 版开始,同时从基于 FreeBSD 6.1 的 Junos OS 到基于 Junos OS 的升级版 FreeBSD 10.x 执行统一 ISSU 时,必须在远程主机或路由引擎上验证配置。远程主机或路由引擎必须运行具有升级版 FreeBSD 的 Junos OS。此外,从基于 FreeBSD 6.1 的 Junos OS 升级到基于 FreeBSD 10.x 的 Junos OS 时,只会保留少数选定目录和文件。请参阅 使用升级版 FreeBSD 升级 Junos OS请求系统软件进行评估(具有升级版 FreeBSD 的 Junos OS)

概述

此过程可用于升级已安装双路由引擎并支持统一 ISSU 的 M 系列、T 系列、MX 系列、EX 系列和 PTX 系列设备。

在此示例中,主机名、文件名和 FSU 是表示性的。在设备上执行此过程时,主机名、文件名和 FSU 不同。命令输出被截短,仅显示此过程中感兴趣的文本。

拓扑

图 1 显示了此示例中使用的拓扑。

图 1:统一 ISSU 示例拓扑 Unified ISSU Example Topology

配置

具体过程会有所不同,具体取决于是想在一个或两个路由引擎上安装新软件,还是要自动重新启动两个路由引擎,还是要手动重新启动其中一个路由引擎。

在所有情况下,都必须验证已安装双路由引擎,以及是否启用了平滑路由引擎切换 (GRES) 和不间断活动路由 (NSR)。我们建议您在升级之前备份设备软件。

要执行统一的 ISSU,请从以下列表中选择相应的任务:

验证双路由引擎并启用 GRES 和 NSR

程序

逐步过程

无论您使用的统一 ISSU 过程是什么变体,都需要启用 GRES 和 NSR。

要验证您的设备是否具有双路由引擎并启用 GRES 和 NSR:

  1. 登录您的设备。

  2. 使用 show chassis hardware 命令验证设备中是否已安装双路由引擎。

    命令输出包含列出路由引擎 0 和路由引擎 1 的行。

  3. 默认情况下,GRES 处于禁用状态;如果尚未这样做,请通过在 graceful-switchover 主路由引擎的层次结构级别包含语句 [edit chassis redundancy] 来启用 GRES。

  4. 默认情况下,NSR 处于禁用状态;如果尚未这样做,请通过在层次结构级别包含 nonstop-routing 语句 [edit routing-options] 来启用 NSR。

  5. 配置 NSR 时,还必须在[edit system]层次结构级别包含commit synchronize该语句,以便在两个路由引擎上同步配置更改。

  6. 验证配置并满意后,请使用 commit 命令提交更改。

    启用 GRES 并提交配置时,CLI 提示符将发生变化,以指示您正在使用的路由引擎。例如:

  7. 使用 exit 命令退出配置模式。

  8. 使用show task replication命令验证是否已在主路由引擎 (re0) 上配置 NSR。

    在输出中 Synchronization Status ,验证字段是否显示 Complete

  9. 使用show system switchover命令验证备份路由引擎 (re1) 上是否启用了 GRES。

    在输出中 Graceful switchover ,验证字段状态是否显示 On。有关命令的更多信息 show system switchover ,请参阅 显示系统切换

验证软件版本并备份设备软件

程序

逐步过程

统一的 ISSU 要求两个路由引擎在升级前运行同一版本的 Junos OS。作为升级期间出现问题的预防措施,最佳做法是将系统软件备份到设备硬盘。

要验证软件版本并备份设备软件:

  1. 使用 show version 命令验证是否已在两个路由引擎上安装并运行相同版本的 Junos OS。

  2. 使用 request system snapshot 路由引擎上的 each 命令将系统软件备份到设备硬盘。

    注意:

    根文件系统备份到 /altroot/config 备份到 /altconfig。发出 request system snapshot 命令后,设备闪存和硬盘相同。只能通过从可移动介质启动设备来返回软件的上一个版本。

调整计时器和更改功能特定配置

程序

逐步过程

如果您的设备上有以下任一功能特定的配置,请执行相应步骤。

要调整计时器并更改功能特定的配置:

  1. 在统一 ISSU 过程中,双向转发检测 (BFD) 会话会临时增加其检测和传输计时器。升级后,这些计时器会恢复为统一 ISSU 启动之前使用的值。

    如果设备上启用了 BFD,并且希望在统一 ISSU 期间禁用 BFD 计时器协商,请将语句no-issu-timer-negotiation [edit protocols bfd]包含在层次结构级别。

    注意:

    如果包括此语句,BFD 计时器将在统一 ISSU 期间保留其原始值,BFD 会话可能会在统一 ISSU 或路由引擎切换期间翻动,具体取决于检测间隔。

  2. 如果在 M 系列、MX 系列或 EX 9200 系列设备上启用了代理 ARP,请从[edit interfaces interface-name unit 0 family inet]层次结构级别中移除该unconditional-src-learn语句。

    默认情况下,不包括语句。此示例仅显示 ge-0/0/1 接口。

  3. 如果在 PTX 系列设备上启用了 LACP,请从[edit interfaces interface-name aggregated-ether-options]层次结构级别中移除语句lacp

  4. 如果 M 系列或 T 系列设备上启用了 ATM 点对点协议 (PPP),则将保持间隔设置为 10 秒或更长。

    PPP 需要三个保持验证失败,然后才能关闭会话。30 秒(10 秒 x 3)提供了一个安全限度来保持 PPP 会话,以防在统一 ISSU 操作期间发生任何流量丢失。

    此示例仅显示 at-0/0/1 接口。

  5. 如果 M 系列或 T 系列设备上启用了 ATM OAM,则将 OAM F5 环路信元周期设置为 20 秒或更长时间,以保持跨统一 ISSU 的 ATM 连接。

    oam-period 层次结构级别包括语句 [edit interfaces interface-name unit logical-unit-number] 并指定 20 秒。此示例仅显示 at-0/0/1 接口。

  6. 验证配置并满意后,请使用 commit 命令提交更改。

  7. 使用 exit 命令退出配置模式。

自动升级和重新启动两个路由引擎

程序

逐步过程

在此过程中,两个路由引擎都会自动重新启动。自动重新启动两个路由引擎是最常见的情况。其他部分介绍了此过程的变体。

表 1 显示了启动统一 ISSU 之前的路由引擎状态。

表 1:升级前的路由引擎状态

RE0

RE1

主要

备份

已安装的旧软件版本

已安装的旧软件版本

正在运行的旧软件版本

正在运行的旧软件版本

要自动升级和重新启动两个路由引擎:

  1. 使用 file copy ftp://username@hostname.net/filename /var/tmp/filename 命令将 Junos OS 软件包复制到设备。

    建议将软件包复制到 /var/tmp 目录,这是硬盘上的一个大文件系统。

    最佳实践:

    访问设备的“下载软件”网页时,记录 md5 校验和。将软件包下载到设备后,使用 file checksum md5 命令确认软件包未以任何方式修改。有关验证 md5 校验和的更多信息,请参阅 https://kb.juniper.net/InfoCenter/index?page=content&id=KB17665

  2. 在主路由引擎上,使用 request system software in-service-upgrade package-name reboot 命令开始升级。

    注意:

    在显示消息且会话断开连接之前, Connection closed 不要尝试运行任何其他命令。

    重新启动以前是主交换机的路由引擎时,您将从设备中退出。

  3. 等待几分钟,然后再次登录设备。

    表 2 显示了统一 ISSU 之后的路由引擎状态。

    表 2:升级和重新启动两个路由引擎后的路由引擎状态

    RE0

    RE1

    备份

    主要

    已安装新软件版本

    已安装新软件版本

    正在运行的新软件版本

    正在运行的新软件版本

    您登录到新的备份路由引擎 (re0)。

  4. 使用 show version 命令验证是否已升级两个路由引擎。

  5. 如果需要,您可以选择使用 show log messages 命令显示统一 ISSU 日志消息。

  6. 如果需要,您可以选择使用request chassis routing-engine master acquire命令来设置re0主路由引擎。

    表 3 显示了完成步骤 5 后的路由引擎状态。

    表 3:升级、重新启动和交换主角色后的路由引擎状态

    RE0

    RE1

    主要

    备份

    已安装新软件版本

    已安装新软件版本

    正在运行的新软件版本

    正在运行的新软件版本

  7. 执行 恢复功能特定配置的适用步骤。

  8. 如果您对测试结果感到满意,您可以选择使用 request system snapshot 路由引擎上的 each 命令将系统软件备份到设备的硬盘。

    注意:

    根文件系统备份到 /altroot/config 备份到 /altconfig。发出 request system snapshot 命令后,您无法轻松返回软件的上一个版本,因为设备闪存和硬盘相同。要返回到软件的上一个版本,必须从可移动介质启动设备。

恢复特定于功能的配置

程序

逐步过程

如果您的设备上有以下任一功能特定的配置,请执行相应步骤。

要恢复特定于功能的配置:

  1. 如果设备上启用了 BFD,并且之前禁用了 BFD 计时器协商,请 no-issu-timer-negotiation 删除层次结构级别的语句 [edit protocols bfd]

  2. 如果在 M 系列、MX 系列或 EX9200 设备上启用了代理 ARP,并且您之前删除了语句 unconditional-src-learn ,请再次包含该语句。

    此示例仅显示 ge-0/0/1 接口。

  3. 如果 PTX 系列设备上启用了 LACP,并且之前删除了该 lacp 语句,请再次包含该语句。

  4. 如果 M 系列或 T 系列设备上启用了 ATM PPP,并且您之前将保持间隔设置为 10 秒或更高,请还原原始值。

    此示例仅显示 at-0/0/1 接口,并显示设置为默认 3 秒的间隔。

  5. 如果 M 系列或 T 系列设备上启用了 ATM OAM,并且您之前将 OAM F5 环路信元周期设置为 20 秒或更长时间,则将配置更改回原始值。

    此示例仅显示 at-0/0/1 接口,并显示设置为 10 秒的时间段。

  6. 验证配置并满意后,请使用 commit 命令提交更改。

  7. 使用 exit 命令退出配置模式。

手动升级路由引擎和重新启动新的备份路由引擎

程序

逐步过程

在某些情况下,您可能只希望在一个路由引擎上安装新软件,并仅在主要路由引擎上重新启动,直到可以测试新软件之后。在重新启动新软件之前,路由引擎不会开始运行新软件。

优势在于,如果测试结果要求您降级软件,则可以切换路由引擎,在一个路由引擎上运行旧软件,然后在另一个路由引擎上安装旧软件。这不是典型场景。

要升级两个路由引擎并手动重新启动新的备份路由引擎:

  1. 执行 验证双路由引擎和启用 GRES 和 NSR 中的步骤。

  2. 执行 验证软件版本和备份设备软件的步骤。

  3. 执行 调整计时器和更改功能特定配置中的步骤。

  4. 使用 file copy ftp://username@hostname.net/filename /var/tmp/filename 命令将 Junos OS 软件包复制到设备。

    建议将软件包复制到 /var/tmp 目录,这是硬盘上的一个大文件系统。

    最佳实践:

    访问设备的“下载软件”网页时,记录 md5 校验和。将软件包下载到设备后,使用 file checksum md5 命令确认软件包未以任何方式修改。有关验证 md5 校验和的更多信息,请参阅 https://kb.juniper.net/InfoCenter/index?page=content&id=KB17665

    表 4 显示了启动统一 ISSU 之前的路由引擎状态。

    表 4:升级前的路由引擎状态和手动重新启动备份路由引擎

    RE0

    RE1

    主要

    备份

    已安装的旧软件版本

    已安装的旧软件版本

    正在运行的旧软件版本

    正在运行的旧软件版本

  5. 在主路由引擎上,使用命令开始升级, request system software in-service-upgrade package-name 而无需重新启动选项。

    表 5 显示了统一 ISSU 之后和手动重新启动备份路由引擎之前路由引擎的状态。

    表 5:升级后和手动重新启动备份路由引擎之前的路由引擎状态

    RE0

    RE1

    备份

    主要

    已安装新软件版本

    已安装新软件版本

    正在运行的旧软件版本

    正在运行的新软件版本

  6. 使用show version命令,验证新备份(旧主)路由引擎 (re0) 仍在运行之前的软件映像,以及新的主路由引擎 (re1) 是否正在运行新软件映像。

  7. 此时,如果您不想在新备份路由引擎 (re0) 上安装更新的软件版本,请 request system software delete package-name 发出命令。

    否则,要完成升级,请转至下一步。

  8. 通过发出request system reboot命令重新启动新的备份路由引擎 (re0)。

    如果您不在控制台端口上,则与设备会话断开连接。

    表 6 显示了统一 ISSU 之后、重新启动备份路由引擎后、交换主角色之前路由引擎的状态。

    表 6:升级、手动重启和交换主要角色之前的路由引擎状态

    RE0

    RE1

    备份

    主要

    已安装新软件版本

    已安装新软件版本

    正在运行的新软件版本

    正在运行的新软件版本

  9. 等待几分钟,然后再次登录设备。

    您登录到新的备份路由引擎 (re0)。

  10. 使用 show version 命令验证是否已升级两个路由引擎。

  11. 如果需要,您可以选择使用 show log messages 命令显示统一 ISSU 日志消息。

  12. 如果需要,您可以选择使用以下命令来设置 re0 主路由引擎 request chassis routing-engine master acquire

    表 7 显示了统一 ISSU 之后、重新启动备份路由引擎后以及交换主角色之后的路由引擎状态。

    表 7:升级、手动重新启动和交换主要角色后的路由引擎状态

    RE0

    RE1

    主要

    备份

    已安装新软件版本

    已安装新软件版本

    正在运行的新软件版本

    正在运行的新软件版本

  13. 执行 恢复功能特定配置的适用步骤。

  14. 如果您对测试结果感到满意,您可以选择使用 request system snapshot 路由引擎上的 each 命令将系统软件备份到设备的硬盘。

    注意:

    根文件系统备份到 /altroot/config 备份到 /altconfig。发出 request system snapshot 命令后,您无法轻松返回软件的上一个版本,因为设备闪存和硬盘相同。要返回到软件的上一个版本,必须从可移动介质启动设备。

仅升级和重新启动一个路由引擎

程序

逐步过程

在某些情况下,您可能只希望在一个路由引擎上安装新软件。

优势在于,如果测试结果要求您降级软件,则可以切换路由引擎,在一个路由引擎上运行旧软件,然后在另一个路由引擎上安装旧软件。这不是典型场景。

表 8 显示了启动统一 ISSU 之前的路由引擎状态。

表 8:升级和重新启动一个路由引擎之前的路由引擎状态

RE0

RE1

主要

备份

已安装的旧软件版本

已安装的旧软件版本

正在运行的旧软件版本

正在运行的旧软件版本

要仅升级和重新启动一个路由引擎,

  1. 执行 验证双路由引擎和启用 GRES 和 NSR 中的步骤。

  2. 执行 验证软件版本和备份设备软件的步骤。

  3. 执行 调整计时器和更改功能特定配置中的适用步骤。

  4. 使用 file copy ftp://username@hostname.net/filename /var/tmp/filename 命令将 Junos OS 软件包复制到设备。

    建议将软件包复制到 /var/tmp 目录,这是硬盘上的一个大文件系统。

    最佳实践:

    访问设备的“下载软件”网页时,记录 md5 校验和。将软件包下载到设备后,使用 file checksum md5 命令确认软件包未以任何方式修改。有关验证 md5 校验和的更多信息,请参阅 https://kb.juniper.net/InfoCenter/index?page=content&id=KB17665

  5. 在主路由引擎上,使用 request system software in-service-upgrade package-name no-old-master-upgrade 命令开始升级。

    表 9 显示了统一 ISSU 升级主路由引擎之后,但在升级备份路由引擎之前,路由引擎的状态。

    表 9:升级一个路由引擎后和升级另一个路由引擎之前的路由引擎状态

    RE0

    RE1

    备份

    主要

    已安装的旧软件版本

    已安装新软件版本

    正在运行的旧软件版本

    正在运行的新软件版本

  6. 使用show version命令,验证新备份(旧主)路由引擎 (re0) 仍在运行之前的软件映像,以及新的主路由引擎 (re1) 是否正在运行新软件映像。

  7. 如果测试已完成,并且想要在备份路由引擎上安装新软件,必须先在两个路由引擎上禁用 GRES 和 NSR,然后提交配置。

  8. 使用request system software add /var/tmp/jinstall64-14.1R4.10-domestic-signed.tgz命令在备份路由引擎 (re0) 上安装新软件。

  9. 使用request system reboot命令重新启动re0

    如果不在控制台端口上,则与路由器会话断开连接。

  10. 等待几分钟后,再次登录设备。

    您登录到备份路由引擎 (re0)。

  11. 使用 show version 命令验证两个路由引擎是否都运行新的软件映像。

  12. 如果需要,您可以选择使用 show log messages 命令显示统一 ISSU 日志消息。

  13. 如果需要,请使用request chassis routing-engine master acquire命令来设置re0主路由引擎。

    表 10 显示了统一 ISSU 之后、重新启动备份路由引擎后以及交换主要角色之后的路由引擎状态。

    表 10:升级、手动重新启动和交换主要角色后的路由引擎状态

    RE0

    RE1

    主要

    备份

    已安装新软件版本

    已安装新软件版本

    正在运行的新软件版本

    正在运行的新软件版本

  14. 通过执行验证双路由引擎和启用 GRES 和 NSR 中的步骤,再次 启用 GRES 和 NSR

  15. 执行 恢复功能特定配置的适用步骤。

  16. 如果您对测试结果感到满意,您可以选择使用 request system snapshot 路由引擎上的 each 命令将系统软件备份到设备的硬盘。

    注意:

    根文件系统备份到 /altroot/config 备份到 /altconfig。发出 request system snapshot 命令后,您无法轻松返回软件的上一个版本,因为设备闪存和硬盘相同。要返回到软件的上一个版本,必须从可移动介质启动设备。