VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Selles artiklis rÀÀgin, kuidas seadistada OpenDaylight vĂ”rgu seadmete jaoks ning nĂ€itan, kuidas nende seadmetega saab juhtida Postman ja lihtsate RESTCONF pĂ€ringutega. Me ei hakka riistvara kasutama, vaid selle asemel loome vĂ€ikese virtuaalse labori ĂŒheainsa ruuteri abil, kasutades Vrnetlab pinnal Ubuntu 20.04 LTS.

Detailse seadistuse nÀitan esmalt Juniper vMX 20.1R1.11, seejÀrel vÔrdleme seda Cisco xRV9000 7.0.2.

Sisukord

  • NĂ”utavad teadmised
  • Osa 1: arutame lĂŒhidalt OpenDaylight (edaspidi ODL), Postman ja Vrnetlab ja miks need on meile vajalikud
  • Osa 2: virtuaalse labori kirjeldus
  • Osa 3: seadistame OpenDaylight
  • Osa 4: seadistame Vrnetlab
  • Osa 5: kasutades Postman ĂŒhendame virtuaalse ruuteri (Juniper vMX) ODL
  • Osa 6: saame ja muudame ruuteri konfiguratsiooni behulp Postman ja ODL
  • Osa 7: lisame Cisco xRV9000
  • KokkuvĂ”te
  • P.S.
  • Bibliograafia

NÔutavad teadmised

Kuna artikkel ei tohiks muutuda venivaks, jĂ€tsin mĂ”ned tehnilised ĂŒksikasjad vahele (kohtadega kirjandusele, kust neid lugeda).

SeetÔttu soovitan teil teemasid, mida oleks hea (aga mitte tingimata) teada enne lugemist:

Osa 1: veidi teooriat

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

  • Ava SDN platvorm vĂ”rgu haldamiseks ja automatiseerimiseks, mida toetab Linux Foundation
  • Java sees
  • PĂ”hineb mudelipĂ”hisel teenuse abstraktsiooni tasemel (MD-SAL)
  • Kasutab YANG mudeleid vĂ”rguseadmete RESTCONF API automaatseks genereerimiseks

Peamine moodul vĂ”rgu haldamiseks. Just selle kaudu me suhtleme ĂŒhendatud seadmetega. Halduse oma API kaudu.

LĂ€hemalt OpenDaylighti kohta saab lugeda siin.

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

  • API testimise tööriist
  • Lihtne ja mugav kasutada

Meie puhul on see huvitav, kuna see on vahend REST pÀringute saatmiseks OpenDaylight API-le. Loomulikult saab ka kÀsitsi pÀringuid saata, aga Postmanis nÀeb kÔik vÀga visuaalselt vÀlja ja meie eesmÀrkide jaoks on see parim valik.

Neile, kes soovivad sĂŒveneda: selle kohta on kirjutatud palju Ă”ppematerjale (nĂ€iteks).

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

  • Virtuaalsete ruuterite loomiseks Dockeris mĂ”eldud tööriist
  • Toetab: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR jpt.
  • Open Source

VÀga huvitav, kuid vÀhe tuntud tööriist. Meie puhul kÀivitame selle abil Juniper vMX ja Cisco xRV9000 tavalise Ubuntu 20.04 LTS.

Selle kohta saab lÀhemalt lugeda projekti lehel.

Osa 2: laboritöö

Selle Ă”petuse raames seadistame jĂ€rgmise sĂŒsteemi:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Kuidas see töötab

  • Juniper vMX tĂ”useb Docker konteineris (lastele Vrnetlab) ja töötab nagu tavaline virtuaalne ruuter.
  • ODL ĂŒhendatud ruuteriga ja vĂ”imaldab selle haldamist.
  • Postman kĂ€ivitub eraldi masinas ja selle kaudu saadame kĂ€ske ODL: ruuteri ĂŒhendamiseks/eraldamiseks, seadistuse muutmiseks jne.

SĂŒsteemi seadme kommentaar

Juniper vMX ja ODL nĂ”uavad oma stabiilseks tööks ĂŒsna palju ressursse. Üksnes vMX nĂ”uab 6 Gb RAM-i ja 4 tuuma. SeetĂ”ttu otsustati kĂ”ik "raskeid" masinad viia eraldi masinasse (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). Ruuter, muidugi, ei "lendle" seal, kuid vĂ€ikeste katsete jaoks piisab jĂ”udlusest.

Osa 3: seadistame OpenDaylight

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Oluline versioon ODL-i artikli kirjutamise ajal — Magnesium SR1

1) Installi Java OpenJDK 11 (rohkema info saamiseks installimise kohta siia)

ubuntu:~$ sudo apt install default-jdk

