簡介
本檔案介紹升級Catalyst 9400交換器的方法。
必要條件
需求
本文件沒有特定需求。
採用元件
本文檔中的資訊基於C9400。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
本檔案介紹使用套件組合或安裝模式的Catalyst 9400交換器的升級程式。C9400高可用性設定支援ISSU。
建議版本
有關基於下載頁面的建議軟體版本,請參閱以下連結:
Catalyst 9000交換機的建議版本
軟體下載
要下載軟體,請訪問https://software.cisco.com/download/home並選擇您的產品。
升級的基本條件
·2至3小時的維護時間應足以升級到目標版本,或在出現任何問題時回滾到以前的版本。
·確保4GB或8GB USB驅動器包含當前和目標IOS版本的.bin檔案。USB驅動器應格式化為FAT32以複製IOS映像。
·驗證是否已為當前和目標IOS版本設定TFTP,並且可訪問以根據需要將這些版本下載到交換機。
·確認在發生任何問題時可以透過控制檯訪問裝置。
·確保快閃記憶體中至少有1GB到1.5GB的可用空間用於擴展新映象。如果空間不足,請刪除舊安裝檔案。
Rommon升級或引導載入程式升級
ROMMON(也稱為引導載入器)是在裝置通電或重置時運行的韌體。初始化處理器硬體並啟動作業系統軟體(Cisco IOS XE軟體映像)。ROMMON儲存在交換機的以下串列外圍介面(SPI)快閃記憶體裝置上:
可能需要進行ROMMON升級才能解決韌體缺陷或支援新功能,但並非每個版本都有新版本。
要瞭解適用於每個主要和維護版本的ROMMON或引導載入程式版本,請參閱這些連結。
適用於17. x.x的ROMMON和CPLD版本
適用於16. x.x的ROMMON和CPLD版本
您可以在升級軟體版本之前或之後升級ROMMON。如果新的ROMMON版本可用於要升級到的軟體版本,請按照以下步驟繼續:
附註:
-
Golden ROMMON升級僅適用於Cisco IOS XE Amsterdam 17.3.5及更高版本。
-
如果FPGA版本為17101705或更舊版本,則Golden ROMMON升級將失敗。要升級FPGA版本,請參閱升級複雜可程式設計邏輯裝置版本。
-
在進行Cisco StackWise虛擬設定的情況下,請升級活動和備用管理引擎模組。
-
如果設定高可用性,請升級活動和備用管理引擎模組。
升級ROMMON後,它將在下次重新載入時生效。如果在此之後返回舊版本,ROMMON不會降級。更新的ROMMON支援所有以前的版本。
CPLD升級
CPLD是指可程式化硬體的韌體。CPLD升級可能需要解決韌體缺陷或支援新功能,但每個版本中可能沒有新版本。CPLD版本升級過程必須在軟體映像升級後完成。
以下連結為Cisco Catalyst 9400系列管理引擎模組提供ROMMON和CPLD版本資訊。
適用於17. x.x的ROMMON和CPLD版本
適用於16. x.x的ROMMON和CPLD版本
升級軟體映像後,可以觸發CPLD版本升級。在CPLD升級期間,管理引擎模組會自動重新通電。這樣便完成了管理引擎模組的CPLD升級過程,但也會導致流量中斷。因此,不支援CPLD的自動升級。您必須手動執行CPLD升級。
升級CPLD版本:高可用性設定
升級CPLD版本:Cisco StackWise Virtual Setup
升級CPLD版本:單管理引擎模組設定
升級方法
本檔案介紹使用套件組合或安裝模式的Catalyst 9400交換器的升級程式。
安裝模式
Cisco Catalyst 9400交換器上的安裝模式升級是一種升級交換器軟體的方法,涉及使用個別的套裝軟體,而不是單一的整體式映像檔案。
在安裝模式下升級到任何新版本時,會使用「install」命令。
請按照概述的步驟在安裝模式下進行升級。
1. 清理
使用以下命令刪除所有非活動安裝:
Switch#install remove inactive
2. 複製新影像
使用以下方法之一,將新的.bin映像檔案傳輸到活動交換機的快閃記憶體中:
透過TFTP:
Switch#copy tftp://Location/directory/<file_name> flash:
透過USB:
Switch#copy usbflash0:<file_name> flash:
確認可用的檔案系統:
Switch#show file systems
3. 核查
將IOS傳輸到活動交換機後,檢查是否使用以下命令正確複製映像:
Switch#dir flash:
(可選)要驗證MD5校驗和,請使用命令:
Switch#verify /md5 flash:<file_name>
確保此校驗和與「軟體下載」頁面上提供的校驗和匹配。
4. 設定開機變數
使用以下命令將啟動變數設定為指向packages.conf檔案:
Switch#configure terminal
Switch(config)#no boot system
Switch(config)#boot system flash:packages.conf
Switch(config)#end
5. 自動啟動配置
透過執行以下操作將交換機配置為自動引導:
Switch#configure terminal
Switch(config)#no boot manual
Switch(config)#end
6. 儲存組態
使用下列專案儲存目前的組態:
Switch#write memory
使用指令確認開機設定:
Switch#show boot
7. 映像安裝
要安裝映像,請使用以下命令:
Switch#install add file flash:<file_name> activate commit
出現「This operation requires a reload the system(此操作需要重新載入系統)」提示時。是否要繼續?[y/n]」,以「y」回應以繼續。
8. 驗證升級是否成功
Switch#show version
Switch#show redundancy (in case of High Availability setup)
注意:在整個步驟中,請用您的IOS映像檔案的實際名稱替換。
套件組合模式
Cisco Catalyst 9400交換器上的套件組合模式升級是指升級交換器軟體的方法,其中整個軟體映像都捆綁到單一檔案中。此檔案包含所有必要的元件,例如作業系統、裝置驅動程式,以及交換器運作所需的其他基本軟體。升級涉及單個軟體映像檔案,通常具有.bin副檔名。這與可能涉及多個檔案和套裝軟體的其他方法(例如安裝模式)不同。
請依照概述的步驟在套件組合模式下進行升級。
1. 使用以下方法之一,將新映象(.bin檔案)傳輸到交換機中安裝的每個Supervisor模組的快閃記憶體(如果是dual sup或SVL)
· 透過TFTP:
Switch#copy tftp://Location/directory/<file_name> bootflash:
Switch#copy tftp://Location/directory/<file_name> stby-bootflash:
透過USB:
Switch#copy usbflash0:<file_name> bootflash:
Switch#copy usbflash0:<file_name> stby-bootflash:
2. 使用指令確認可用的檔案系統
Switch#show file systems
3. 將IOS複製到所有成員交換機後,驗證是否已使用
Switch#dir bootflash:
Switch#dir stby-bootflash:
4. (可選)使用命令檢驗MD5校驗和
Switch#verify /md5 bootflash:<file_name>
Switch#verify /md5 stby-bootflash:<file_name>
確保輸出與軟體下載頁面上提供的MD5校驗和值匹配。
5. 使用以下命令配置引導變數,使其指向新的映像檔案
Switch#configure terminal
Switch(config)#no boot system
Switch(config)#boot system bootflash:<file_name>.bin
Switch(config)#end
6. 儲存配置
Switch#write memory
7. 使用下列工具驗證開機設定
Switch#show boot
8. 重新載入交換機以應用新的IOS
Switch#reload
9. 驗證升級是否成功
Switch#show version
Switch#show redundancy (in case of High Availability setup)
注意:在整個步驟中,請用您的IOS映像檔案的實際名稱替換。
服務中軟體升級(ISSU)
服務中軟體升級是一種程式,可在網路繼續轉送封包時,將裝置上的映像升級為另一個映像。ISSU可協助網路管理員在執行軟體升級時避免網路中斷。在安裝模式下升級映像,其中每個軟體套件都單獨升級。
9400 Stackwise-Virtual和9400獨立機箱(帶雙管理引擎)均支援ISSU。
請使用以下連結確保當前軟體版本和目標軟體版本適用於ISSU升級:
相容性矩陣
注意:在16.9版本系列中,從16.9.x升級到16.9.5,在16.12版本系列中升級到16.12.2,都需要安裝軟體維護升級(SMU)軟體套件。從16.9.5和16.12.2升級到更高版本不需要安裝SMU軟體套件。
ISSU的先決條件
1. 檢查當前代碼版本
C9400#show version | include IOS XE
2. 檢查啟動模式
只有在StackWise Virtual中的兩台交換機都以安裝模式引導時,才支援ISSU。
3. 檢查快閃記憶體中是否有足夠的可用記憶體
C9400#dir flash: | include free
10527629312 bytes total (7523303424 bytes free)
C9400#dir stby-bootflash: | include free
11250098176 bytes total (8191942656 bytes free)
4. 檢查交換機是否處於SSO模式
C9400#show redundancy
Redundant System Information :
------------------------------
Available system uptime = 4 hours, 29 minutes
Switchovers system experienced = 0
Standby failures = 0
Last switchover reason = none
Hardware Mode = Duplex
Configured Redundancy Mode = sso
Operating Redundancy Mode = sso
Maintenance Mode = Disabled
Communications = Up
Current Processor Information :
-------------------------------
Active Location = slot 1
Current Software state = ACTIVE <-------
Uptime in current state = 4 hours, 29 minutes
Image Version = Cisco IOS Software [Fuji], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.9.1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2018 by Cisco Systems, Inc.
Compiled Tue 17-Jul-18 17:00 by mcpre
BOOT = flash:packages.conf;
CONFIG_FILE =
Configuration register = 0x102
Peer Processor Information :
----------------------------
Standby Location = slot 2
Current Software state = STANDBY HOT <-------
Uptime in current state = 4 hours, 25 minutes
Image Version = Cisco IOS Software [Fuji], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.9.1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2018 by Cisco Systems, Inc.
Compiled Tue 17-Jul-18 17:00 by mcpre
BOOT = flash:packages.conf;
CONFIG_FILE =
Configuration register = 0x102
5. 檢查是否啟用自動開機
C9400#show boot
BOOT variable = flash:packages.conf;
Configuration Register is 0x102
MANUAL_BOOT variable = no <-------
BAUD variable = 9600
ENABLE_BREAK variable = yes
BOOTMODE variable does not exist
IPXE_TIMEOUT variable does not exist
CONFIG_FILE variable =
Standby BOOT variable = flash:packages.conf;
Standby Configuration Register is 0x102
Standby MANUAL_BOOT variable = no <------
Standby BAUD variable = 9600
Standby ENABLE_BREAK variable = yes
Standby BOOTMODE variable does not exist
Standby IPXE_TIMEOUT variable does not exist
Standby CONFIG_FILE variable =
如果未啟用自動開機,可以如圖所示進行變更
C9400(config)#no boot manual
6. 檢查當前ISSU和安裝狀態
C9400#show issu state detail
--- Starting local lock acquisition on chassis 1 ---
Finished local lock acquisition on chassis 1
No ISSU operation is in progress <------- If anything else, abort ISSU before proceeding.
C9400#show install summary
[ Chassis 1 2 ] Installed Package(s) Information:
State (St): I - Inactive, U - Activated & Uncommitted,
C - Activated & Committed, D - Deactivated & Uncommitted
--------------------------------------------------------------------------------
Type St Filename/Version
--------------------------------------------------------------------------------
IMG C 16.9.1.0.70 <------- State should be Activated & Committed for current version alone. If not clear install state before proceeding.
--------------------------------------------------------------------------------
Auto abort timer: inactive
--------------------------------------------------------------------------------
升級步驟
請按照概述的步驟執行服務中軟體升級(ISSU)升級。
1. 清理
使用以下命令刪除所有非活動安裝:
Switch#install移除非使用中
2. 複製新影像
· 使用以下方法之一將新的.bin映像檔案傳輸到活動Supervisor的快閃記憶體中:
· 透過TFTP:
Switch#copy tftp://Location/directory/<file_name> flash:
· 透過USB:
Switch#copy usbflash0:<file_name> flash:
· 使用show file systems確認可用的檔案系統
3. 核查
將IOS傳輸到活動Supervisor的快閃記憶體後,檢查是否使用以下命令正確複製映像:
Switch#dir flash:
(可選)要驗證MD5校驗和,請使用命令:
Switch#verify /md5 flash:<File_name>
確保此校驗和與「軟體下載」頁面上提供的校驗和匹配。
4. 設定開機變數
使用以下命令將啟動變數設定為指向packages.conf檔案:
Switch#configure terminal
Switch(config)#no boot system
Switch(config)#boot system flash:packages.conf
Switch(config)#end
5. 自動啟動配置
透過執行以下操作將交換機配置為自動引導:
Switch#configure terminal
Switch(config)#no boot manual
Switch(config)#end
6. 儲存組態
使用下列專案儲存目前的組態:
Switch#write memory
使用指令確認開機設定:
Switch#show boot
7. 映像安裝
要安裝映像,請使用以下命令:
Switch#install add file flash:<file_name> activate issu commit
8. 驗證升級是否成功
Switch#show version
Switch#show redundancy
執行這裡提到的命令後,程序就會自動啟動和重新載入 SUP。在準備就緒,可以開始重新啟動之前,請勿運行命令。與正常升級程式不同,它不會在重新載入之前要求您確認。
運行此命令後,ISSU進程將提取檔案,重新載入備用sup,等待其返回SSO,然後故障切換重新載入活動sup。
注意:在整個步驟中,請用您的IOS映像檔案的實際名稱替換。
ISSU驗證步驟
ISSU完成後,
- 檢查兩台交換器是否均在新軟體上執行。
- 檢查show issu state detail輸出以清除並且不顯示任何進行中的ISSU。
- 檢查show install issu history輸出以確保成功執行ISSU操作(此命令僅在16.10.1版及更高版本中可用)。
從ISSU故障恢復的步驟
- 如果ISSU發生故障,則自動中止操作可以將系統恢復到其初始狀態(較舊的映像)。但是,如果這同樣失敗,則應為手動機箱恢復。
- 在手動恢復過程中,檢查活動映像和備用映像是否都運行較舊的映像(如果運行不運行,則恢復單個機箱)。
- 確保兩個機箱都運行舊映象之後,runinstall remove inactive將刪除所有未使用的映象包。
- 一旦兩個機箱都運行了舊軟體,請手動清除ISSU運行的所有內部狀態。(請參閱此處瞭解如何清除內部ISSU狀態)。
中止ISSU
在3步工作流程中,在啟用ISSU過程中,如果abort-timer過期,則系統可自動中止到較舊的映像。如果在中止過程中備用裝置未達到SSO,則需要手動中止。此外,如果由於任何原因,您要在介於兩者之間中止ISSU,則需要手動中止。
C9400#install abort issu
清除ISSU狀態
如果ISSU升級/降級/中止/自動中止不成功,則需要手動清除ISSU內部狀態。
**運行以下命令之前啟用內部服務
C9400#configure terminal
C9400(config)#service internal
C9400(config)#end
C9400#clear install state
clear_install_state: START Thu Jul 25 15:03:58 UTC 2024
This command will remove all the provisioned SMUs, and rollback points. Use this command with caution.
A reload is required for this process. Press y to continue [y/n]y
--- Starting clear_install_state ---
Performing clear_install_state on all members
[1] clear_install_state package(s) on chassis 1
[1] Finished clear_install_state on chassis 1
[2] clear_install_state package(s) on chassis 2
[2] Finished clear_install_state on chassis 2
Checking status of clear_install_state on [1 2]
clear_install_state: Passed on [1 2]
Finished clear_install_state
Install will reload the system now!