Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Muchikamu chino, ini ndichakuratidza nzira yekumisa opendaylight kushanda nenetiweki michina, uye zvakare kuratidza mashandisiro post-man uye nyore RESTCONF zvikumbiro, midziyo iyi inogona kudzorwa. Isu hatizoshanda nehardware, asi pachinzvimbo isu tichaendesa madiki marabhoritari ane imwechete router uchishandisa Vrnetlab pamusoro Ubuntu 20.04 LTS.

Ini ndicharatidza marongero akadzama kutanga ndichishandisa muenzaniso we router Juniper vMX 20.1R1.11, uye tobva tazvienzanisa negadziriro yacho Cisco xRV9000 7.0.2.

Zviri mukati

  • Ruzivo runodiwa
  • 1 chikamu: kurukurai muchidimbu OpenDaylight (zvino ODL), post-man и Vrnetlab uye nei tichidzida
  • 2 chikamu: tsananguro yerabhoritari chaiyo
  • 3 chikamu: gadzirisa opendaylight
  • 4 chikamu: gadzirisa Vrnetlab
  • 5 chikamu: nekushandisa post-man batanidza virtual router (Juniper vMX) Ku ODL
  • 6 chikamu: tora uye shandura iyo router kumisikidza uchishandisa post-man и ODL
  • 7 chikamu: wedzera Cisco xRV9000
  • mhedziso
  • PS
  • Bibliography

Ruzivo runodiwa

Kuti chinyorwa chisashanduke kuita pepa, ini ndakasiya zvimwe zvehunyanzvi (zvine zvinongedzo kumabhuku kwaunogona kuverenga nezvazvo).

Mune izvi, ini ndinokupa iwe misoro zvingave zvakanaka (asi zvinenge zvisina basa) kuziva usati waverenga:

Chikamu 1: imwe dzidziso

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

  • Yakavhurika SDN chikuva chekutonga uye otomatiki marudzi ese ematiweki, anotsigirwa na Linux Foundation
  • Java mukati
  • Kubva paModel-Driven Service Abstraction Level (MD-SAL)
  • Inoshandisa YANG modhi kugadzira otomatiki RESTCONF APIs etiweki zvishandiso

Iyo huru module ye network manejimendi. Ndiko kuburikidza naro kuti tichataurirana nemidziyo yakabatana. Inotungamirwa kuburikidza neyayo API.

Unogona kuverenga zvakawanda nezve OpenDaylight pano.

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

  • API yekuongorora chishandiso
  • Rakareruka uye nyore kushandisa interface

Kwatiri isu, isu tiri kuifarira senzira yekutumira REST zvikumbiro kuOpenDaylight API. Iwe unogona, hongu, kutumira zvikumbiro nemaoko, asi muPostman zvese zvinotaridzika zvakajeka uye zvinoenderana nezvinangwa zvedu zvakakwana.

Kune avo vanoda kuchera: zvakawanda zvekudzidzisa zvakanyorwa pairi (somuenzaniso).

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

  • Chishandiso chekuendesa chaiwo ma routers muDocker
  • Inotsigira: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR, nezvimwe.
  • Open Source

Chiridzwa chinonakidza asi chishoma chinozivikanwa. Mune yedu, isu tichaishandisa kumhanya Juniper vMX uye Cisco xRV9000 pane yakajairwa Ubuntu 20.04 LTS.

Unogona kuverenga zvakawanda nezvazvo pa peji yeprojekiti.

Chikamu 2: Lab

Muchidzidzo ichi, isu tichagadzira inotevera system:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Sei basa iri

  • Juniper vMX inosimuka mukati Docker mudziyo (nenzira Vrnetlab) uye inoshanda seyakajairika virtual router.
  • ODL yakabatana kune router uye inokubvumira kuti uidzore.
  • post-man yakatangwa pamuchina wakasiyana uye kuburikidza nawo tinotumira mirairo ODL: kubatanidza / kubvisa router, shandura gadziriro, nezvimwe.

Commentary pane mudziyo weiyo system

Juniper vMX и ODL zvinoda zviwanikwa zvakawanda pakushanda kwavo kwakadzikama. Imwe chete vMX inokumbira 6 Gb ye RAM uye 4 cores. Naizvozvo, zvakasarudzwa kuendesa ese "heavyweights" kumuchina wakasiyana (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS) Iyo router, hongu, haina "kubhururuka" pairi, asi kuita kwakaringana kudiki kuedza.

