Данная инструкция создана продвинутым Cisco гуру совместно с представителями вендора. Публикуется здесь по причине отсутствия желания разбираться с базами знаний и освоения MD файлов.
Эксклюзивно для админов, вдруг, надо. А оно — вот оно.
Подготовка к Upgrade
Скачиваем c cisco.com ISO образ новой верcии Cisco OS XR.
В нашем случае это файл asr9k-mini-x64-7.3.2.iso.
Скачиваем с cisco.com tar-файл с необходимыми pkg.
В нашем случае это файл ASR9K-x64-iosxr-px-k9-7.3.2.tar. Внутри файла находятся:
- asr9k-bng-supp-x64-1.0.0.0-r732.x86_64.rpm
- asr9k-bng-x64-1.0.0.0-r732.x86_64.rpm
- asr9k-eigrp-x64-1.0.0.0-r732.x86_64.rpm
- asr9k-isis-x64-1.1.0.0-r732.x86_64.rpm
- asr9k-k9sec-x64-2.2.0.0-r732.x86_64.rpm
- asr9k-li-x64-1.1.0.0-r732.x86_64.rpm
- asr9k-m2m-x64-2.0.0.0-r732.x86_64.rpm
- asr9k-mcast-x64-2.0.0.0-r732.x86_64.rpm
- asr9k-mgbl-x64-2.0.0.0-r732.x86_64.rpm
- asr9k-mpls-te-rsvp-x64-2.1.0.0-r732.x86_64.rpm
- asr9k-mpls-te-rsvp-x64-2.1.0.0-r732.x86_64.rpm
- asr9k-mpls-te-rsvp-x64-2.1.0.0-r732.x86_64.rpm
- asr9k-ospf-x64-2.0.0.0-r732.x86_64.rpm
- asr9k-services-x64-1.0.0.0-r732.x86_64.rpm
Распаковываем ASR9K-x64-iosxr-px-k9-7.3.2.tar.
Создаём новый tar архив с названием "iso_and_rpms_7_3_2.tar", в который помещаем скачанный ранее файл ISO и все распакованные файлы RPM.
Переходим в CLI
Создаем директорию в файловой системе маршрутизатора, который мы собрались обновлять. Это необязательно, TAR файл для обновления можно скопировать в корень harddisk:/.
mkdir harddisk:/ios_upgrade_7.3.2
Копируем ранее созданный TAR архив на маршрутизатор.
scp iso_and_rpms_7_3_2.tar admin@router-ip:harddisk:/ios_upgrade_7.3.2
Добавляем файл, с которого будем пытаться обновиться на маршрутизаторе (указываем наш TAR архив).
install add source harddisk:/ios_upgrade_7.3.2 iso_and_rpms_7_3_2.tar
Feb 02 13:36:55 Install operation will continue in the background
Процесс добавления файла как источника обновления запустится в фоновом режиме. Следующей командой можно посмотреть что же там в фоне происходит и на сколько успешно.
show install request
Wed Feb 2 13:38:17.790 MSK User admin, Op Id 32 install add iso_and_rpms_7_3_2.tar The install add operation 32 is 60% complete Add validate request sent to sysadmin Feb 02 13:39:28 It is a NO IMPACT OPERATION as all packages have already been added Feb 02 13:39:30 Install operation 32 finished successfully
Далее запускаем install prepare. Следует обратить внимание, что в качестве "id" в команде указывается идентификатор, который был назначен процессу на предыдущем этапе.
install prepare id 32
Wed Feb 2 13:40:39.192 MSK Feb 02 13:40:41 Install operation 33 started by root: install prepare id 32 Feb 02 13:40:41 Package list: Feb 02 13:40:41 asr9k-bng-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-mini-x64-7.3.2 Feb 02 13:40:41 asr9k-services-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-mpls-x64-2.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-m2m-x64-2.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-optic-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-li-x64-1.1.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-eigrp-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-bng-supp-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-mcast-x64-2.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-ospf-x64-2.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-mgbl-x64-2.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-9000v-nV-x64-1.0.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-isis-x64-1.1.0.0-r732.x86_64 Feb 02 13:40:41 asr9k-k9sec-x64-2.2.0.0-r732.x86_64 Feb 02 13:40:41 Install operation will continue in the background
Процесс также запустится в фоновом режиме. Следующей командой можно посмотреть что же там в фоне происходит и на сколько успешно.
show install request
Wed Feb 2 13:41:44.118 MSK User admin, Op Id 33 install prepare asr9k-li-x64-1.1.0.0-r732.x86_64 asr9k-m2m-x64-2.0.0.0-r732.x86_64 asr9k-isis-x64-1.1.0.0-r732.x86_64 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732.x86_64 asr9k-9000v-nV-x64-1.0.0.0-r732.x86_64 asr9k-mini-x64-7.3.2 asr9k-mgbl-x64-2.0.0.0-r732.x86_64 asr9k-optic-x64-1.0.0.0-r732.x86_64 asr9k-mcast-x64-2.0.0.0-r732.x86_64 asr9k-mpls-x64-2.0.0.0-r732.x86_64 asr9k-services-x64-1.0.0.0-r732.x86_64 asr9k-ospf-x64-2.0.0.0-r732.x86_64 asr9k-bng-supp-x64-1.0.0.0-r732.x86_64 asr9k-eigrp-x64-1.0.0.0-r732.x86_64 asr9k-k9sec-x64-2.2.0.0-r732.x86_64 asr9k-bng-x64-1.0.0.0-r732.x86_64 install operation 33 is in progress Triggered prepare operation in sysadmin. Updates from sysadmin for this operation. Install prepare operation 33 is in progress Initial config parsed. Stage one orchestration in progress.
Когда все закончится, выскочит вот это.
Feb 02 13:44:58 Install operation 33 finished successfully
Далее активируем процесс установки новой версии Cisco IOS XR, в результате которого маршрутизатор сам перезагрузится, если все пойдет без ошибок.
install activate
Wed Feb 2 13:45:57.467 MSK Feb 02 13:45:59 Install operation 34 started by admin: install activate This install operation will reload the system, continue? [yes/no]:[yes] yes И снова: Feb 02 13:46:04 Install operation will continue in the background
Процесс также запустится в фоновом режиме. Следующей командой можно посмотреть что же там в фоне происходит и на сколько успешно.
show install request
Wed Feb 2 13:47:32.739 MSK User admin, Op Id 34 install activate The install activate operation 34 is 5% complete install activate operation 34 is in progress Sysadmin preparation is in progress Host activation is complete Sysadmin activation is in progress Node(s) State %Completed Action -------------------------------------------------------------------------------- Node 0/RSP0 : In Progress 70% Client(s) being notified Node 0/0 : Completed 100% Sysadmin activation is complete
Тем временем в консоли (CON) в процессе выполненения "install activate" вылетают следующие сообщения.
RP/0/RSP0/CPU0:Feb 2 13:46:30.926 MSK: fpd-serv[334]: %PKT_INFRA-FM-3-FAULT_MAJOR : ALARM_MAJOR :FPD-NEED-UPGRADE :DECLARE :0/RSP0: 0/RSP0/ADMIN0:Feb 2 14:00:20.065 MSK: canbus_driver[3749]: %INFRA-FPD_Driver-1-UPGRADE_ALERT : FPD CBC@0/RSP0 image programming completed with UPGRADE DONE state Info: [CBC upgrade complete] 0/RSP0/ADMIN0:Feb 2 14:00:20.066 MSK: canbus_driver[3749]: %INFRA-FPD_Driver-1-UPGRADE_ALERT : FPD CBC @location 0/RSP0 FPD upgraded and activated! RP/0/RSP0/CPU0:Feb 2 13:50:14.206 MSK: fpd-serv[334]: %PKT_INFRA-FM-3-FAULT_MAJOR : ALARM_MAJOR :FPD-NEED-UPGRADE :CLEAR :0/RSP0:
В итоге, если все ок, маршрутизатор самостоятельно уйдет в ребут.
RP/0/RSP0/CPU0:Feb 2 13:52:39.699 MSK: sdr_instmgr[1312]: %INSTALL-INSTMGR-2-OPERATION_SUCCESS : Install operation 34 finished successfully RP/0/RSP0/CPU0:Feb 2 13:52:40.002 MSK: sdr_instmgr[1312]: %INSTALL-INSTMGR-2-SYSTEM_RELOAD_INFO : The whole system will be reloaded to complete install operation 34 0/0/ADMIN0:Feb 2 14:03:40.027 MSK: vm_manager[3578]: %INFRA-VM_MANAGER-4-INFO : Info: vm_manager brought down VM default-sdr--1 Preparing system for backup. This may take a few minutes especially for large configurations. Status report: node0_RSP0_CPU0: BACKUP INPROGRESS Status report: node0_RSP0_CPU0: BACKUP HAS COMPLETED SUCCESSFULLY [Done] Executing ifconfig eth-vf1.3074 down [13:53:43.355] Sending KILL signal to ds.. [13:53:43.364] Sending KILL signal to processmgr.. PM disconnect successStopping OpenBSD Secure Shell server: sshdinitctl: Unknown instance: Stopping system message bus: dbus. Stopping random number generator daemon. Stopping system log daemon...0 Stopping kernel log daemon...0 Stopping internet superserver: xinetd. Stopping crond: OK Stopping rpcbind daemon... done. Stopping libvirtd daemon: [ OK ] Deconfiguring network interfaces... done.
После перезагрузки мы получаем маршрутизатор, работающий под управлением новой версии Cisco IOS XR.
sh version
Wed Feb 2 14:12:31.066 MSK Cisco IOS XR Software, Version 7.3.2 Copyright (c) 2013-2021 by Cisco Systems, Inc. Build Information: Built By : ingunawa Built On : Wed Oct 13 20:22:40 PDT 2021 Built Host : iox-ucs-019 Workspace : /auto/srcarchive17/prod/7.3.2/asr9k-x64/ws Version : 7.3.2 Location : /opt/cisco/XR/packages/ Label : 7.3.2 cisco ASR9K () processor System uptime is 3 minutes
После ребута будет видно, что активная версия Cisco OS XR новая.
show install active
Wed Feb 2 16:01:25.326 MSK Label : 7.3.2 Node 0/RSP0/CPU0 [RP] Boot Partition: xr_lv33 Active Packages: 16 asr9k-xr-7.3.2 version=7.3.2 [Boot image] asr9k-li-x64-1.1.0.0-r732 asr9k-m2m-x64-2.0.0.0-r732 asr9k-isis-x64-1.1.0.0-r732 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732 asr9k-9000v-nV-x64-1.0.0.0-r732 asr9k-mgbl-x64-2.0.0.0-r732 asr9k-optic-x64-1.0.0.0-r732 asr9k-mcast-x64-2.0.0.0-r732 asr9k-bng-supp-x64-1.0.0.0-r732 asr9k-mpls-x64-2.0.0.0-r732 asr9k-services-x64-1.0.0.0-r732 asr9k-ospf-x64-2.0.0.0-r732 asr9k-eigrp-x64-1.0.0.0-r732 asr9k-k9sec-x64-2.2.0.0-r732 asr9k-bng-x64-1.0.0.0-r732 Node 0/0/CPU0 [LC] Boot Partition: xr_lv33 Active Packages: 16 asr9k-xr-7.3.2 version=7.3.2 [Boot image] asr9k-li-x64-1.1.0.0-r732 asr9k-m2m-x64-2.0.0.0-r732 asr9k-isis-x64-1.1.0.0-r732 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732 asr9k-9000v-nV-x64-1.0.0.0-r732 asr9k-mgbl-x64-2.0.0.0-r732 asr9k-optic-x64-1.0.0.0-r732 asr9k-mcast-x64-2.0.0.0-r732 asr9k-bng-supp-x64-1.0.0.0-r732 asr9k-mpls-x64-2.0.0.0-r732 asr9k-services-x64-1.0.0.0-r732 asr9k-ospf-x64-2.0.0.0-r732 asr9k-eigrp-x64-1.0.0.0-r732 asr9k-k9sec-x64-2.2.0.0-r732 asr9k-bng-x64-1.0.0.0-r732
Но при этом:
show install committed
Wed Feb 2 16:02:06.288 MSK Label : 7.1.3 Node 0/RSP0/CPU0 [RP] Boot Partition: xr_lv0 Committed Packages: 14 asr9k-xr-7.1.3 version=7.1.3 [Boot image] asr9k-mpls-te-rsvp-x64-2.1.0.0-r713 asr9k-services-x64-1.0.0.0-r713 asr9k-eigrp-x64-1.0.0.0-r713 asr9k-bng-x64-1.0.0.0-r713 asr9k-mgbl-x64-2.0.0.0-r713 asr9k-mcast-x64-2.0.0.0-r713 asr9k-mpls-x64-2.0.0.0-r713 asr9k-li-x64-1.1.0.0-r713 asr9k-ospf-x64-1.0.0.0-r713 asr9k-optic-x64-1.0.0.0-r713 asr9k-isis-x64-1.1.0.0-r713 asr9k-m2m-x64-2.0.0.0-r713 asr9k-9000v-nV-x64-1.0.0.0-r713 Node 0/0/CPU0 [LC] Boot Partition: xr_lv0 Committed Packages: 14 asr9k-xr-7.1.3 version=7.1.3 [Boot image] asr9k-mpls-te-rsvp-x64-2.1.0.0-r713 asr9k-services-x64-1.0.0.0-r713 asr9k-eigrp-x64-1.0.0.0-r713 asr9k-bng-x64-1.0.0.0-r713 asr9k-mgbl-x64-2.0.0.0-r713 asr9k-mcast-x64-2.0.0.0-r713 asr9k-mpls-x64-2.0.0.0-r713 asr9k-li-x64-1.1.0.0-r713 asr9k-ospf-x64-1.0.0.0-r713 asr9k-optic-x64-1.0.0.0-r713 asr9k-isis-x64-1.1.0.0-r713 asr9k-m2m-x64-2.0.0.0-r713 asr9k-9000v-nV-x64-1.0.0.0-r713
Чтобы окончательно переключиться на новую версию (чтобы новая версия была прописана в качестве основной для загрузки) нужно сделать:
install commit
После чего мы получим:
show install committed
Wed Feb 2 16:03:34.405 MSK Label : 7.3.2 Node 0/RSP0/CPU0 [RP] Boot Partition: xr_lv33 Committed Packages: 16 asr9k-xr-7.3.2 version=7.3.2 [Boot image] asr9k-li-x64-1.1.0.0-r732 asr9k-m2m-x64-2.0.0.0-r732 asr9k-isis-x64-1.1.0.0-r732 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732 asr9k-9000v-nV-x64-1.0.0.0-r732 asr9k-mgbl-x64-2.0.0.0-r732 asr9k-optic-x64-1.0.0.0-r732 asr9k-mcast-x64-2.0.0.0-r732 asr9k-bng-supp-x64-1.0.0.0-r732 asr9k-mpls-x64-2.0.0.0-r732 asr9k-services-x64-1.0.0.0-r732 asr9k-ospf-x64-2.0.0.0-r732 asr9k-eigrp-x64-1.0.0.0-r732 asr9k-k9sec-x64-2.2.0.0-r732 asr9k-bng-x64-1.0.0.0-r732 Node 0/0/CPU0 [LC] Boot Partition: xr_lv33 Committed Packages: 16 asr9k-xr-7.3.2 version=7.3.2 [Boot image] asr9k-li-x64-1.1.0.0-r732 asr9k-m2m-x64-2.0.0.0-r732 asr9k-isis-x64-1.1.0.0-r732 asr9k-mpls-te-rsvp-x64-2.1.0.0-r732 asr9k-9000v-nV-x64-1.0.0.0-r732 asr9k-mgbl-x64-2.0.0.0-r732 asr9k-optic-x64-1.0.0.0-r732 asr9k-mcast-x64-2.0.0.0-r732 asr9k-bng-supp-x64-1.0.0.0-r732 asr9k-mpls-x64-2.0.0.0-r732 asr9k-services-x64-1.0.0.0-r732 asr9k-ospf-x64-2.0.0.0-r732 asr9k-eigrp-x64-1.0.0.0-r732 asr9k-k9sec-x64-2.2.0.0-r732 asr9k-bng-x64-1.0.0.0-r732
Уборка.
install remove inactive all
cfs check
Теперь можно передать Дэну спасибо и почилить: