Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Dans cet article, je vais vous montrer comment mettre en place à la lumière du jour pour travailler avec des équipements réseau, et également montrer comment utiliser Facteur et simple RESTCONF demandes, cet équipement peut être contrôlé. Nous ne travaillerons pas avec du matériel, mais à la place nous déploierons de petits laboratoires virtuels avec un seul routeur utilisant Vrnetlab sur Ubuntu LTS 20.04.

Je vais d'abord montrer les paramètres détaillés en utilisant l'exemple d'un routeur Juniper vMX 20.1R1.11, puis nous le comparons avec le réglage Cisco xRV9000 7.0.2.

Teneur

  • Connaissances requises
  • Partie 1: discuter brièvement OpenDaylight (ci-après ODL), Facteur и Vrnetlab et pourquoi en avons-nous besoin
  • Partie 2: description du laboratoire virtuel
  • Partie 3: Personnaliser à la lumière du jour
  • Partie 4: Personnaliser Vrnetlab
  • Partie 5: en utilisant Facteur connecter un routeur virtuel (Genévrier vMX) à ODL
  • Partie 6: obtenez et modifiez la configuration du routeur à l'aide de Facteur и ODL
  • Partie 7: ajouter Cisco xRV9000
  • Conclusion
  • PS
  • Bibliographie

Connaissances requises

Pour que l'article ne se transforme pas en fiche, j'ai omis quelques détails techniques (avec des liens vers de la littérature où vous pouvez lire à leur sujet).

A ce propos, je vous propose des sujets qu'il serait bon (mais presque pas nécessaire) de connaître avant de lire :

Partie 1 : un peu de théorie

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

  • Une plate-forme SDN ouverte pour la gestion et l'automatisation de tous types de réseaux, prise en charge par Linux Foundation
  • Java à l'intérieur
  • Basé sur le niveau d'abstraction de service piloté par le modèle (MD-SAL)
  • Utilise des modèles YANG pour générer automatiquement des API RESTCONF pour les périphériques réseau

Le module principal pour la gestion du réseau. C'est par elle que nous communiquerons avec les appareils connectés. Géré via sa propre API.

Vous pouvez en savoir plus sur OpenDaylight ici.

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

  • Outil de test d'API
  • Interface simple et facile à utiliser

Dans notre cas, nous nous y intéressons comme moyen d'envoyer des requêtes REST à l'API OpenDaylight. Vous pouvez, bien sûr, envoyer des demandes manuellement, mais dans Postman, tout semble très clair et convient parfaitement à nos besoins.

Pour ceux qui veulent creuser : de nombreux supports de formation y ont été rédigés (par exemple).

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

  • Outil de déploiement de routeurs virtuels dans Docker
  • Prend en charge : Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR, etc.
  • Open source

Un instrument très intéressant mais peu connu. Dans notre cas, nous l'utiliserons pour exécuter Juniper vMX et Cisco xRV9000 sur un Ubuntu 20.04 LTS standard.

Vous pouvez en savoir plus à ce sujet sur page du projet.

Partie 2 : Laboratoire

Dans ce tutoriel, nous allons mettre en place le système suivant :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Comment ça marche

  • Genévrier vMX monte en Docker conteneur (au moyen Vrnetlab) et fonctionne comme le routeur virtuel le plus courant.
  • ODL connecté au routeur et vous permet de le contrôler.
  • Facteur lancé sur une machine séparée et à travers elle nous envoyons des commandes ODL: pour connecter/déconnecter le routeur, modifier la configuration, etc.

Commentaire sur le dispositif du système

Genévrier vMX и ODL nécessitent beaucoup de ressources pour leur fonctionnement stable. Une seulement vMX demande 6 Go de RAM et 4 cœurs. Par conséquent, il a été décidé de déplacer tous les "poids lourds" vers une machine séparée (Heulett Packard Enterprise MicroServeur ProLiant Gen8, Ubuntu 20.04 LTS). Le routeur, bien sûr, ne "vole" pas dessus, mais les performances sont suffisantes pour de petites expériences.