Chikamu 3: Seta OpenDaylight

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Iyo yazvino vhezheni yeODL panguva yekunyora uku iMagnesium SR1

1) Isa Java Vhura JDK 11 (kumwe kuisirwa kwakadzama pano)

ubuntu:~$ sudo apt install default-jdk

2) Tsvaga uye dhawunirodha yazvino kuvaka ODL kubva pano
3) Unzip iyo yakadhindwa archive
4) Enda kune inoguma dhairekitori
5) Kutanga ./bin/karaf

Padanho iri ODL inofanira kutanga uye isu tichazviwana tiri mukoni (Port 8181 inoshandiswa kuwana kubva kunze, iyo yatichashandisa gare gare).

Zvadaro, install ODL Featuresyakagadzirirwa kushanda nemaprotocol NECONF и RESTCONF. Kuti uite izvi mune console ODL tinoita:

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

Iyi ndiyo yakapfava setup. ODL kupera. (Kuti uwane rumwe ruzivo, ona pano).

Chikamu 4: Kumisikidza Vrnetlab

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Kugadzirira kwehurongwa

Usati wagadzwa Vrnetlab unofanirwa kuisa mapakeji anodiwa pakushanda kwayo. Zvakaita se Docker, Git, 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

Kuisa Vrnetlab

Zvekugadzwa Vrnetlab clone iyo inoenderana repository kubva github:

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

Enda kudhairekitori vrnetlab:

ubuntu:~$ cd ~/vrnetlab

Pano iwe unogona kuona zvese zvinyorwa zvinodiwa kuti uite. Ndokumbira utarise kuti dhairekitori rinoenderana rakagadzirwa kune yega yega mhando ye 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

Gadzira mufananidzo we router

Imwe neimwe router inotsigirwa Vrnetlab, ine yayo yakasarudzika nzira yekuseta. Rini Juniper vMX tinongoda kuisa .tgz archive ne router (unogona kuidhaunirodha kubva pamutemo nzvimbo) kune vmx dhairekitori uye mhanya murairo make:

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

Kugadzira mufananidzo vMX zvinotora anenge 10-20 maminitsi. Yakwana nguva yekuenda kunotora kofi!

Sei kwenguva yakareba kudaro, iwe unobvunza?

Chinjana pindura munyori kumubvunzo uyu:

"Izvi imhaka yekuti nguva yekutanga VCP (Control Plane) yatangwa, inoverenga config file inoona kuti ichamhanya seVRR VCP muvMX. Kare, kutanga uku kwaiitwa panguva yekutanga kweDocker, asi izvi zvaireva kuti VCP. yaigara ichitangwazve kamwe chete iyo chaiyo router isati yavepo, zvichikonzera nguva yakareba yebhutsu (anenge maminetsi mashanu) Zvino kumhanya kwekutanga kweVCP kunoitwa panguva yekuvakwa kwechifananidzo cheDocker, uye sezvo iyo Docker inovaka haigone kumhanya ne - -yakaropafadzwa sarudzo, izvi zvinoreva kuti qemu inoshanda pasina KVM hardware acceleration uye nokudaro kuvaka kunotora nguva yakareba kwazvo.Mukati mekuita uku, matanda akawanda anobuda, saka iwe unogona kuona zviri kuitika.Ndinofunga kuvaka kwenguva refu. hazvisi kutyisa nekuti isu tinogadzira mufananidzo kamwe chete, asi isu tinotangisa akawanda. "

Mushure mekuona mufananidzo we router yedu mukati 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

Tangisa vr-vmx mudziyo

Tinotanga nemurairo:

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

Tevere, isu tinogona kuona ruzivo nezve anoshanda midziyo:

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

Kubatanidza kune router

Iyo IP kero ye network network ye router inogona kuwanikwa nemurairo unotevera:

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

Default, Vrnetlab inogadzira mushandisi pane router vrnetlab/VR-netlab9.
Kubatana ne 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

Izvi zvinopedzisa kuseta router.

Kurudziro yekuisa ma routers evatengesi vakasiyana siyana inogona kuwanikwa pa github chirongwa mumadhairekitori akasiyana.

Chikamu 5: Postman - batanidza iyo router kuOpenDaylight

Postman installation

Kuisa, ingo dhawunirodha application kubva pano.

Kubatanidza router kuODL

Ngatigadzirei isa chikumbiro:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

  1. Query string:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Kumbira muviri (Muviri 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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin. Izvi zvinodiwa kuti uwane iyo ODL:
    Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab
  4. Pa Headers tab, unofanirwa kuwedzera misoro miviri:
    • Gamuchira application/xml
    • Content-Type application/xml

Chikumbiro chedu chaitwa. Tinotumira. Kana zvese zvakagadziriswa nemazvo, saka isu tinofanirwa kudzorera chimiro "201 Yakagadzirwa":

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Chikumbiro ichi chinoitei?

Isu tinogadzira node mukati ODL nemaparameter eiyo router chaiyo yatinoda kuwana.

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

Aya ndiwo mazita emukati XML (XML namespace) ye ODL maererano nezvaanogadzira node.

Uyezve, maererano, zita re router ndiro node-id, router address - hondo zvichingodaro.

Mutsara unonakidza ndewekupedzisira. Schema-cache-dhairekitori inogadzira dhairekitori uko mafaera ese anotorwa YANG Schema yakabatana router. Unogona kuvawana mukati $ODL_ROOT/cache/jun01_cache.

Kuongorora kubatana kwe router

Ngatigadzirei WANA chikumbiro:

  1. Query string:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Tinotumira. Inofanirwa kugashira chimiro che "200 OK" uye rondedzero yezvose zvinotsigirwa nemudziyo YANG Schema:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

komenda: Kuti ndione iyo yekupedzisira, mune yangu zvaive zvakafanira kumirira anenge maminetsi gumi mushure mekuurayiwa isakusvikira zvose YANG schema burutsa pa ODL. Kusvika panguva ino, pakuita izvi WANA mubvunzo ucharatidza zvinotevera:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Bvisa router

Ngatigadzirei Kudzima chikumbiro:

  1. Query string:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Chikamu 6: Shandura kugadzirisa kwe router

Kuwana configuration

Ngatigadzirei WANA chikumbiro:

  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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Tinotumira. Inofanira kugamuchira chimiro "200 OK" uye router configuration:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Gadzira gadziriro

Semuenzaniso, ngatigadzirei inotevera gadziriso uye tigadzirise:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

Ngatigadzirei POST chikumbiro:

  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. Kumbira muviri (Muviri tab):
    <bgp xmlns="http://yang.juniper.net/junos/conf/protocols">
    <disable/>
    <shutdown>
    </shutdown>
    </bgp>
  3. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.
  4. Pa Headers tab, unofanirwa kuwedzera misoro miviri:
    • Gamuchira application/xml
    • Content-Type application/xml

Mushure mekutumira, vanofanirwa kugamuchira chimiro "204 Hapana Zvemukati"

Kuti uone kuti gadziriso yachinja, unogona kushandisa mubvunzo wekare. Asi semuenzaniso, isu tichagadzira imwe icharatidza ruzivo chete nezve maprotocol akagadzirirwa pane router.

Ngatigadzirei WANA chikumbiro:

  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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Mushure mekuita chikumbiro, tichaona zvinotevera:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Chinja gadziriro

Ngatichinje ruzivo nezve BGP protocol. Mushure mekuita kwedu, zvichataridzika seizvi:

protocols {
    bgp {
        disable;
    }
}

Ngatigadzirei isa chikumbiro:

  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. Kumbira muviri (Muviri tab):
    <protocols xmlns="http://yang.juniper.net/junos/conf/protocols">
    <bgp>
        <disable/>
    </bgp>
    </protocols>
  3. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.
  4. Pa Headers tab, unofanirwa kuwedzera misoro miviri:
    • Gamuchira application/xml
    • Content-Type application/xml

Kushandisa yapfuura WANA kukumbira, tinoona shanduko:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Delete configuration

Ngatigadzirei Kudzima chikumbiro:

  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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Pakufona WANA kukumbira neruzivo nezve maprotocol, tichaona zvinotevera:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Kuwedzera:

Kuti uchinje kurongeka, hazvidiwi kutumira mutumbi wekukumbira mufomati XML. Izvi zvinogona zvakare kuitwa mune fomu JSON.

Kuti uite izvi, semuenzaniso, mumubvunzo isa kuti uchinje gadziriso, tsiva iyo yekukumbira muviri ne:

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

Usakanganwa kushandura misoro pane Headers tab kuti:

  • Gamuchira application/json
  • Zvemukati-Type application/json

Mushure mekutumira, isu tinowana inotevera mhedzisiro (Tinotarisa mhinduro tichishandisa WANA chikumbiro):

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Chikamu 7: Kuwedzera iyo Cisco xRV9000

Tiri tese nezveJuniper, hongu Juniper? Ngatitaure nezveCisco!
Ndakawana xRV9000 version 7.0.2 (chikara chinoda 8Gb RAM uye 4 cores. Haisi kuwanikwa pachena, saka bata Cisco) - ngatimhanyei.

Kumhanyisa mudziyo

Maitiro ekugadzira mudziyo weDocker haana kumbosiyana neJuniper. Saizvozvowo, tinodonhedza .qcow2 faira ne router mudhairekitori inoenderana nezita rayo (munyaya iyi, xrv9k) uye shandisa murairo. make docker-image.

Mushure memaminitsi mashoma, tinoona kuti mufananidzo wagadzirwa:

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

Tinotanga mudziyo:

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

Mushure mechinguva, tinotarisa kuti mudziyo watanga:

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

Batanidza ne 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

Kubatanidza router kuOpenDaylight

Kuwedzera kunoitika nenzira yakafanana nevMX. Tinongoda kushandura mazita.
isa chikumbiro:
Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Fona mushure mechinguva WANA bvunza kutarisa kuti zvese zvakabatana:
Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Chinja gadziriro

Ngatiisei gadziriro inotevera:

!
router ospf LAB
 mpls ldp auto-config
!

Ngatigadzirei POST chikumbiro:

  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. Kumbira muviri (Muviri tab):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.
  4. Pa Headers tab, unofanirwa kuwedzera misoro miviri:
    • Gamuchira application/json
    • Zvemukati-Type application/json

Mushure mekuurayiwa kwayo, ivo vanofanirwa kugamuchira chimiro "204 Hapana Zvemukati".

Ngatitarisei zvatinazvo.
Kuti tiite izvi, tichagadzira WANA chikumbiro:

  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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

Mushure mekuita, iwe unofanirwa kuona zvinotevera:

Automation yemasevhisi etiweki kana maitiro ekuvaka rabhoritari chaiyo uchishandisa OpenDaylight, Postman uye Vrnetlab

Kuti ubvise kushandiswa kwekugadzirisa Kudzima:

  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. PaMvumo tab, unofanira kuseta parameter Basic Auth uye login/password: admin/admin.

mhedziso

Pakazara, sezvaungave waona, maitiro ekubatanidza Cisco neJuniper kuOpenDaylight haana kusiyana - izvi zvinovhura nzvimbo yakakura yekugadzira. Kutanga kubva pakugadzirisa manejimendi ezvese zvinhu zvetiweki uye kupera nekugadzira yako wega network policy.
Muchidzidzo ichi, ndapa mienzaniso yakapusa yemabatiro aungaita netiweki michina uchishandisa OpenDaylight. Pasina kupokana, iyo mibvunzo kubva pamienzaniso iri pamusoro inogona kuitwa zvakanyanya kuomarara uye kuseta masevhisi ese nekudzvanya kumwe chete kwegonzo - zvese zvinoganhurwa chete nefungidziro yako *

Zvichaenderera mberi…

PS

Kana iwe ukangoerekana watoziva zvese izvi kana, pane zvinopesana, wapfuura nekunyura mumweya weODL, saka ini ndinokurudzira kutarisa kune kugadzira maapplication pane ODL controller. Unogona kutanga kubva pano.

Kuedza kwakabudirira!

Mareferensi

  1. Vrnetlab: Emulate network uchishandisa KVM uye Docker /Brian Linkletter
  2. OpenDaylight Cookbook / Mathieu Lemay, Alexis de Talhouet, Et al
  3. Network Programmability naYANG / Benoît Claise, Loe Clarke, Jan Lindblad
  4. Kudzidza XML, Second Edition / Erik T. Ray
  5. Inoshanda DevOps / Jennifer Davis, Ryn Daniels

Source: www.habr.com

Voeg