Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

În acest articol, vă voi arăta cum să configurați OpenDaylight pentru a lucra cu echipamentele de rețea, și voi demonstra cum, folosind Postman și comenzi simple RESTCONF se poate gestiona acest echipament. Nu vom lucra cu hardware-ul, ci vom crea laboratoare virtuale mici cu un singur router folosind Vrnetlab deasupra Ubuntu 20.04 LTS.

Voi demonstra configurația pe un exemplu de router Juniper vMX 20.1R1.11, iar apoi vom compara această configurație cu cea a Cisco xRV9000 7.0.2.

Cuprins

  • Cunoștințe necesare
  • Partea 1: discutăm pe scurt despre OpenDaylight (în continuare ODL), Postman și Vrnetlab și de ce avem nevoie de ele
  • Partea 2: descrierea laboratorului virtual
  • Partea 3: configurăm OpenDaylight
  • Partea 4: configurăm Vrnetlab
  • Partea 5: folosind Postman connectăm routerul virtual (Juniper vMX) la ODL
  • Partea 6: obținem și modificăm configurația routerului folosind Postman și ODL
  • Partea 7: adăugăm Cisco xRV9000
  • Concluzie
  • P.S.
  • Lista de literatură

Cunoștințe necesare

Pentru a evita ca articolul să devină o pledoarie, am omis unele detalii tehnice (cu linkuri către literatură unde se poate citi despre acestea).

De aceea, vă propun teme care ar fi bine să le cunoașteți (dar nu sunt absolut necesare) înainte de lectură:

Partea 1: puțină teorie

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

  • Platformă SDN deschisă pentru management și automatizare a diverselor rețele, susținută de al Linux Foundation
  • Java inside
  • Bazată pe Model-Driven Service Abstraction Level (MD-SAL)
  • Folosește modele YANG pentru a genera automat API RESTCONF pentru dispozitivele de rețea

Modulul principal pentru gestionarea rețelei. Precis prin el vom comunica cu dispozitivele conectate. Este gestionat prin propria sa API.

Pentru mai multe detalii despre OpenDaylight, puteți citi aici.

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

  • Instrument pentru testarea API-ului
  • Interfață simplă și ușor de folosit

În cazul nostru, este relevant ca un mijloc de a trimite cereri REST către API-ul OpenDaylight. Dacă doriți, puteți trimite cereri manual, dar în Postman totul arată foarte clar și se potrivește perfect pentru scopurile noastre.

Pentru cei care doresc să se aprofundeze: există multe materiale didactice scrise despre el (de exemplu).

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

  • Instrument pentru desfășurarea routerelor virtuale în Docker
  • Susține: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR etc.
  • Open Source

Un instrument foarte interesant, dar puțin cunoscut. În cazul nostru, cu ajutorul său vom rula Juniper vMX și Cisco xRV9000 pe o Ubuntu 20.04 LTS obișnuită.

Puteți citi mai multe despre el pe pagina proiectului.

Partea 2: muncă de laborator

În cadrul acestui tutorial, vom configura următorul sistem:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Cum funcționează

  • Juniper vMX care se va desfășura în Docker container (prin mijloace Vrnetlab) și funcționează ca un router virtual obișnuit.
  • ODL conectat la router și permite gestionarea acestuia.
  • Postman rulând pe o mașină separată, prin care trimitem comenzi ODL: pentru conectarea/dezactivarea routerului, modificarea configurației etc.

Comentariul pentru dispozitivul sistemului

Juniper vMX și ODL cere destul de multe resurse pentru funcționarea sa stabilă. Doar vMX solicită 6 Gb de memorie RAM și 4 nuclee. Prin urmare, s-a decis să mutăm toți „greii” pe o mașină separată (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). Routerul, desigur, nu „zboară” pe ea, dar pentru experimentele mici performanța este suficientă.

Partea 3: configurăm OpenDaylight

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Versiunea actuală ODL la momentul redactării acestui articol — Magnesium SR1

1) Instalăm Java OpenJDK 11 (pentru detalii suplimentare despre instalare aici)

ubuntu:~$ sudo apt install default-jdk

2) Găsim și descărcăm cea mai recentă versiune ODL de aici
3) Dezarhivăm arhiva descărcată
4) Trecem în directorul obținut
5) Rulăm .\/bin\/karaf

În acest pas ODL ar trebui să pornească și ne vom afla în consolă (pentru acces extern se folosește portul 8181, de care ne vom folosi ulterior).