Partie 3 : Configurer OpenDaylight

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

La version actuelle d'ODL au moment d'écrire ces lignes est Magnesium SR1

1) Installer Java Ouvrir JDK 11 (pour une installation plus détaillée ici)

ubuntu:~$ sudo apt install default-jdk

2) Trouvez et téléchargez la dernière version ODL par conséquent,
3) Décompressez l'archive téléchargée
4) Allez dans le répertoire résultant
5) Lancement ./bin/karaf

A cette étape ODL devrait démarrer et nous nous retrouverons dans la console (le port 8181 est utilisé pour l'accès depuis l'extérieur, que nous utiliserons plus tard).

Ensuite, installez Fonctionnalités ODLconçu pour fonctionner avec des protocoles CONF NET и RESTCONF. Pour le faire dans la console ODL nous exécutons :

opendaylight-user@root> feature:install odl-netconf-topology odl-restconf-all

C'est la configuration la plus simple. ODL complété. (Pour plus de détails, voir ici).

Partie 4 : Configuration de Vrnetlab

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Préparation du système

Avant l'installation Vrnetlab vous devez installer les packages nécessaires à son fonctionnement. Tel que Docker, jet, sshpass:

ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt -y install python3-bs4 sshpass make
ubuntu:~$ sudo apt -y install git
ubuntu:~$ sudo apt install -y 
    apt-transport-https ca-certificates 
    curl gnupg-agent software-properties-common
ubuntu:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
ubuntu:~$ sudo add-apt-repository 
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu 
   $(lsb_release -cs) 
   stable"
ubuntu:~$ sudo apt update
ubuntu:~$ sudo apt install -y docker-ce docker-ce-cli containerd.io

Installation de Vrnetlab

Pour l'installation Vrnetlab clonez le dépôt correspondant depuis github :

ubuntu:~$ cd ~
ubuntu:~$ git clone https://github.com/plajjan/vrnetlab.git

Aller au répertoire vrnetlab:

ubuntu:~$ cd ~/vrnetlab

Ici vous pouvez voir tous les scripts nécessaires à l'exécution. Veuillez noter qu'un répertoire correspondant a été créé pour chaque type de routeur :

ubuntu:~/vrnetlab$ ls
CODE_OF_CONDUCT.md  config-engine-lite        openwrt           vr-bgp
CONTRIBUTING.md     csr                       routeros          vr-xcon
LICENSE             git-lfs-repo.sh           sros              vrnetlab.sh
Makefile            makefile-install.include  topology-machine  vrp
README.md           makefile-sanity.include   veos              vsr1000
ci-builder-image    makefile.include          vmx               xrv
common              nxos                      vqfx              xrv9k

Créer une image du routeur

Chaque routeur pris en charge Vrnetlab, a sa propre procédure de configuration unique. Quand Genévrier vMX nous avons juste besoin de télécharger l'archive .tgz avec le routeur (vous pouvez la télécharger depuis site officiel) dans le répertoire vmx et exécutez la commande make:

ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # Копируем в эту директорию .tgz архив с роутером
ubuntu:~$ sudo make

Construire une image vMX prendra environ 10-20 minutes. C'est l'heure d'aller prendre un café !

Pourquoi si longtemps, demandez-vous?

La traduction répondre auteur à cette question :

"En effet, la première fois que le VCP (Control Plane) est démarré, il lit un fichier de configuration qui détermine s'il s'exécutera en tant que VRR VCP dans vMX. Auparavant, ce lancement était effectué lors du démarrage de Docker, mais cela signifiait que le VCP était toujours redémarré une fois avant que le routeur virtuel ne devienne disponible, ce qui entraînait un long temps de démarrage (environ 5 minutes) Maintenant, la première exécution du VCP est effectuée lors de la construction de l'image Docker, et puisque la construction Docker ne peut pas être exécutée avec le - -option privilégiée, cela signifie que qemu fonctionne sans accélération matérielle KVM et que la construction prend donc beaucoup de temps. Au cours de ce processus, de nombreux journaux sont générés, vous pouvez donc au moins voir ce qui se passe. Je pense qu'une longue construction n'est pas si effrayant parce que nous créons une image une fois, mais nous en lançons plusieurs."

Après vous pouvez voir l'image de notre routeur dans Docker:

ubuntu:~$ sudo docker image list
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        3 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

Lancer le conteneur vr-vmx

On commence par la commande :

ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453c

Ensuite, nous pouvons voir des informations sur les conteneurs actifs :

ubuntu:~$ sudo docker container list
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS                                                 NAMES
120f882c8712        b1b2369b453c        "/launch.py"        2 minutes ago       Up 2 minutes (unhealthy)   22/tcp, 830/tcp, 5000/tcp, 10000-10099/tcp, 161/udp   jun01

Connexion au routeur

L'adresse IP de l'interface réseau du routeur peut être obtenue avec la commande suivante :

ubuntu:~$ sudo docker inspect --format '{{.NetworkSettings.IPAddress}}' jun01
172.17.0.2

Défaut, Vrnetlab crée un utilisateur sur le routeur vrnetlab/VR-netlab9.
Se connecter avec ssh:

ubuntu:~$ ssh [email protected]
The authenticity of host '172.17.0.2 (172.17.0.2)' can't be established.
ECDSA key fingerprint is SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.17.0.2' (ECDSA) to the list of known hosts.
Password:
--- JUNOS 20.1R1.11 Kernel 64-bit  JNPR-11.0-20200219.fb120e7_buil
vrnetlab> show version
Model: vmx
Junos: 20.1R1.11

Ceci termine la configuration du routeur.

Les recommandations d'installation pour les routeurs de divers fournisseurs sont disponibles sur projet github dans les répertoires respectifs.

Partie 5 : Postman - connecter le routeur à OpenDaylight

Pose du facteur

Pour l'installer, il suffit de télécharger l'application par conséquent,.

Connexion d'un routeur à ODL

créons PUT demande:

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

  1. Chaîne de requête:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Corps de la requête (onglet Corps) :
    <node xmlns="urn:TBD:params:xml:ns:yang:network-topology">
    <node-id>jun01</node-id>
    <host xmlns="urn:opendaylight:netconf-node-topology">172.17.0.2</host>
    <port xmlns="urn:opendaylight:netconf-node-topology">22</port>
    <username xmlns="urn:opendaylight:netconf-node-topology">vrnetlab</username>
    <password xmlns="urn:opendaylight:netconf-node-topology">VR-netlab9</password>
    <tcp-only xmlns="urn:opendaylight:netconf-node-topology">false</tcp-only>
    <schema-cache-directory xmlns="urn:opendaylight:netconf-node-topology">jun01_cache</schema-cache-directory>
    </node>
  3. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin. Ceci est nécessaire pour accéder à l'ODL :
    Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab
  4. Dans l'onglet En-têtes, vous devez ajouter deux en-têtes :
    • Accepter l'application/xml
    • Application/xml de type de contenu

Notre demande a été faite. Nous envoyons. Si tout a été configuré correctement, alors nous devrions renvoyer le statut "201 Created":

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

A quoi sert cette requête ?

Nous créons un nœud à l'intérieur ODL avec les paramètres du routeur réel auquel nous voulons accéder.

xmlns="urn:TBD:params:xml:ns:yang:network-topology"
xmlns="urn:opendaylight:netconf-node-topology"

Ce sont des espaces de noms internes XML (Espace de noms XML) pour ODL selon lequel il crée le nœud.

De plus, respectivement, le nom du routeur est ID-nœud, adresse du routeur - hôte et ainsi de suite.

La ligne la plus intéressante est la dernière. Répertoire-cache-schéma crée un répertoire où tous les fichiers sont téléchargés Schéma YANG routeur connecté. Vous pouvez les trouver dans $ODL_ROOT/cache/jun01_cache.

Vérification de la connexion du routeur

créons ÉCONOMISEZ demande:

  1. Chaîne de requête:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Nous envoyons. Devrait recevoir un statut de "200 OK" et une liste de tous ceux pris en charge par l'appareil Schéma YANG:

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

commentaire: Pour voir ce dernier, dans mon cas il a fallu attendre environ 10 minutes après l'exécution PUTjusqu'à ce que tout Schéma YANG décharger sur ODL. Jusqu'à ce point, lors de l'exécution de cette ÉCONOMISEZ requête affichera ce qui suit :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Supprimer le routeur

créons EFFACER demande:

  1. Chaîne de requête:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Partie 6 : Modifier la configuration du routeur

Obtenir la configuration

créons ÉCONOMISEZ demande:

  1. Chaîne de requête:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Nous envoyons. Doit recevoir le statut "200 OK" et la configuration du routeur :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Créer une configuration

À titre d'exemple, créons la configuration suivante et modifions-la :

protocols {
    bgp {
        disable;
        shutdown;
    }
}

créons POSTEZ demande:

  1. Chaîne de requête:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. Corps de la requête (onglet Corps) :
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.
  4. Dans l'onglet En-têtes, vous devez ajouter deux en-têtes :
    • Accepter l'application/xml
    • Application/xml de type de contenu

Après l'envoi, ils devraient recevoir le statut "204 No Content"

Pour vérifier que la configuration a changé, vous pouvez utiliser la requête précédente. Mais par exemple, nous allons en créer un autre qui affichera des informations uniquement sur les protocoles configurés sur le routeur.

créons ÉCONOMISEZ demande:

  1. Chaîne de requête:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Après avoir exécuté la requête, nous verrons ce qui suit :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Modifier la configuration

Modifions les informations sur le protocole BGP. Après nos actions, cela ressemblera à ceci:

protocols {
    bgp {
        disable;
    }
}

créons PUT demande:

  1. Chaîne de requête:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. Corps de la requête (onglet Corps) :
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.
  4. Dans l'onglet En-têtes, vous devez ajouter deux en-têtes :
    • Accepter l'application/xml
    • Application/xml de type de contenu

En utilisant le précédent ÉCONOMISEZ demande, nous voyons les changements :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Supprimer la configuration

créons EFFACER demande:

  1. Chaîne de requête:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/junos-conf-root:configuration/junos-conf-protocols:protocols
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Sur appel ÉCONOMISEZ demande avec des informations sur les protocoles, nous verrons ce qui suit :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Supplément:

Pour modifier la configuration, il n'est pas nécessaire d'envoyer le corps de la requête au format XML. Cela peut aussi se faire sous la forme JSON.

Pour ce faire, par exemple, dans la requête PUT pour modifier la configuration, remplacez le corps de la requête par :

{
    "junos-conf-protocols:protocols": {
        "bgp": {
            "description" : "Changed in postman" 
        }
    }
}

N'oubliez pas de remplacer les en-têtes de l'onglet En-têtes par :

  • Accepter l'application/json
  • Application/json de type de contenu

Après l'envoi, nous obtiendrons le résultat suivant (Nous regardons la réponse en utilisant ÉCONOMISEZ demande):

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Partie 7 : Ajout du Cisco xRV9000

Que sommes-nous tous à propos de Juniper, oui Juniper ? Parlons de Cisco !
J'ai trouvé xRV9000 version 7.0.2 (une bête qui a besoin de 8 Go de RAM et de 4 cœurs. Il n'est pas disponible gratuitement, alors contactez Cisco) - lançons-le.

Exécution d'un conteneur

Le processus de création d'un conteneur Docker n'est pratiquement pas différent de Juniper. De même, nous déposons le fichier .qcow2 avec le routeur dans le répertoire correspondant à son nom (dans ce cas, xrv9k) et exécutons la commande make docker-image.

Après quelques minutes, on voit que l'image a été créée :

ubuntu:~$ sudo docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-xrv9k   7.0.2               54debc7973fc        4 hours ago         1.7GB
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        4 weeks ago         4.43GB
debian              stretch             614bb74b620e        7 weeks ago         101MB

Nous commençons le conteneur :

ubuntu:~$ sudo docker run -d --privileged --name xrv01 54debc7973fc