2) Otsi ja laadi alla uusim kogu ODL siit
3) Paki lahti alla laaditud arhiiv
4) Mine saadud katalooge
5) KĂ€ivita ./bin/karaf

Sel samal sammul ODL peaks kÀivituma ja me satume konsooli (VÀljastpoolt ligipÀÀsuks kasutatakse porti 8181, millest me hiljem kasu saame).

SeejÀrel installime ODL funktsioonid, mis on mÔeldud protokollidega töötamiseks. NETCONF ja RESTCONFSelleks konsoolis ODL tÀidame:

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

Selle lihtne seadistamine ODL on lÔpetatud. (Rohkemate detailide lugemiseks vaata siin).

Osa 4: seadistame Vrnetlab

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

SĂŒsteemi ettevalmistamine

Enne installimist Vrnetlab on vajalik paigaldada vajalikud paketid. Nagu 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 -
ubunti:~$ 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'i installimine

Paigaldamiseks Vrnetlab kloneerime vastava reposti githubist:

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

Liigume kausta vrnetlab:

ubuntu:~$ cd ~/vrnetlab

Siin on kĂ”ik skriptid, mis vajalikud kĂ€ivitamiseks. Pange tĂ€hele, et iga tĂŒĂŒpi ruuteri jaoks on tehtud vastav kataloog:

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

Loome me reituri image

Iga toetatud ruuter Vrnetlab, omab oma ainulaadset seadistamisprotseduuri. Juhul kui Juniper vMX on piisav, et visata .tgz arhiiv ruuteriga (saate selle alla laadida ametlikult veebisaidilt) vmx kausta ja kÀivitada kÀsu tee:

ubuntu:~$ cd ~\/vrnetlab\/vmx
ubuntu:~$ # Kopeerime sellesse kausta .tgz arhiivi ruuteriga
ubuntu:~$ sudo make

Pildi koostamine vMX vÔtab umbes 10-20 minutit. Liikuda on paras aeg kohvi valmistama!

Aga miks see nii kaua aega vĂ”tab, kĂŒsid sa?

TĂ”lge vastus autori kĂŒsimusele:

"See on seotud sellega, et VCP (Control Plane) esmakordsel kĂ€ivitamisel loeb see konfigureerimise faili, mis mÀÀrab, kas see töötab VRR VCP-na vMX-is. Varasemalt toimus see kĂ€ivitamine Dockeris kĂ€ivitamise ajal, aga see tĂ€hendas, et VCP taaskĂ€ivitati alati ĂŒhe korra, enne kui virtuaalne ruuter muutus kĂ€ttesaadavaks, mis tĂ”i kaasa pika laadimisaaja (umbes 5 minutit). NĂŒĂŒd toimub VCP esimene kĂ€ivitamine Docker image'i kokkupanemise ajal ja kuna Docker image'i kokkupanekut ei saa kĂ€ivitada --privileged parameetriga, tĂ€hendab see, et qemu töötab ilma KVM-i riistvarakiiruseta ja seega vĂ”tab kokkupanek vĂ€ga kaua aega. Selle protsessi ajal vĂ€ljastatakse palju logisid, nii et vĂ€hemalt saate nĂ€ha, mis toimub. Ma arvan, et pika kokkupaneku aeg ei ole nii hirmus, sest me loome image'i ainult ĂŒks kord, aga kĂ€ivitame seda palju."

Hiljem saa nÀha meie ruuteri imaget 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

KĂ€ivitame konteineri vr-vmx

KÀivitame kÀsuga:

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

Edasi saame vaadata aktiivsete konteinerite teavet:

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

Ühendame ruuteriga

Ruuteri vÔrgu liidese IP-aadressi saab jÀrgmise kÀsu abil:

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

Vaikimisi, Vrnetlab loob kasutaja ruuteri vrnetlab/VR-netlab9.
Ühendame ssh:

ubuntu:~$ ssh vrnetlab@172.17.0.2
Host '172.17.0.2 (172.17.0.2)' tÔepÀrasust ei saa kindlaks teha.
ECDSA vÔtme sÔrmejÀlg on SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Kas soovite jĂ€tkata ĂŒhenduse loomist (jah/ei/[sĂ”rmejĂ€lg])? jah
Hoiatus: '172.17.0.2' (ECDSA) on pĂŒsivalt lisatud tuntud hostide nimekirja.
Parool:
--- JUNOS 20.1R1.11 Kernel 64-bit  JNPR-11.0-20200219.fb120e7_buil
vrnetlab> nÀita versiooni
Mudel: vmx
Junos: 20.1R1.11

Sellega on ruuteri seadistamine lÔpetatud.

Erinevate tootjate ruuteri installimise soovitused on saadaval github projekti vastavates kataloogides.

Osa 5: Postman — ĂŒhendame ruuteri OpenDaylightiga

Postmani installimine

Rakenduse allalaadimiseks piisab selle allalaadimisest siit.

Ruuteri ĂŒhendamine ODL-iga

Loome PUT pÀring:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

  1. PĂ€ringu rida:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. PĂ€ringu sisu (Body vahekaart):
    <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">vale</tcp-only>
    <schema-cache-directory xmlns="urn:opendaylight:netconf-node-topology">jun01_cache</schema-cache-directory>
    </node>
  3. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin. See on vajalik ODL-le juurdepÀÀsuks:
    VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil
  4. Pealkirjade vahekaardil tuleb lisada kaks pÀist:
    • Accept application/xml
    • Content-Type application/xml

Meie pÀring on koostatud. Saadame selle. Kui kÔik on Ôigesti seadistatud, peaksime saama staatuse "201 Created":

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Mida see pÀring teeb?

Loome node'i ODL reaalse ruuteri parameetritega, millele soovime juurde pÀÀseda.

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

Need on sisestruktuurid filestream (XML nimeruum) mille alusel ODL loomise node.

Edasi, ruuteri nimi on node-id, ruuteri aadress — host jne.

KĂ”ige huvitavam rida on viimane. Schema-cache-directory loo kataloog, kuhu laaditakse alla kĂ”ik YANG Schema ĂŒhendatud ruuterilt. Need leiab aadressilt $ODL_ROOT/cache/jun01_cache.

Kontrollime ruuteri ĂŒhendust

Loome GET pÀring:

  1. PĂ€ringu rida:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

Saadame. Peame saama staatuse "200 OK" ja loetelu kÔigist seadme toetatud YANG Schema:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Kommentaar: Et nÀha viimast, pidin ma oma puhul ootama umbes 10 minutit pÀrast sooritamist PUT, kuni kÔik YANG schéma laetakse alla ODL. Kuni selle ajani, kui see GET pÀringut tehakse, kuvatakse jÀrgmist:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Kustutame ruuteri

Loome DELETE pÀring:

  1. PĂ€ringu rida:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

Jagu 6: Muudame ruuteri konfiguratsiooni

Saame konfiguratsiooni

Loome GET pÀring:

  1. PĂ€ringu rida:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

Saadame. Peame saama staatuse "200 OK" ja ruuteri konfiguratsiooni:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Loome konfiguratsiooni

NÀiteks loome jÀrgmise konfiguratsiooni ja muudame seda:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

Loome POST pÀring:

  1. PĂ€ringu rida:
    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. PĂ€ringu sisu (Body vahekaart):
  3. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.
  4. Pealkirjade vahekaardil tuleb lisada kaks pÀist:
    • Accept application/xml
    • Content-Type application/xml

PĂ€rast saatmist peame saama staatuse "204 No Content"

Konfiguratsiooni muutuste kontrollimiseks vĂ”ime kasutada eelmist pĂ€ringut. Kuid nĂ€iteks loome veel ĂŒhe, mis toob meile teavet ainult ruuteris konfigureeritud protokollide kohta.

Loome GET pÀring:

  1. PĂ€ringu rida:
    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. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

PÀrast pÀringu sooritamist nÀeme jÀrgmist:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Muudame konfiguratsiooni

Muudame BGP protokolli teavet. PÀrast meie muudatusi nÀeb see vÀlja jÀrgmiselt:

protocols {
    bgp {
        disable;
    }
}

Loome PUT pÀring:

  1. PĂ€ringu rida:
    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. PĂ€ringu sisu (Body vahekaart):
  3. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.
  4. Pealkirjade vahekaardil tuleb lisada kaks pÀist:
    • Accept application/xml
    • Content-Type application/xml

Kasutades eelmist GET pÀringut, nÀeme muudatusi:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Kustutame konfiguratsiooni

Loome DELETE pÀring:

  1. PĂ€ringu rida:
    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. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

PÀringu tegemisel, mis sisaldab teavet protokollide kohta, nÀeme jÀrgmist: GET Et muudetud konfiguratsiooni saata, ei pea me pÀringu keha saatma vormingus

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

TĂ€iendamine:

. Seda saab teha ka vormingus filestreamSelleks asendame nÀiteks konfiguratsiooni muutmise pÀringus kehaks: JSON.

{ "junos-conf-protocols:protocols": { "bgp": { "description" : "Muudetud postmanis" } } } PUT Ärge unustage vahekaardil Headers pealkirju muuta jĂ€rgmiseks:

Accept application/json

Content-Type application/json

  • Accept application/json
  • Content-Type application/json

PÀrast saatmist saame jÀrgmise tulemuse (Vastust vaatame, kasutades GET pÀringut):

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Osa 7: lisame Cisco xRV9000

Miks me kÔik rÀÀgime Juniperist? RÀÀgime parem Cisco'st!
Mul on xRV9000 versioon 7.0.2 (loom, mille jaoks on vajalik 8Gb RAM ja 4 tuuma. See pole vabalt kĂ€ttesaadav, seega pöörduge Cisco) — selle me ka kĂ€ivitame.

Konteineri kÀivitamine

Docker konteineri loomise protsess ei erine praktiliselt Juniperist. Sarnaselt, paneme .qcow2 faili marsruutijaga vastavasse direktoriumi (antud juhul xrv9k) ja kÀivitame kÀsu make docker-image.

MÔne minuti pÀrast nÀeme, et pilt on loodud:

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

KĂ€ivitame konteineri:

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

MÔne aja pÀrast vaatame, et konteiner on kÀivitunud:

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

Ühendame ssh kaudu:

ubuntu@ubuntu:~$ ssh vrnetlab@172.17.0.2
Parool:

RP/0/RP0/CPU0:ios#show version
Esmasp  6. juulil 12:19:28.036 UTC
Cisco IOS XR tarkvara, versioon 7.0.2
KĂ€ib arendus:
 Valmistaja     : ahoang
 Valmistatud   : Reede, 13. mÀrts 22:27:54 PDT 2020
 Valmistamiskoht: iox-ucs-029
 Tööruum       : /auto/srcarchive15/prod/7.0.2/xrv9k/ws
 Versioon       : 7.0.2
 Asukoht       : /opt/cisco/XR/packages/
 Label         : 7.0.2

cisco IOS-XRv 9000 () protsessor
SĂŒsteemi tööaeg on 3 tundi 22 minutit.

Ühendame marsruutija OpenDaylight'iga

Lisamine toimub tÀpselt samamoodi nagu vMX kujul. Ainult nimed tuleb vahetada.
PUT pÀring:
VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

MĂ”ne aja pĂ€rast kutsume GET pĂ€ringut, et kontrollida, kas kĂ”ik on ĂŒhendatud:
VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Muudame konfiguratsiooni

Seame jÀrgmise konfiguratsiooni:

!
router ospf LAB
 mpls ldp auto-config
!

Loome POST pÀring:

  1. PĂ€ringu rida:
    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. PĂ€ringu sisu (Body vahekaart):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.
  4. Pealkirjade vahekaardil tuleb lisada kaks pÀist:
    • Accept application/json
    • Content-Type application/json

PÀrast selle tÀitmist peaksime saama staatuse "204 No Content".

Kontrollime, mis meil vÀlja tuli.
Selleks loome GET pÀring:

  1. PĂ€ringu rida:
    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. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

PÀrast tÀitmist peaksite nÀgema jÀrgmist:

VÔrguteenuste automatiseerimine vÔi kuidas luua virtuaalne labor OpenDaylighti, Postmani ja Vrnetlabi abil

Konfiguratsiooni eemaldamiseks kasutame DELETE:

  1. PĂ€ringu rida:
    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. Autentimise vahekaardil tuleb seada parameeter Basic Auth ja kasutajanimi/parool: admin/admin.

KokkuvÔte

KokkuvĂ”ttes, nagu te olete vĂ”inud mĂ€rgata, ei erine Cisco ja Juniperi ĂŒhendamise protseduurid OpenDaylightis — see avab ĂŒsna palju loovuse vĂ”imalusi. Alates kogu vĂ”rgu komponentide konfiguratsioonide haldamisest kuni oma vĂ”rgu poliitikate loomise vĂ”imalusteni.
Selles Ă”petuses olen toonud lihtsaimad nĂ€ited, kuidas saab suhtuda vĂ”rguseadmetesse OpenDaylighti abil. Ilmselt on eespool toodud pĂ€ringud oluliselt keerukamad ja kogu teenuse seadistamine on vaid hiireklĂ”psu kaugusel — kĂ”ik on piiratud ainult teie kujutlusvĂ”imega.

JĂ€tkub


P.S.

Kui te juba kÔike seda teate vÔi kui OpenDaylight on teid huvitatud, siis soovitan vaadata ODL kontrolleril rakenduste arendamise poole. Alustada vÔib siit.

Edukat katsetamist!

Allikate loetelu

  1. Vrnetlab: TÔeliste vÔrkude emulatsioon KVMi ja Dockeri abil / Brian Linkletter
  2. OpenDaylight Cookbook / Mathieu Lemay, Alexis de Talhouet, Et al
  3. VÔrgu programmeeritavus YANGiga / Benoßt Claise, Loe Clarke, Jan Lindblad
  4. XML-i Ôppimine, teine vÀljaanne / Erik T. Ray
  5. Efektiivne DevOps / Jennifer Davis, Ryn Daniels

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster