Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

An dësem Artikel wäert ech Iech weisen wéi Dir opstellt opendaylight mat Reseau Equipement ze schaffen, an och weisen wéi ze benotzen Bréifdréier an einfach RESTCONF Ufroen, kann dës Ausrüstung kontrolléiert ginn. Mir wäerten net mat Hardware schaffen, mee amplaz wäerte mir kleng virtuell Laboratoiren mat engem eenzege Router benotzen Vnetlab Buedem Ubuntu 20.04 LTS.

Ech weisen déi detailléiert Astellunge fir d'éischt mam Beispill vun engem Router Juniper vMX 20.1R1.11, an da vergläichen mir et mat der Astellung Cisco xRV9000 7.0.2.

Inhalt

  • Noutwendeg Wëssen
  • Deel vun 1: kuerz diskutéieren OpenDaylight (nach ODL), Bréifdréier и Vnetlab a firwat brauche mir se
  • Deel vun 2: Beschreiwung vum virtuelle Labo
  • Deel vun 3: personaliséiere opendaylight
  • Deel vun 4: personaliséiere Vnetlab
  • Deel vun 5: duerch benotzt Bréifdréier konnektéieren virtuelle Router (Juniper vMX) k ODL
  • Deel vun 6: kréien an änneren d'Router Konfiguratioun benotzt Bréifdréier и ODL
  • Deel vun 7: dobäizemaachen Cisco xRV9000
  • Konklusioun
  • PS
  • Bibliographie

Noutwendeg Wëssen

Fir den Artikel net zu engem Blat ze ginn, hunn ech e puer technesch Detailer ewechgelooss (mat Linken op d'Literatur, wou Dir iwwer se kënnt liesen).

An dësem Zesummenhang bidden ech Iech Themen un, déi et gutt wier (awer bal net néideg) ze wëssen ier Dir liest:

Deel 1: puer Theorie

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

  • Eng oppe SDN Plattform fir all Zorte vu Netzwierker ze managen an ze automatiséieren, ënnerstëtzt vun Linux Foundation
  • Java bannen
  • Baséiert op Model-Driven Service Abstraction Level (MD-SAL)
  • Benotzt YANG Modeller fir automatesch RESTCONF APIs fir Netzwierkapparater ze generéieren

D'Haaptrei Modul fir Reseau Gestioun. Et ass duerch et datt mir mat verbonne Geräter kommunizéieren. Gestioun duerch seng eege API.

Dir kënnt méi iwwer OpenDaylight liesen hei.

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

  • API Test Tool
  • Einfach an einfach ze benotzen Interface

An eisem Fall si mir interesséiert et als Mëttel fir REST Ufroen un d'OpenDaylight API ze schécken. Dir kënnt natierlech Ufroe manuell schécken, awer am Postman gesäit alles ganz kloer aus a passt eis Zwecker perfekt.

Fir déi, déi wëllen graven: vill Trainingsmaterial ass drop geschriwwen (zum Beispill).

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

  • Tool fir virtuell Router an Docker z'installéieren
  • Ënnerstëtzt: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR, etc.
  • Open Source

E ganz interessant awer wéineg bekannt Instrument. An eisem Fall benotze mir et fir Juniper vMX a Cisco xRV9000 op engem normale Ubuntu 20.04 LTS ze lafen.

Dir kënnt méi doriwwer liesen op Projet Säit.

Deel 2: Labo

An dësem Tutorial setzen mir de folgende System op:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Wéi heescht dat Aarbecht

  • Juniper vMX klëmmt an Docker Behälter (mat Mëttel Vnetlab) a funktionnéiert als de meeschte verbreet virtuelle Router.
  • ODL verbonne mam Router an erlaabt Iech et ze kontrolléieren.
  • Bréifdréier lancéiert op enger separater Maschinn an duerch et schécken mir Kommandoen ODL: fir de Router ze verbannen / ewechzehuelen, d'Konfiguratioun z'änneren, etc.

Commentaire op den Apparat vum System

Juniper vMX и ODL erfuerderen zimlech vill Ressourcen fir hir stabil Operatioun. Nëmmen een vMX freet 6 Gb RAM an 4 Kären. Dofir gouf beschloss all "Schwéiergewiicht" op eng separat Maschinn ze plënneren (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). De Router, natierlech, "fléien" net drop, awer d'Performance ass genuch fir kleng Experimenter.

Deel 3: Ariichten OpenDaylight

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Déi aktuell Versioun vun ODL am Moment vun dësem Schreiwen ass Magnesium SR1

1) Installéieren Java Open JDK 11 (fir méi detailléiert Installatioun hei)

ubuntu:~$ sudo apt install default-jdk

2) Fannt an eroflueden déi lescht Build ODL vun hei
3) Unzip den erofgelueden Archiv
4) Gitt an de resultéierende Verzeichnis
5) Start ./bin/karaf

Op dësem Schrëtt ODL soll ufänken a mir wäerten eis an der Konsole fannen (Port 8181 gëtt fir Zougang vu baussen benotzt, wat mir spéider benotzen).

Als nächst, installéieren ODL Fonctiounenentwéckelt fir mat Protokoller ze schaffen NETCONF и RESTCONF. Fir dëst an der Konsole ze maachen ODL mir maachen aus:

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

Dëst ass den einfachsten Setup. ODL ofgeschloss. (Fir méi Detailer, kuckt hei).

Deel 4: Astelle Vrnetlab

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

System Virbereedung

Virun der Installatioun Vnetlab Dir musst d'Packagen installéieren déi fir seng Operatioun erfuerderlech sinn. Sou wéi Docker, Go, spass:

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

Vrnetlab installéieren

Fir Installatioun Vnetlab klon de entspriechende Repository vu github:

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

Gitt an den Dossier vnetlab:

ubuntu:~$ cd ~/vrnetlab

Hei kënnt Dir all d'Skripte gesinn déi néideg sinn fir ze lafen. Notéiert w.e.g. datt e entspriechende Verzeechnes fir all Typ vu Router gemaach gouf:

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

Erstellt e Bild vum Router

All Router deen ënnerstëtzt gëtt Vnetlab, huet seng eege eenzegaarteg Konfiguratiounsprozedur. Wéini Juniper vMX mir brauche just den .tgz Archiv mam Router eropzelueden (Dir kënnt et eroflueden offizielle Site) an de vmx Verzeichnis a lafen de Kommando make:

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

Bauen en Bild vMX wäert ongeféier 10-20 Minutten huelen. Et ass Zäit fir Kaffi ze drénken!

Firwat sou laang, frot Dir?

Iwwersetzung beäntweren Auteur zu dëser Fro:

"Dëst ass well d'éischt Kéier de VCP (Kontrollplane) gestart gëtt, liest et eng Configuratiounsdatei déi bestëmmt ob et als VRR VCP an vMX leeft. Virdru gouf dëse Start während dem Docker Startup gemaach, awer dëst bedeit datt de VCP war ëmmer eemol nei gestart ier de virtuelle Router verfügbar ass, wat zu enger laanger Bootzäit resultéiert (ongeféier 5 Minutten) Elo gëtt den éischte Laf vum VCP wärend dem Bau vum Docker Bild gemaach, a well den Docker Build net mat der - -privilegéiert Optioun, dat heescht datt qemu ouni KVM Hardware Beschleunigung funktionnéiert an domat de Bau ganz laang dauert.Während dësem Prozess gi vill Logbicher erausginn, also op d'mannst kënnt Dir gesinn wat lass ass.Ech mengen e laange Bau ass net sou grujeleg well mir eng Kéier e Bild kreéieren, awer mir lancéiere vill."

Nodeems Dir d'Bild vun eisem Router an 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

Start vr-vmx Container

Mir starten mam Kommando:

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

Als nächst kënne mir Informatioun iwwer aktive Container gesinn:

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

Uschloss un de Router

D'IP Adress vum Netzwierk Interface vum Router kann mat dem folgenden Kommando kritt ginn:

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

Standard, Vnetlab erstellt e Benotzer um Router vnetlab/VR-netlab9.
Verbindung mat 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

Dëst fäerdeg de Router Setup.

Installatioun Empfehlungen fir Router vu verschiddene Verkeefer fannt Dir op github Projet an de jeeweilege Verzeichnisser.

Deel 5: Postman - verbënnt de Router op OpenDaylight

Postman Installatioun

Fir ze installéieren, luet just d'Applikatioun erof vun hei.

E Router un ODL verbannen

Loosst eis schafen PUT Ufro:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

  1. Query String:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Ufro Kierper (Kierper Tab):
    <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. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin. Dëst ass erfuerderlech fir Zougang zu den ODL:
    Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen
  4. Op der Header Tab musst Dir zwee Header addéieren:
    • Akzeptéieren Applikatioun / xml
    • Inhalt-Typ Applikatioun/xml

Eis Demande ass gemaach. Mir schécken. Wann alles richteg konfiguréiert ass, da sollte mir de Status "201 Created" zréckginn:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Wat mécht dës Ufro?

Mir schafen Node bannen ODL mat de Parameteren vun der real Router mir Zougang wëllen.

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

Dëst sinn intern Nummraim XML (XML Nummraum) fir ODL no deem et schaaft Node.

Weider, respektiv, den Numm vum Router ass node-id, Router Adress - Provider an esou weider.

Déi interessantst Linn ass déi lescht. Schema-Cache-Verzeichnis erstellt en Dossier wou all Dateien erofgeluede ginn YANG Schema verbonne Router. Dir fannt se an $ODL_ROOT/cache/jun01_cache.

Iwwerpréift d'Verbindung vum Router

Loosst eis schafen GET Ufro:

  1. Query String:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Mir schécken. Sollt e Status vun "200 OK" kréien an eng Lëscht vun all ënnerstëtzt vum Apparat YANG Schema:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Commentaire: Fir dat lescht ze gesinn, a mengem Fall war et néideg ongeféier 10 Minutten no der Hiriichtung ze waarden PUTbis all YANG Schema auslueden an ODL. Bis zu dësem Zäitpunkt, wann Dir dëst ausféiert GET Ufro wäert déi folgend weisen:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

De Router läschen

Loosst eis schafen läschen Ufro:

  1. Query String:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Deel 6: Änneren d'Router Konfiguratioun

Kréien d'Konfiguratioun

Loosst eis schafen GET Ufro:

  1. Query String:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Mir schécken. Sollt de Status "200 OK" an d'Routerkonfiguratioun kréien:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Schafen eng Configuratioun

Als Beispill, loosst eis déi folgend Konfiguratioun erstellen an se änneren:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

Loosst eis schafen POST Ufro:

  1. Query String:
    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. Ufro Kierper (Kierper Tab):
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.
  4. Op der Header Tab musst Dir zwee Header addéieren:
    • Akzeptéieren Applikatioun / xml
    • Inhalt-Typ Applikatioun/xml

Nom Verschécken solle se de Status "204 No Content" kréien

Fir ze kontrolléieren ob d'Konfiguratioun geännert huet, kënnt Dir déi viregt Ufro benotzen. Awer zum Beispill wäerte mir en aneren erstellen deen Informatioun nëmmen iwwer d'Protokoller weist, déi um Router konfiguréiert sinn.

Loosst eis schafen GET Ufro:

  1. Query String:
    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. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Nodeems mir d'Ufro ausgefouert hunn, gesi mir déi folgend:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Ännert d'Konfiguratioun

Loosst eis d'Informatioun iwwer de BGP Protokoll änneren. No eisen Aktiounen wäert et esou ausgesinn:

protocols {
    bgp {
        disable;
    }
}

Loosst eis schafen PUT Ufro:

  1. Query String:
    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. Ufro Kierper (Kierper Tab):
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.
  4. Op der Header Tab musst Dir zwee Header addéieren:
    • Akzeptéieren Applikatioun / xml
    • Inhalt-Typ Applikatioun/xml

Mat der viregter GET Ufro, mir gesinn d'Ännerungen:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Läschen der Configuratioun

Loosst eis schafen läschen Ufro:

  1. Query String:
    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. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Wann genannt GET Ufro mat Informatioun iwwer d'Protokoller, gesi mir déi folgend:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Zousatz:

Fir d'Konfiguratioun z'änneren, ass et net néideg den Ufro Kierper am Format ze schécken XML. Dëst kann och am Format gemaach ginn Language.

Fir dëst ze maachen, zum Beispill, an der Ufro PUT fir d'Konfiguratioun z'änneren, ersetzt den Ufro Kierper mat:

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

Vergiesst net d'Header op der Header Tab z'änneren op:

  • Akzeptéieren Applikatioun / json
  • Content-Type Applikatioun/json

Nom Schécken kréie mir dat folgend Resultat (Mir kucken d'Äntwert mat GET Ufro):

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Deel 7: Dobäi Cisco xRV9000

Wat si mir alles iwwer Juniper, jo Juniper? Loosst eis iwwer Cisco schwätzen!
Ech hunn xRV9000 Versioun 7.0.2 fonnt (e Béischt deen 8Gb RAM brauch an 4 Kären. Et ass net fräi verfügbar, also kontaktéiert Cisco) - loosst eis et lafen.

Lafen engem Container

De Prozess fir en Docker Container ze kreéieren ass praktesch net anescht wéi Juniper. Ähnlech fale mir d'.qcow2-Datei mam Router an de Verzeichnis entspriechend sengem Numm (an dësem Fall xrv9k) an ausféieren de Kommando make docker-image.

No e puer Minutten gesi mir datt d'Bild erstallt gouf:

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

Mir starten de Container:

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

No enger Zäit kucke mir datt de Container ugefaang huet:

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

Connect iwwer 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

De Router an OpenDaylight verbannen

Adding geschitt op eng komplett ähnlech Manéier mat vMX. Mir mussen just d'Nimm änneren.
PUT Ufro:
Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Call no enger Zäit GET Ufro fir ze kontrolléieren ob alles verbonnen ass:
Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Ännert d'Konfiguratioun

Loosst eis déi folgend Konfiguratioun opsetzen:

!
router ospf LAB
 mpls ldp auto-config
!

Loosst eis schafen POST Ufro:

  1. Query String:
    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. Ufro Kierper (Kierper Tab):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.
  4. Op der Header Tab musst Dir zwee Header addéieren:
    • Akzeptéieren Applikatioun / json
    • Content-Type Applikatioun/json

No hirer Ausféierung sollten se de Status "204 No Content" kréien.

Loosst eis kucken wat mir hunn.
Fir dëst ze maachen, wäerte mir erstellen GET Ufro:

  1. Query String:
    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. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

No der Ausféierung sollt Dir déi folgend gesinn:

Automatisatioun vun Netzwierkservicer oder wéi ee virtuelle Laboratoire mat OpenDaylight, Postman a Vrnetlab bauen

Fir d'Konfiguratioun ze läschen benotzt läschen:

  1. Query String:
    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. Op der Autorisatioun Tab musst Dir de Parameter setzen Basic Auth an Login / Passwuert: admin / admin.

Konklusioun

Am Ganzen, wéi Dir vläicht gemierkt hutt, sinn d'Prozedure fir Cisco a Juniper mat OpenDaylight ze verbannen net ënnerschiddlech - dëst mécht e ganz breet Spillraum fir Kreativitéit op. Vun der Konfiguratiounsmanagement vun all Netzwierkkomponenten unzefänken a mat der Schafung vun Ärer eegener Netzwierkpolitik ophalen.
An dësem Tutorial hunn ech déi einfachst Beispiller ginn wéi Dir mat Netzwierkausrüstung mat OpenDaylight interagéiere kënnt. Ouni Zweifel kënnen d'Ufroen aus den uewe genannte Beispiller vill méi komplex gemaach ginn a ganz Servicer mat engem Mausklick opbauen - alles ass nëmme vun Ärer Fantasi limitéiert *

Fir weidergitt ...

PS

Wann Dir op eemol all dëst scho wësst oder am Géigendeel, duerchgaang an an d'Séil vum ODL ënnergaangen ass, da empfeelen ech Iech ze kucken fir Uwendungen um ODL Controller z'entwéckelen. Dir kënnt ufänken vun hei.

Erfollegräich Experimenter!

Referenzen

  1. Vrnetlab: Emuléiert Netzwierker mat KVM an Docker /Brian Linkletter
  2. OpenDaylight Cookbook / Mathieu Lemay, Alexis de Talhouet, et al
  3. Network Programmability with YANG / Benoît Claise, Loe Clarke, Jan Lindblad
  4. Léieren XML, Second Edition / Erik T. Ray
  5. Effektiv DevOps / Jennifer Davis, Ryn Daniels

Source: will.com

Setzt e Commentaire