Apoi instalăm ODL Features, destinate lucrului cu protocoale NETCONF și RESTCONF. Pentru aceasta, în consolă ODL executăm:

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

Aici, cea mai simplă configurare ODL este finalizată. (Mai multe detalii pot fi citite aici).

Partea 4: configurăm Vrnetlab

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Pregătirea sistemului

Înainte de instalare Vrnetlab este necesar să instalăm pachetele necesare pentru funcționarea sa. Cum ar fi 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 -
ubunt:~$ sudo add-apt-repository 
   "deb [arch=amd64] https:\/\/download.docker.com\/linux\/ubuntu 
   $(lsb_release -cs) 
   stable"
ubunt:~$ sudo apt update
ubuntu:~$ sudo apt install -y docker-ce docker-ce-cli containerd.io

Instalarea Vrnetlab

Pentru instalare Vrnetlab clonăm repository-ul corespunzător de pe github:

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

Trecem în directorul vrnetlab:

ubuntu:~$ cd ~\/vrnetlab

Aici puteți vedea toate scripturile necesare pentru a rula. Rețineți că pentru fiecare tip de router a fost creat un director corespunzător:

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

Creăm imaginea routerului

Fiecare router suportat Vrnetlab, are procedura sa unică de configurare. În cazul Juniper vMX este suficient să plasăm arhiva .tgz cu routerul (o putem descărca de la site-ul oficial) în directorul vmx și să executăm comanda make:

ubuntu:~/vrnetlab/vmx
ubuntu:~$ # Copiem în acest director arhiva .tgz cu routerul
ubuntu:~$ sudo make

Crearea imaginii vMX va dura aproximativ 10-20 de minute. E timpul perfect să prepari o cafea!

De ce durează atât de mult, ne vei întreba?

Traducere răspunsul autorului la această întrebare:

"Aceasta se datorează faptului că la prima pornire VCP (Control Plane) citește fișierul de configurație, care determină dacă va funcționa ca VRR VCP în vMX. Anterior, această pornire se realiza în timpul pornirii Docker, dar asta însemna că VCP era întotdeauna repornit o dată înainte ca routerul virtual să devină disponibil, ceea ce ducea la un timp de încărcare lung (aproximativ 5 minute). Acum prima pornire a VCP se face în timpul construirii imaginii Docker, și deoarece construcția Docker nu poate fi pornită cu parametrul —privileged, asta înseamnă că qemu funcționează fără accelerație hardware KVM și, astfel, construcția durează foarte mult timp. În timpul acestui proces sunt generate multe jurnale, așa că, măcar, vei putea vedea ce se întâmplă. Cred că construcția de lungă durată nu este atât de înfricoșătoare, deoarece imaginea o creăm o dată, iar apoi o pornim de multe ori."

După aceea, putem vedea imaginea routerului nostru în Docker:

ubuntu:~$ sudo docker image list
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
vrnetlab/vr-vmx     20.1R1.11           b1b2369b453c        acum 3 săptămâni         4.43GB
debian              stretch             614bb74b620e        acum 7 săptămâni         101MB

Pornim containerul vr-vmx

Îl pornim cu comanda:

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

Apoi putem vedea informațiile despre containerele active:

ubuntu:~$ sudo docker container list
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS                                                 NAMES
120f882c8712        b1b2369b453c        "/launch.py"        acum 2 minute       Active 2 minute (nesănătos)   22/tcp, 830/tcp, 5000/tcp, 10000-10099/tcp, 161/udp   jun01

Ne conectăm la router

Adresa IP a interfeței de rețea a routerului poate fi obținută cu următoarea comandă:

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

În mod implicit, Vrnetlab creează la router utilizatorului vrnetlab/VR-netlab9.
Conectăm folosind ssh:

ubuntu:~$ ssh vrnetlab@172.17.0.2
Identitatea gazdelor '172.17.0.2 (172.17.0.2)' nu poate fi stabilită.
Amprenta cheii ECDSA este SHA256:g9Sfg/k5qGBTOX96WiCWyoJJO9FxjzXYspRoDPv+C0Y.
Ești sigur că vrei să continui conectarea (da/nu/[amprentă])? da
Avertisment: '172.17.0.2' (ECDSA) a fost adăugată permanent la lista gazdelor cunoscute.
Parolă:
--- JUNOS 20.1R1.11 Kernel 64-bit JNPR-11.0-20200219.fb120e7_buil
vrnetlab> show version
Model: vmx
Junos: 20.1R1.11

La aceasta, configurarea routerului este completă.

Recomandările pentru instalare pentru routerele diferitelor mărci pot fi găsite pe github project în directoarele corespunzătoare.

Partea 5: Postman - conectăm routerul la OpenDaylight

Instalarea Postman

Pentru instalare, este suficient să descărcați aplicația de aici.

Conectarea routerului la ODL

Să creăm PUT cerere:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

  1. Linia de cerere:
    PUT http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. Corpul cererii (tab-ul 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. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin. Acest lucru este necesar pentru accesul la ODL:
    Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab
  4. În tab-ul Headers, trebuie să adăugați două antete:
    • Accept application/xml
    • Content-Type application/xml

Cererea noastră este formatată. Trimitem. Dacă totul a fost configurat corect, ar trebui să primim statusul "201 Created":

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Ce face această cerere?

Creăm un node în interior ODL cu parametrii routerului real, la care dorim să putem avea acces.

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

Acestea sunt spațiile de nume interne XML (namespace XML) pentru ODL conform cărora creează node.

Apoi, în mod corespunzător, numele routerului este node-id, adresa routerului - host și așa mai departe.

Cea mai interesantă linie - ultima. Schema-cache-directory creează un director, în care se descarcă toate fișierele YANG Schema al routerului conectat. Le puteți găsi în $ODL_ROOT/cache/jun01_cache.

Verificăm conexiunea routerului

Să creăm metoda GET. cerere:

  1. Linia de cerere:
    GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
  2. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

Trimitem. Trebuie să obținem statusul "200 OK" și lista tuturor dispozitivelor acceptate. YANG Schema:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Comentariu: Pentru a vedea ultimele modificări, în cazul meu a fost necesar să aștept aproximativ 10 minute după execuție. PUT, până când toate schema YANG se vor descărca pe ODL. Până în acel moment, executând această metoda GET. solicitare, va fi afișat următorul mesaj:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Ștergem routerul

Să creăm DELETE cerere:

  1. Linia de cerere:
    DELETE http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01
  2. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

Partea 6: Modificăm configurația routerului

Obținem configurația

Să creăm metoda GET. cerere:

  1. Linia de cerere:
    GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
  2. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

Trimitem. Ar trebui să primim status "200 OK" și configurația routerului:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Creăm configurația

Ca exemplu, vom crea următoarea configurație și o vom modifica:

protocols {
    bgp {
        disable;
        shutdown;
    }
}

Să creăm POST cerere:

  1. Linia de cerere:
    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. Corpul cererii (tab-ul Body):
  3. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.
  4. În tab-ul Headers, trebuie să adăugați două antete:
    • Accept application/xml
    • Content-Type application/xml

După trimitere, ar trebui să primim status "204 No Content"

Pentru a verifica dacă configurația s-a schimbat, putem folosi solicitarea anterioară. Dar pentru exemplu, vom crea încă una care ne va afișa informațiile doar despre protocoalele configurate pe router.

Să creăm metoda GET. cerere:

  1. Linia de cerere:
    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. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

După execuția solicitării, vom vedea următoarele:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Modificăm configurația

Vom modifica informațiile despre protocolul BGP. După acțiunile noastre, va arăta astfel:

protocols {
    bgp {
        disable;
    }
}

Să creăm PUT cerere:

  1. Linia de cerere:
    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. Corpul cererii (tab-ul Body):
  3. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.
  4. În tab-ul Headers, trebuie să adăugați două antete:
    • Accept application/xml
    • Content-Type application/xml

Folosind solicitarea anterioară, vedem modificările: metoda GET. Ștergem configurația

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

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

Să creăm DELETE cerere:

  1. Linia de cerere:
    din solicitarea cu informații despre protocoale, vom vedea următoarele:
  2. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

Când apelăm metoda GET. Pentru a modifica configurația, nu este obligatoriu să trimitem corpul solicitării în format

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Adăugare:

. Acest lucru se poate face și în format XMLPentru aceasta, de exemplu, în solicitarea JSON.

de modificare a configurației vom schimba corpul solicitării în: PUT { "junos-conf-protocols:protocols": { "bgp": { "description" : "Changed in postman" } } }

Nu uitați să schimbați în tab-ul Headers anteturile în:

Accept application/json

  • Content-Type application/json
  • După trimitere, vom primi următorul rezultat (Răspunsul se verifică folosind

După trimitere, vom obține următorul rezultat (Răspunsul îl verificăm folosind metoda GET. cerere):

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Partea 7: adăugăm Cisco xRV9000

De ce vorbim atât de mult despre Juniper? Haideți să discutăm despre Cisco!
Am găsit xRV9000 versiunea 7.0.2 (bestie care necesită 8Gb RAM și 4 nuclee. Nu este disponibil public, așa că contactați Cisco) — pe acesta îl vom lansa.

Pornirea containerului

Procesul de creare a unui container Docker este aproape identic cu cel de la Juniper. Similar, plasăm fișierul .qcow2 cu routerul în directorul corespunzător numelui său (în acest caz xrv9k) și executăm comanda make docker-image.

După câteva minute vedem că imaginea a fost creată:

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

Lansăm containerul:

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

După un timp, verificăm că containerul a fost lansat:

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

Ne conectăm prin ssh:

ubuntu@ubuntu:~$ ssh vrnetlab@172.17.0.2
Parolă:

RP\/0\/RP0\/CPU0:ios#show version
Luni, 6 Iulie  12:19:28.036 UTC
Cisco IOS XR Software, Versiune 7.0.2
Drepturile de autor (c) 2013-2020 de către Cisco Systems, Inc.

Informații despre construcție:
 Construit De     : ahoang
 Construit Pe     : vin, 13 Mar 22:27:54 PDT 2020
 Gazdă construită   : iox-ucs-029
 Spațiu de lucru    : \/auto\/srcarchive15\/prod\/7.0.2\/xrv9k\/ws
 Versiune      : 7.0.2
 Locație     : \/opt\/cisco\/XR\/packages\/ 
 Eticheta        : 7.0.2

cisco IOS-XRv 9000 () procesor
Timp de funcționare al sistemului este 3 ore 22 minute

Conectăm routerul la OpenDaylight

Adăugarea se face exact în același mod ca și cu imaginea vMX. Trebuie doar să schimbăm numele.
PUT cerere:
Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

După un timp, apelăm metoda GET. cererea, pentru a verifica că totul s-a conectat:
Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Modificăm configurația

Să configurăm următoarea configurație:

!
router ospf LAB
 mpls ldp auto-config
!

Să creăm POST cerere:

  1. Linia de cerere:
    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. Corpul cererii (tab-ul Body):
    {
        "processes": {
            "process": [
                {
                    "process-name": "LAB",
                    "default-vrf": {
                        "process-scope": {
                            "ldp-auto-config": [
                                null
                            ]
                        }
                    }
                }
            ]
        }
    }
  3. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.
  4. În tab-ul Headers, trebuie să adăugați două antete:
    • Content-Type application/json
    • După trimitere, vom primi următorul rezultat (Răspunsul se verifică folosind

După executarea acesteia ar trebui să primim statutul "204 No Content".

Să verificăm ce am obținut.
Pentru aceasta, vom crea metoda GET. cerere:

  1. Linia de cerere:
    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. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

După executare, ar trebui să vedem următoarele:

Automatizarea serviciilor de rețea sau cum să construiești un laborator virtual folosind OpenDaylight, Postman și Vrnetlab

Pentru a elimina configurația, folosim DELETE:

  1. Linia de cerere:
    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. În tab-ul Authorization trebuie să setați parametrul Basic Auth și utilizator/parolă: admin/admin.

Concluzie

După cum ați observat, procedurile de conectare Cisco și Juniper la OpenDaylight sunt similare - acest lucru deschide un spațiu destul de larg pentru creativitate. Începând cu gestionarea configurațiilor tuturor componentelor rețelei și terminând cu crearea propriilor politici de rețea.
În acest tutorial, am prezentat cele mai simple exemple despre cum se poate interacționa cu echipamentele de rețea prin OpenDaylight. Fără îndoială, cererile din exemplele prezentate pot deveni mult mai complexe, configurând întregi servicii cu un singur click - totul este limitat doar de imaginația dumneavoastră.

Continuarea urmează...

P.S.

Dacă cumva știți deja toate acestea sau, dimpotrivă, ați parcurs și vă pasionează ODL, vă recomand să priviți spre dezvoltarea aplicațiilor pe controllerul ODL. Puteți începe cu de aici.

Experimente reușite!

Lista de literatură

  1. Vrnetlab: Emulați rețele folosind KVM și Docker / Brian Linkletter
  2. OpenDaylight Cookbook / Mathieu Lemay, Alexis de Talhouet, Et al
  3. Programabilitatea rețelei cu YANG / Benoît Claise, Loe Clarke, Jan Lindblad
  4. Învățând XML, Ediția a doua / Erik T. Ray
  5. DevOps eficient / Jennifer Davis, Ryn Daniels

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster