Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Yn dit artikel sil ik jo sjen litte hoe't jo ynstelle iepen deiljocht om te wurkjen mei netwurk apparatuer, en ek sjen litte hoe te brûken Postrinner en ienfâldich RESTCONF fersiken, dizze apparatuer kin wurde kontrolearre. Wy sille net wurkje mei hardware, mar ynstee sille wy ynsette lytse firtuele laboratoaria mei in inkele router brûkend Vrnetlab flier Ubuntu 20.04 LTS.

Ik sil earst de detaillearre ynstellingen sjen litte mei it foarbyld fan in router Juniper vMX 20.1R1.11, en dan ferlykje wy it mei de ynstelling Cisco xRV9000 7.0.2.

Ynhâld

  • Fereaske kennis
  • Part fan 1: beprate koart OpenDaylight (hjirnei ODL), Postrinner и Vrnetlab en wêrom hawwe wy se nedich
  • Part fan 2: beskriuwing fan it firtuele laboratoarium
  • Part fan 3: oanpasse iepen deiljocht
  • Part fan 4: oanpasse Vrnetlab
  • Part fan 5: troch te brûken Postrinner ferbine firtuele router (Juniper vMX) Oan ODL
  • Part fan 6: krije en feroarje de router konfiguraasje mei help Postrinner и ODL
  • Part fan 7: tafoegje Cisco xRV9000
  • konklúzje
  • PS
  • Bibliografy

Fereaske kennis

Om it artikel net yn in blêd te feroarjen haw ik wat technyske details weilitten (mei keppelings nei literatuer dêr't jo oer lêze kinne).

Yn dit ferbân bied ik jo ûnderwerpen oan dy't it goed wêze soe (mar hast net nedich) om te witten foar it lêzen:

Diel 1: wat teory

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

  • In iepen SDN-platfoarm foar it behearen en automatisearjen fan alle soarten netwurken, stipe troch Linux Foundation
  • Java binnen
  • Basearre op Model-Driven Service Abstraksjenivo (MD-SAL)
  • Brûkt YANG-modellen om automatysk RESTCONF API's te generearjen foar netwurkapparaten

De wichtichste module foar netwurk behear. It is dêrtroch dat wy sille kommunisearje mei ferbûne apparaten. Beheard fia syn eigen API.

Jo kinne mear lêze oer OpenDaylight hjir.

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

  • API test ark
  • Ienfâldige en maklik te brûken ynterface

Yn ús gefal binne wy ​​​​ynteressearre as in middel foar it ferstjoeren fan REST-oanfragen nei de OpenDaylight API. Jo kinne fansels fersiken manuell ferstjoere, mar yn Postman sjocht alles heul dúdlik en past perfekt by ús doelen.

Foar wa't grave wol: der is in soad trainingsmateriaal op skreaun (bygelyks).

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

  • Tool foar it ynsetten fan firtuele routers yn Docker
  • Unterstützt: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR, ensfh.
  • Open Source

In tige nijsgjirrich mar min bekend ynstrumint. Yn ús gefal sille wy it brûke om Juniper vMX en Cisco xRV9000 út te fieren op in gewoane Ubuntu 20.04 LTS.

Jo kinne der mear oer lêze op projekt side.

Diel 2: Lab

Yn dizze tutorial sille wy it folgjende systeem ynstelle:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Hoe docht dit wurk

  • Juniper vMX komt yn Havenarbeider container (troch middels Vrnetlab) en funksjonearret as de meast foarkommende firtuele router.
  • ODL ferbûn mei de router en kinne jo kontrolearje it.
  • Postrinner lansearre op in aparte masine en dêrtroch stjoere wy kommando's ODL: om de router te ferbinen / te ferwiderjen, de konfiguraasje te feroarjen, ensfh.

Kommentaar op it apparaat fan it systeem

Juniper vMX и ODL fereaskje nochal in soad middels foar harren stabile operaasje. Allinne ien vMX freget om 6 Gb RAM en 4 kearnen. Dêrom waard besletten om alle "swiergewichten" te ferpleatsen nei in aparte masine (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). De router, fansels, "fleant" der net op, mar de prestaasje is genôch foar lytse eksperiminten.

Diel 3: OpenDaylight ynstelle

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

De hjoeddeistige ferzje fan ODL op it stuit fan dit skriuwen is Magnesium SR1

1) Ynstallearje Java Iepenje JDK 11 (foar mear detaillearre ynstallaasje hjir)

ubuntu:~$ sudo apt install default-jdk

2) Fyn en download de lêste build ODL fan hjir
3) Unzip it ynladen argyf
4) Gean nei de resultearjende map
5) Start ./bin/karaf

Op dizze stap ODL moatte begjinne en wy sille ússels yn 'e konsole fine (Port 8181 wurdt brûkt foar tagong fan bûten, dy't wy letter sille brûke).

Folgjende, ynstallearje ODL Featuresûntworpen om te wurkjen mei protokollen Netconf и RESTCONF. Om dit te dwaan yn 'e konsole ODL wy útfiere:

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

Dit is de ienfâldichste opset. ODL foltôge. (Foar mear details, sjoch hjir).

Diel 4: Vrnetlab ynstelle

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Systeem tarieding

Foardat ynstallaasje Vrnetlab jo moatte de pakketten ynstallearje dy't nedich binne foar de operaasje. Lykas Havenarbeider, gean, 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

Vrnetlab ynstallearje

Foar ynstallaasje Vrnetlab klon it oerienkommende repository fan github:

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

Gean nei triemtafel vnetlab:

ubuntu:~$ cd ~/vrnetlab

Hjir kinne jo alle skripts sjen dy't nedich binne om te rinnen. Tink derom dat in oerienkommende map is makke foar elk type router:

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

Meitsje in ôfbylding fan 'e router

Elke router dy't wurdt stipe Vrnetlab, hat syn eigen unike opsetproseduere. Wannear Juniper vMX wy moatte gewoan it .tgz-argyf uploade mei de router (jo kinne it downloade fan offisjele webstee) nei de vmx-map en fier it kommando út make:

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

It bouwen fan in byld vMX sil sa'n 10-20 minuten nimme. It is tiid om te gean wat kofje!

Wêrom sa lang, freegje jo?

Oerbringe antwurd skriuwer op dizze fraach:

"Dit is om't de earste kear dat de VCP (Control Plane) begon is, lêst it in konfiguraasjetriem dy't bepaalt oft it as in VRR VCP yn vMX rint. Earder waard dizze lansearring dien by it opstarten fan Docker, mar dit betsjutte dat de VCP waard altyd ien kear opnij starte foardat de firtuele router beskikber waard, wat resultearre yn in lange opstarttiid (sawat 5 minuten) No wurdt de earste run fan 'e VCP dien tidens it bouwen fan' e Docker-ôfbylding, en om't de Docker-build net kin wurde útfierd mei de - -privileged opsje, dit betsjut dat qemu wurket sûnder KVM hardware fersnelling en dus de bou duorret in hiel lange time.During dit proses, in protte logs wurde útfier, dus op syn minst kinne jo sjen wat der bart. Ik tink in lange build is net sa eng, om't wy ien kear in byld meitsje, mar wy lansearje in protte."

Na kinne jo sjen de ôfbylding fan ús router yn Havenarbeider:

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

Launch vr-vmx container

Wy begjinne mei it kommando:

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

Folgjende kinne wy ​​​​ynformaasje sjen oer aktive konteners:

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

Ferbine mei de router

It IP-adres fan 'e netwurkynterface fan' e router kin wurde krigen mei it folgjende kommando:

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

Standert, Vrnetlab makket in brûker op de router vnetlab/VR-netlab9.
Ferbining mei 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

Dit foltôget de routerkonfiguraasje.

Ynstallaasje oanbefellings foar routers fan ferskate leveransiers kinne fûn wurde op github projekt yn de respektivelike mappen.

Diel 5: Postman - ferbine de router mei OpenDaylight

Postman ynstallaasje

Om te ynstallearjen, download gewoan de applikaasje fan hjir.

Ferbine in router nei ODL

Lit ús meitsje put fersyk:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

  1. Query string:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Fersyk lichem (ljepper Body):
    <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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin. Dit is nedich om tagong te krijen ta de ODL:
    Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab
  4. Op it ljepblêd Kopteksten moatte jo twa kopteksten tafoegje:
    • Akseptearje applikaasje / xml
    • Ynhâld-Type applikaasje/xml

Us fersyk is dien. Wy stjoere. As alles goed konfigurearre is, dan moatte wy de status "201 oanmakke" weromjaan:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Wat docht dit fersyk?

Wy meitsje node binnen ODL mei de parameters fan 'e echte router dy't wy tagong wolle.

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

Dit binne ynterne nammeromten XML (XML nammeromte) foar ODL neffens dêr't it skept node.

Fierder is respektivelik de namme fan 'e router node-id, router adres - gasthear en sa fierder.

De meast nijsgjirrige line is de lêste. Skema-cache-map makket in map dêr't alle triemmen wurde ynladen YANG Schema ferbûn router. Jo kinne se fine yn $ODL_ROOT/cache/jun01_cache.

Kontrolearje de ferbining fan 'e router

Lit ús meitsje KRIJE fersyk:

  1. Query string:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. Op it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Wy stjoere. Moat in status krije fan "200 OK" en in list fan alle stipe troch it apparaat YANG Schema:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

reaksje: Om it lêste te sjen, wie it yn myn gefal nedich om sa'n 10 minuten nei de eksekúsje te wachtsjen putoant allegear YANG skema unload oan ODL. Oant dit punt, by it útfieren fan dit KRIJE query sil it folgjende sjen litte:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Wiskje de router

Lit ús meitsje DELETE fersyk:

  1. Query string:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Op it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Diel 6: Feroarje de router konfiguraasje

It krijen fan de konfiguraasje

Lit ús meitsje KRIJE fersyk:

  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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Wy stjoere. Moatte de status "200 OK" krije en de routerkonfiguraasje:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Meitsje in konfiguraasje

Litte wy as foarbyld de folgjende konfiguraasje oanmeitsje en it wizigje:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

Lit ús meitsje PEAL fersyk:

  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. Fersyk lichem (ljepper Body):
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. Op it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.
  4. Op it ljepblêd Kopteksten moatte jo twa kopteksten tafoegje:
    • Akseptearje applikaasje / xml
    • Ynhâld-Type applikaasje/xml

Nei it ferstjoeren moatte se de status krije "204 Gjin ynhâld"

Om te kontrolearjen dat de konfiguraasje feroare is, kinne jo de foarige query brûke. Mar bygelyks sille wy in oare meitsje dy't allinich ynformaasje sil werjaan oer de protokollen konfigureare op 'e router.

Lit ús meitsje KRIJE fersyk:

  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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Nei it útfieren fan it fersyk sille wy it folgjende sjen:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Feroarje de konfiguraasje

Litte wy de ynformaasje feroarje oer it BGP-protokol. Nei ús aksjes sil it der sa útsjen:

protocols {
    bgp {
        disable;
    }
}

Lit ús meitsje put fersyk:

  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. Fersyk lichem (ljepper Body):
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. Op it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.
  4. Op it ljepblêd Kopteksten moatte jo twa kopteksten tafoegje:
    • Akseptearje applikaasje / xml
    • Ynhâld-Type applikaasje/xml

Mei help fan de foarige KRIJE fersyk, wy sjogge de feroaringen:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Wiskje de konfiguraasje

Lit ús meitsje DELETE fersyk:

  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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Wannear't neamd KRIJE fersykje mei ynformaasje oer de protokollen, sille wy it folgjende sjen:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Oanfolling:

Om de konfiguraasje te feroarjen, is it net nedich om it fersyklichem yn it formaat te stjoeren XML. Dit kin ek dien wurde yn it formaat JSON.

Om dit te dwaan, bygelyks yn 'e query put om de konfiguraasje te feroarjen, ferfange it fersyklichem mei:

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

Ferjit net de kopteksten op it ljepblêd Kopteksten te feroarjen nei:

  • Akseptearje applikaasje / json
  • Ynhâld-Type applikaasje/json

Nei it ferstjoeren krije wy it folgjende resultaat (Wy sjogge nei it antwurd mei KRIJE fersyk):

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Diel 7: It tafoegjen fan de Cisco xRV9000

Wat binne wy ​​allegear oer Juniper, ja Juniper? Lit ús prate oer Cisco!
Ik fûn xRV9000 ferzje 7.0.2 (in bist dat moat 8Gb RAM en 4 kearnen. It is net frij beskikber, dus kontakt Cisco) - litte wy it útfiere.

It útfieren fan in kontener

It proses fan it meitsjen fan in Docker-kontener is praktysk net oars as Juniper. Op deselde manier falle wy de .qcow2-bestân mei de router yn 'e map dy't oerienkomt mei syn namme (yn dit gefal, xrv9k) en fiere it kommando út make docker-image.

Nei in pear minuten sjogge wy dat de ôfbylding is makke:

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

Wy begjinne de kontener:

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

Nei in skoftke sjogge wy dat de kontener begon is:

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

Ferbine fia 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 ferbine mei OpenDaylight

It tafoegjen bart op in folslein ferlykbere manier mei vMX. Wy moatte gewoan de nammen feroarje.
put fersyk:
Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Belje nei in skoftke KRIJE query om te kontrolearjen dat alles ferbûn is:
Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Feroarje de konfiguraasje

Litte wy de folgjende konfiguraasje ynstelle:

!
router ospf LAB
 mpls ldp auto-config
!

Lit ús meitsje PEAL fersyk:

  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. Fersyk lichem (ljepper Body):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. Op it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.
  4. Op it ljepblêd Kopteksten moatte jo twa kopteksten tafoegje:
    • Akseptearje applikaasje / json
    • Ynhâld-Type applikaasje/json

Nei syn útfiering moatte se de status krije "204 Gjin ynhâld".

Lit ús kontrolearje wat wy krigen.
Om dit te dwaan, sille wy meitsje KRIJE fersyk:

  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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

Nei útfiering moatte jo it folgjende sjen:

Automatisearring fan netwurktsjinsten of hoe't jo in firtuele laboratoarium bouwe mei OpenDaylight, Postman en Vrnetlab

Om de konfiguraasje te ferwiderjen brûke DELETE:

  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 it tabblêd Autorisaasje moatte jo de parameter ynstelle Basic Auth en oanmelde / wachtwurd: admin / admin.

konklúzje

Yn totaal, lykas jo miskien hawwe opfallen, ferskille de prosedueres foar it ferbinen fan Cisco en Juniper oan OpenDaylight net - dit iepenet in frijwat brede romte foar kreativiteit. Begjin fan konfiguraasjebehear fan alle netwurkkomponinten en einigje mei it meitsjen fan jo eigen netwurkbelied.
Yn dizze tutorial haw ik de ienfâldichste foarbylden jûn fan hoe't jo kinne ynteraksje mei netwurkapparatuer mei OpenDaylight. Sûnder twifel kinne de fragen fan boppesteande foarbylden folle komplekser wurde makke en folsleine tsjinsten ynstelle mei ien mûsklik - alles wurdt allinich beheind troch jo ferbylding *

Oanhâlde wurde ...

PS

As jo ​​dit alles ynienen al witte of, krekt oarsom, trochgien binne en yn 'e siel fan ODL ferdwûn binne, dan advisearje ik te sykjen nei it ûntwikkeljen fan applikaasjes op 'e ODL-controller. Jo kinne begjinne fan hjir.

Súksesfolle eksperiminten!

Referinsjes

  1. Vrnetlab: Emulearje netwurken mei KVM en Docker /Brian Linkletter
  2. OpenDaylight Cookbook / Mathieu Lemay, Alexis de Talhouet, et al
  3. Netwurkprogrammearring mei YANG / Benoît Claise, Loe Clarke, Jan Lindblad
  4. Learning XML, twadde edysje / Erik T. Ray
  5. Effektive DevOps / Jennifer Davis, Ryn Daniels

Boarne: www.habr.com

Add a comment