Table des matières

Introduction

Conditions préalables

Exigences

Composants utilisés

Produits connexes

ISO Golden pour mises à niveau XR

Outil Python de gisobuild

Préparation

Création de GISO

Vérifier

Introduction

Ce document décrit la création de Golden ISO (GISO) pour les mises à niveau dans les routeurs qui exécutent le logiciel Cisco IOS® XR dans les versions eXR.

Conditions préalables

Exigences

Cisco vous recommande de prendre connaissance des rubriques suivantes :

- Logiciel Cisco IOS XR

- Installation du logiciel Cisco IOS XR et procédures de mise à niveau

- Commandes de base Linux et navigation dans la ligne de commande

Composants utilisés

Ce document n'est pas limité à des versions matérielles spécifiques, il s'applique à tous les routeurs exécutant IOS XR 64 bits.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.

Produits connexes

Ce document peut également être utilisé avec les versions matérielles suivantes :

- Routeurs Cisco, série 9000

- Routeurs Cisco, série 8000

- Routeurs Cisco NCS 5700

- Routeurs Cisco NCS 5500

- Routeurs NCS 540 et 560

ISO Golden pour mises à niveau XR

En général, Cisco publie le logiciel IOS-XR sous la forme d'un ISO mini/de base qui contient des packages IOS-XR obligatoires pour une plate-forme donnée, un ensemble de packages facultatifs pour exécuter des fonctionnalités supplémentaires et des correctifs logiciels pour tout correctif de bogue sous la forme d'une mise à niveau de maintenance logicielle (SMU). Le package facultatif et le SMU sont au format RPM.

L'outil Golden ISO crée une ISO contenant le contenu complet de l'ISO mini/de base ainsi que les paquets optionnels et la SMU du choix de l'utilisateur. Une fois que l'ISO d'or est créé, il peut être utilisé soit pour le démarrage d'iPXE, soit pour la mise à niveau du système (SU) de la version courante vers une nouvelle version d'IOS-XR.

Remarque : Mini/base ISO est obligatoire pour toute création Golden ISO

Outil Python de gisobuild

Cet outil peut être exécuté en mode natif sur un hôte Linux. Alternativement, l'outil peut également être exécuté sur un système Linux avec Docker activé et la possibilité d'extraire l'image publiée « cisco-xr-gisobuild » à partir du Docker Hub, pour cet exemple est suggéré de travailler dans Debian 11.8

Cet outil a les exigences suivantes en matière d'exécutable :

- python3 >= 3,6

- tr/min >= 4,14

- cpio >= 2,10

- gzip >= 1,9

- createrepo_c

- fichier

- infos isostatiques

- mkisofs

- mksquashfs

- ouvert

- dérouleurs

- 7z (facultatif, mais les fonctionnalités peuvent être réduites sans)

- iso-read (Facultatif - mais les fonctionnalités peuvent être réduites sans)

- zip (Facultatif - mais la fonctionnalité peut être réduite sans)

- unzip (Facultatif - mais la fonctionnalité peut être réduite sans)

Remarque : Sur un système Linux natif, qui n'a pas toutes les dépendances remplies, les dépendances d'outils peuvent être installées sur les distributions prises en charge en exécutant la commande suivante (éventuellement via sudo) : ./setup/prep_dependency.sh

Il nécessite également les modules Python suivants (>= 3.6) :

- classes de données

- defusedxml

- distillerie

- conditionnement

- tours par minute

- yaml

Pour fonctionner en mode natif sur un hôte Linux, les prochaines distributions ont été testées, spécifiquement pour ce scénario, Debian.

- Alma Linux 8

- Fedora 34

- Debian 11.2

Préparation

Il est impératif de confirmer d'abord quels paquets optionnels sont nécessaires et pourquoi. L'installation de packages inutiles ou excessifs peut entraîner des problèmes d'utilisation de l'espace disque et des pannes pendant l'installation. Confirmer les conditions préalables et les exigences de chaque plate-forme en matière d'espace disque avant la création du fichier GISO.

Pour télécharger le logiciel nécessaire, consultez le site officiel de téléchargement de logiciels : Téléchargement de logiciels Cisco

Script peut nous aider à unifier une grande gamme de fichiers, par exemple, iso, correctifs de pont, SMU, etc.

Est nécessaire pour copier le script gisobuild.py à un emplacement particulier sur le serveur. Le script est situé sur le site Gisobuild Git

Création de GISO

Voici un résumé des arguments que nous pouvons utiliser pour l'utilisation de ce script :

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]

Pour cet exemple, un GISO pour ASR 9901 est créé, les packages ISIS et OSPF sont utilisés pour la concision, mini pour la version 7.9.21 et le fichier de configuration est également ajouté au GISO.

Comme le montre la commande suivante, les packages, le fichier mini et le fichier de configuration sont copiés dans le répertoire /src, ce qui permet de créer une version effacée de la commande d'exécution de script.

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#

Voici une brève description des paramètres utilisés pour cette création de GISO :

—ISO ISO

Chemin vers le fichier Mini.iso/Full.iso

—xrconfig XRCONFIG

Chemin d'accès au fichier de configuration XR

—label LABEL, -l LABEL

Label ISO doré

--sain

Supprimez le répertoire de sortie avant de continuer

—skip-image

Ne créez pas l'image USB (non prise en charge pour la plate-forme ASR9K)

Vérifier

Comme l'indiquent les journaux d'installation, nous pouvons confirmer notre création de GISO en examinant l'emplacement, dans cet exemple. Emplacement de l'image ISO : /gisobuild-master/src/output_gisobuild/asr9k-golden-x64-7.9.21-firstGiso.iso

Comme dans l'image suivante, initrd.img est de 1,7 Go contenant les paquets d'installation que nous avons inclus.

GISO dans l'interface graphique utilisateur Debian