Au bout d'un moment, on regarde que le container a démarré :

ubuntu:~$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                 PORTS                                                      NAMES
058c5ecddae3        54debc7973fc        "/launch.py"        4 hours ago         Up 4 hours (healthy)   22/tcp, 830/tcp, 5000-5003/tcp, 10000-10099/tcp, 161/udp   xrv01

Connectez-vous en ssh :

ubuntu@ubuntu:~$ ssh [email protected]
Password:

RP/0/RP0/CPU0:ios#show version
Mon Jul  6 12:19:28.036 UTC
Cisco IOS XR Software, Version 7.0.2
Copyright (c) 2013-2020 by Cisco Systems, Inc.

Build Information:
 Built By     : ahoang
 Built On     : Fri Mar 13 22:27:54 PDT 2020
 Built Host   : iox-ucs-029
 Workspace    : /auto/srcarchive15/prod/7.0.2/xrv9k/ws
 Version      : 7.0.2
 Location     : /opt/cisco/XR/packages/
 Label        : 7.0.2

cisco IOS-XRv 9000 () processor
System uptime is 3 hours 22 minutes

Connexion du routeur à OpenDaylight

L'ajout se produit de manière complètement similaire avec vMX. Nous avons juste besoin de changer les noms.
PUT demande:
Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Appel au bout d'un moment ÉCONOMISEZ query pour vérifier que tout est connecté :
Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Modifier la configuration

Mettons en place la configuration suivante :

!
router ospf LAB
 mpls ldp auto-config
!

créons POSTEZ demande:

  1. Chaîne de requête:
    POST http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. Corps de la requête (onglet Corps) :
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.
  4. Dans l'onglet En-têtes, vous devez ajouter deux en-têtes :
    • Accepter l'application/json
    • Application/json de type de contenu

Après son exécution, ils devraient recevoir le statut "204 No Content".

Vérifions ce que nous avons.
Pour ce faire, nous allons créer ÉCONOMISEZ demande:

  1. Chaîne de requête:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Après exécution, vous devriez voir ceci :

Automatisation des services réseaux ou comment construire un laboratoire virtuel avec OpenDaylight, Postman et Vrnetlab

Pour supprimer la configuration, utilisez EFFACER:

  1. Chaîne de requête:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/xrv01/yang-ext:mount/Cisco-IOS-XR-ipv4-ospf-cfg:ospf
  2. Dans l'onglet Autorisation, vous devez définir le paramètre Basic Auth et identifiant/mot de passe : admin/admin.

Conclusion

Au total, comme vous l'avez peut-être remarqué, les procédures de connexion de Cisco et Juniper à OpenDaylight ne diffèrent pas - cela ouvre un champ de créativité assez large. En commençant par la gestion de la configuration de tous les composants du réseau et en terminant par la création de vos propres politiques de réseau.
Dans ce didacticiel, j'ai donné les exemples les plus simples de la manière dont vous pouvez interagir avec des équipements réseau à l'aide d'OpenDaylight. Sans aucun doute, les requêtes des exemples ci-dessus peuvent être rendues beaucoup plus complexes et configurer des services entiers en un seul clic de souris - tout n'est limité que par votre imagination *

A suivre ...

PS

Si vous savez tout à coup déjà tout cela ou, au contraire, êtes passé par là et avez plongé dans l'âme d'ODL, alors je vous recommande de vous tourner vers le développement d'applications sur le contrôleur ODL. Tu peux commencer par conséquent,.

Expériences réussies!

Références

  1. Vrnetlab : émuler des réseaux à l'aide de KVM et de Docker /Brian Linkletter
  2. Livre de recettes OpenDaylight / Mathieu Lemay, Alexis de Talhouet, Et al
  3. Programmabilité réseau avec YANG / Benoît Claise, Loe Clarke, Jan Lindblad
  4. Apprendre XML, deuxième édition / Erik T. Ray
  5. DevOps efficace / Jennifer Davis, Ryn Daniels

Source: habr.com

Ajouter un commentaire