簡介
本檔案介紹如何為執行eXR版本Cisco IOS® XR軟體的路由器進行升級而建立Golden ISO(GISO)。
必要條件
需求
思科建議您瞭解以下主題:
- Cisco IOS XR軟體
- Cisco IOS XR軟體安裝和升級程式
- Linux基本命令和命令列導航
採用元件
本文檔不限於特定硬體版本,適用於運行IOS XR 64位的所有路由器。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
相關產品
本檔案也適用於以下硬體版本:
- Cisco 9000系列路由器
- Cisco 8000系列路由器
- Cisco NCS 5700系列路由器
- Cisco NCS 5500系列路由器
- NCS 540和560路由器
適用於XR升級的Golden ISO
通常,Cisco會將IOS-XR軟體發佈為迷你/基本ISO,其中包含指定平台的強制IOS-XR套件、一組可選套件,用於以軟體維護升級(SMU)的形式針對任何錯誤修正執行額外的功能和軟體補丁。可選包裝和SMU採用RPM包裝格式。
Golden ISO工具建立一個ISO,其中包含微型/基本ISO的全部內容,以及使用者選擇的可選軟體包和SMU。一旦建立了Golden ISO,它就可以用於iPXE引導或用於SU(系統升級),從當前運行的版本升級到新版本的IOS-XR。
注意:Mini/base ISO對於任何金牌ISO建立都是強制性的
gisobuild Python工具
此工具可在Linux主機上原生運行。或者,該工具也可以在已啟用Docker的Linux系統上運行,並且能夠從Docker Hub提取已發佈的「cisco-xr-gisobuild」映像,例如,此示例建議在Debian 11.8中運行
此工具具有下一個執行檔要求:
- python3 >= 3.6
- rpm >= 4.14
- cpio >= 2.10
- gzip >= 1.9
- createrepo_c
- 檔案
- isoinfo
- mkisofs
- mksquashfs
- openssl
- unsquashfs
- 7z(可選 — 但功能可以減少,而無需)
- iso讀取(可選 — 但功能可以減少,而無需)
- zip(可選 — 但功能可以縮減而無需)
- unzip(可選 — 但功能可以減少,無需壓縮)
注意:在本機Linux系統上,並未滿足所有依賴項,可通過運行下一個命令(可能通過sudo)在受支援的分發項上安裝工具依賴項:./setup/prep_dependency.sh
它還需要下一個Python(>= 3.6)模組:
- 資料類
- 預設XML
- distitils
- 包裝
- rpm
- yaml
要在Linux主機上本機運行,已測試了下一個發行版,特別是針對此場景Debian。
- Alma Linux 8
- 費多拉34
- 德比安11.2
準備
必須首先確認需要哪些可選軟體包及其原因。在安裝過程中,安裝不必要或過多的軟體包可能會導致磁碟空間利用問題和故障。在建立GISO之前,確認每個平台的先決條件和磁碟空間要求。
要下載必要的軟體,請查閱官方軟體下載網站:Cisco Software Download
指令碼可以幫助我們統一各種檔案,例如iso、網橋修復、SMU等。
需要將gisobuild.py指令碼複製到伺服器上的特定位置。指令碼位於gisobuild Git Site
GISO建立
以下是可用於此指令碼用法的引數的摘要:
usage: gisobuild.py [-h] [--iso ISO] [--repo REPO [REPO ...]]
[--bridging-fixes BRIDGE_FIXES [BRIDGE_FIXES ...]]
[--xrconfig XRCONFIG] [--ztp-ini ZTP_INI] [--label LABEL]
[--no-label] [--out-directory OUT_DIRECTORY]
[--create-checksum] [--yamlfile CLI_YAML] [--clean]
[--pkglist PKGLIST [PKGLIST ...]] [--script SCRIPT]
[--docker] [--x86-only] [--migration] [--optimize]
[--full-iso]
[--remove-packages REMOVE_PACKAGES [REMOVE_PACKAGES ...]]
[--skip-usb-image] [--copy-dir COPY_DIRECTORY]
[--clear-bridging-fixes] [--verbose-dep-check] [--debug]
[--isoinfo ISOINFO] [--image-script IMAGE_SCRIPT]
[--version]
在本示例中,建立了ASR 9901的GISO,ISIS和OSPF軟體包用於簡潔,7.9.21版的mini和配置檔案也新增到GISO中。
如下面的命令所示,packages 、 mini和config檔案被複製到/src目錄中,以建立已清除的指令碼運行命令。
root@debian:/gisobuild-master/src# ls
asr9k-9000v-nV-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-mcast-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-bng-ipoe-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-mgbl-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-bng-pppoe-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-mini-x64-7.9.21.iso
asr9k-bng-supp-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-mpls-te-rsvp-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-bng-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-mpls-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-optic-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-eigrp-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-ospf-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-isis-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-services-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-li-x64-1.0.0.0-r7921.x86_64.rpm
asr9k-m2m-x64-1.0.0.0-r7921.x86_64.rpm
lnt
lntmod
output_gisobuild
utils
validate
wrappers
exrmod
running-config-ASR9K
gisobuild.py
--------GISO CREATION--------
root@debian:/gisobuild-master/src# ./gisobuild.py --iso asr9k-mini-x64-7.9.21.iso --pkglist asr9k-isis-x64-1.0.0.0-r7921.x86_64.rpm asr9k-ospf-x64-1.0.0.0-r7921.x86_64.rpm --xrconfig running-config-ASR9K --label firstGiso --skip-usb-image --clean
System requirements check [PASS]
Platform: asr9k Version: 7.9.21
XR-Config file (/gisobuild-master/src/running-config-ASR9K) will be encapsulated in Golden ISO.
Warning: No RPMS or Optional Matching 7.9.21 packages found in repository
Building Golden ISO...
Summary .....
XR Config file:
router.cfg
...Golden ISO creation SUCCESS.
Golden ISO Image Location: /gisobuild-master/src/output_gisobuild/asr9k-golden-x64-7.9.21-firstGiso.iso
Creating USB Boot zip...
Skipping USB Boot Zip creation: Not supported for platform: asr9k
USB BOOT ZIP NEEDED?: Contact asr9k team to add support.
root@debian:/gisobuild-master/src#
以下是用於此GISO建立的引數的簡要說明:
-iso ISO |
Mini.iso/Full.iso檔案的路徑 |
—xrconfig XRCONFIG |
XR配置檔案的路徑 |
—label標籤,-l標籤 |
金牌ISO標籤 |
-clean |
在繼續操作之前刪除輸出目錄 |
—skip-image |
不構建USB映像(ASR9K平台不支援) |
驗證
正如安裝日誌所述,我們可以通過檢視位置來確認我們的GISO建立,例如本示例。Golden ISO映像位置: /gisobuild-master/src/output_gisobuild/asr9k-golden-x64-7.9.21-firstGiso.iso
根據下一個映像,initrd.img
是1.7GB,其中包含我們隨附的安裝軟體包。
德比GUI中的GISO