ProHoster > Blog > Tsamaiso > Boiketsetso ba lits'ebeletso tsa marang-rang kapa mokhoa oa ho aha laboratori ea sebele u sebelisa OpenDaylight, Postman le Vrnetlab
Boiketsetso ba lits'ebeletso tsa marang-rang kapa mokhoa oa ho aha laboratori ea sebele u sebelisa OpenDaylight, Postman le Vrnetlab
Sehloohong sena, ke tla u bontša mokhoa oa ho theha letsatsi le bulehileng ho sebetsa ka lisebelisoa tsa marang-rang, le ho bontša mokhoa oa ho sebelisa Motho oa poso le bonolo RESTCONF likopo, thepa ena e ka laoloa. Re ke ke ra sebetsa ka hardware, empa ho e-na le hoo re tla sebelisa lilaboratori tse nyenyane tse nang le router e le 'ngoe e sebelisang Vrnetlab fetile Botho 20.04 LTS.
Ke tla bontša litlhophiso tse qaqileng pele ke sebelisa mohlala oa router Junipere vMX 20.1R1.11, ebe re e bapisa le boemo Cisco xRV9000 7.0.2.
Tse ka hare
Tsebo e hlokahalang
Karolo ea 1: buisana ka bokhutšoanyane OpenDaylight (ka mor'a moo ODL), Motho oa poso и Vrnetlab 'me ke hobane'ng ha re li hloka
Karolo ea 2: tlhaloso ea laboratori ea sebele
Karolo ea 3: iketsetse letsatsi le bulehileng
Karolo ea 4: iketsetse Vrnetlab
Karolo ea 5: ka ho sebelisa Motho oa poso hokela router virtual (Junipere vMX) Ho ODL
Karolo ea 6: fumana le ho fetola tlhophiso ea router u sebelisa Motho oa poso и ODL
Karolo ea 7: eketsa Cisco xRV9000
fihlela qeto e
PES
Bukana ea libuka
Tsebo e hlokahalang
E le hore sengoloa se se ke sa fetoha leqephe, ke siile lintlha tse ling tsa tekheniki (tse nang le likhokahano tsa lingoliloeng moo u ka balang ka tsona).
Mabapi le sena, ke u fa lihlooho tseo ho ka bang molemo (empa hoo e ka bang ha ho hlokahale) ho tseba pele u li bala:
E bonolo ebile e bonolo ho e sebelisa segokanyimmediamentsi sa sebolokigolo
Tabeng ea rona, re e thahasella e le mokhoa oa ho romela likopo tsa REST ho OpenDaylight API. Ha e le hantle, u ka romela likōpo ka letsoho, empa ho Postman ntho e 'ngoe le e' ngoe e shebahala e hlakile haholo 'me e lumellana le merero ea rona ka ho phethahetseng.
Bakeng sa ba batlang ho cheka: ho ngotsoe lisebelisoa tse ngata tsa koetliso ho eona (mohlala).
Sesebelisoa sa ho tsamaisa li-routers tse fumanehang ho Docker
E tšehetsa: Cisco XRv, Juniper vMX, Arista vEOS, Nokia VSR, joalo-joalo.
Mohloli o Hlahileng
Sesebelisoa se khahlisang haholo empa se sa tsejoe hanyane. Tabeng ea rona, re tla e sebelisa ho tsamaisa Juniper vMX le Cisco xRV9000 ho Ubuntu 20.04 LTS e tloaelehileng.
Junipere vMX e phahama ka hare Docker setshelo (ka mokhoa Vrnetlab) mme e sebetsa joalo ka router e tloaelehileng haholo.
ODL e hokahane le router mme e u lumella ho e laola.
Motho oa poso thakholoa ka mochini o fapaneng mme ka ona re romella litaelo ODL: ho hokahanya / ho tlosa router, fetola tlhophiso, joalo-joalo.
Tlhaloso ka sesebelisoa sa tsamaiso
Junipere vMX и ODL li hloka lisebelisoa tse ngata bakeng sa ts'ebetso ea tsona e tsitsitseng. E le 'ngoe feela vMX e kopa 6 Gb ea RAM le li-cores tse 4. Ka hona, ho ile ha etsoa qeto ea ho tsamaisa "boima bo boima" ho mochine o fapaneng (Heulett Packard Enterprise MicroServer ProLiant Gen8, Ubuntu 20.04 LTS). Router, ha e le hantle, ha e "fofe" ho eona, empa tshebetso e lekane bakeng sa liteko tse nyenyane.
Karolo ea 3: Beha OpenDaylight
Mofuta oa hajoale oa ODL nakong ea ho ngola sena ke Magnesium SR1
1) Kenya Java Open JDK 11 (bakeng sa ho kenya lintlha tse ling mona)
ubuntu:~$ sudo apt install default-jdk
2) Fumana le ho khoasolla moaho oa morao-rao ODLho tloha mona
3) Unzip polokelo ea litaba e jarollotsoeng
4) E-ea bukeng e hlahang
5) Qala ./bin/karaf
Mothating ona ODL e lokela ho qala 'me re tla iphumana re le console (Port 8181 e sebelisetsoa ho fihlella ho tsoa ka ntle, eo re tla e sebelisa hamorao).
E latelang, kenya Likarolo tsa ODLe etselitsoe ho sebetsa le liprothokholo NETCONF и RESTCONF. Ho etsa sena ka console ODL re phetha:
Bakeng sa ho kenya Vrnetlab kopanya sebaka sa polokelo se tsamaisanang le github:
ubuntu:~$ cd ~
ubuntu:~$ git clone https://github.com/plajjan/vrnetlab.git
Eya ho directory vrnetlab:
ubuntu:~$ cd ~/vrnetlab
Mona o ka bona lingoloa tsohle tse hlokahalang ho sebetsa. Ka kopo elelloa hore lethathamo le tsamaellanang le entsoe bakeng sa mofuta o mong le o mong oa router:
Router e 'ngoe le e' ngoe e tšehetsoeng Vrnetlab, e na le mokhoa oa eona oa ho seta o ikhethang. Neng Junipere vMX re hloka feela ho kenya polokelo ea .tgz ka router (o ka e khoasolla ho tsoa ho saeteng ya semmuso) ho sesebelisoa sa vmx ebe u tsamaisa taelo make:
ubuntu:~$ cd ~/vrnetlab/vmx
ubuntu:~$ # Копируем в эту директорию .tgz архив с роутером
ubuntu:~$ sudo make
Ho haha setšoantšo vMX e tla nka metsotso e ka bang 10-20. Ke nako ea ho ea lata kofi!
"Sena ke hobane lekhetlo la pele ha VCP (Control Plane) e qala, e bala faele ea config e etsang qeto ea hore na e tla sebetsa joalo ka VRR VCP ho vMX. Nakong e fetileng, tlhahiso ena e ne e etsoa nakong ea ho qala ha Docker, empa sena se ne se bolela hore VCP e ne e lula e qalisoa hang pele router ea sebele e fumaneha, e fella ka nako e telele ea boot (hoo e ka bang metsotso e 5) Hona joale ts'ebetso ea pele ea VCP e etsoa nakong ea kaho ea setšoantšo sa Docker, 'me kaha mohaho oa Docker o ke ke oa tsamaisoa le - -khetho e nang le tokelo, sena se bolela hore qemu e sebetsa ntle le ho potlakisa hardware ea KVM 'me kahoo ho haha ho nka nako e telele haholo.Nakong ea ts'ebetso ena ho na le lifate tse ngata tse hlahisoang, kahoo bonyane u ka bona se etsahalang.Ke nahana hore ho haha nako e telele ke ha se ntho e tšosang hobane re theha setšoantšo hang, empa re hlahisa tse ngata. "
Ka mor'a hore u bone setšoantšo sa router ea rona ho 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
Qala setshelo sa vr-vmx
Re qala ka taelo:
ubuntu:~$ sudo docker run -d --privileged --name jun01 b1b2369b453c
Ka mor'a moo, re ka bona leseli mabapi le lijana tse sebetsang:
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
Ho hokela ho router
Aterese ea IP ea sebopeho sa marang-rang sa router e ka fumanoa ka taelo e latelang:
Kamehla, Vrnetlab e theha mosebelisi ho router vrnetlab/VR-netlab9.
Ho kopana le 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
Sena se phethela ho seta ha router.
Litlhahiso tsa ho kenya li-routers tsa barekisi ba fapaneng li ka fumanoa ho github morero libukeng tse fapaneng.
Karolo ea 5: Postman - hokela router ho OpenDaylight
Tsena ke libaka tsa mabitso tsa ka hare xML (Sebaka sa mabitso sa XML) bakeng sa ODL ho latela seo e bopang node.
Ho feta moo, ka ho latellana, lebitso la router ke node-id, aterese ea router - moamoheli joalo-joalo.
Mohala o khahlisang haholo ke oa ho qetela. Schema-cache-directory e theha directory moo lifaele tsohle li jarollotsoeng YANG Schema router e hokahaneng. U ka li fumana ka hare $ODL_ROOT/cache/jun01_cache.
Ho hlahloba khokahano ea router
Ha re bopeng Fumana kopo:
Khoele ea potso:
GET http://10.132.1.202:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Rea romela. E lokela ho fumana boemo ba "200 OK" le lethathamo la tsohle tse tšehetsoeng ke sesebelisoa YANG Schema:
ho hlahisa maikutlo: Ho bona ho qetela, tabeng ea ka ho ne ho hlokahala ho ema metsotso e ka bang 10 ka mor'a ho bolaoa behaho fihlela tsohle Setšoantšo sa YANG laolla ka ODL. Ho fihlela joale, ha o etsa sena Fumana potso e tla hlahisa tse latelang:
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Karolo ea 6: Fetola tlhophiso ea router
Ho fumana tlhophiso
Ha re bopeng Fumana kopo:
Khoele ea potso:
GET http://10.132.1.202:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/jun01/yang-ext:mount/
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Rea romela. E lokela ho fumana boemo "200 OK" le tlhophiso ea router:
Etsa tlhophiso
Ka mohlala, ha re theheng tlhophiso e latelang mme re e fetole:
protocols {
bgp {
disable;
shutdown;
}
}
Ha re bopeng POST kopo:
Khoele ea potso:
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
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Ho "Header" tab, o hloka ho eketsa lihlooho tse peli:
Amohela tshebediso/xml
Sesebelisoa sa Mofuta oa Likahare/xml
Ka mor'a ho romela, ba lokela ho fumana boemo "204 No Content"
Ho netefatsa hore tlhophiso e fetohile, o ka sebelisa potso e fetileng. Empa ka mohlala, re tla theha e 'ngoe e tla bontša tlhahisoleseding feela ka liprothokholo tse hlophisitsoeng ho router.
Ha re bopeng Fumana kopo:
Khoele ea potso:
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
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Ka mor'a ho etsa kopo, re tla bona tse latelang:
Fetola tlhophiso
Ha re fetoleng tlhahisoleseling mabapi le protocol ea BGP. Ka mor'a liketso tsa rona, e tla shebahala tjena:
protocols {
bgp {
disable;
}
}
Ha re bopeng beha kopo:
Khoele ea potso:
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
Se ke oa lebala ho fetola lihlooho ho tab ea Lihlooho ho:
Amohela kopo/json
Content-Type application/json
Kamora ho romella, re tla fumana sephetho se latelang (Re sheba karabo re sebelisa Fumana kopo):
Karolo ea 7: Ho eketsa Cisco xRV9000
Kaofela re eng ka Junipere, ee Junipere? Ha re bue ka Cisco!
Ke fumane xRV9000 version 7.0.2 (sebata se hlokang 8Gb RAM le li-cores tse 4. Ha e fumanehe ka bolokolohi, kahoo ikopanye Cisco) - ha re e tsamaise.
Ho matha setshelo
Mokhoa oa ho theha setshelo sa Docker ha o fapane le Juniper. Ka mokhoa o ts'oanang, re lahlela faele ea .qcow2 le router ka har'a bukana e lumellanang le lebitso la eona (tabeng ena, xrv9k) mme re phethe taelo. make docker-image.
Kamora metsotso e seng mekae, re bona hore setšoantšo se entsoe:
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
Re qala setshelo:
ubuntu:~$ sudo docker run -d --privileged --name xrv01 54debc7973fc
Ka mor'a nakoana, re sheba hore setshelo se qalile:
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
Hokela ka 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
Ho hokela router ho OpenDaylight
Ho eketsa ho etsahala ka tsela e ts'oanang ka ho feletseng le vMX. Re hloka feela ho fetola mabitso. beha kopo:
Letsa kamora nakwana Fumana botsa ho netefatsa hore tsohle li hokahane:
Fetola tlhophiso
Ha re theheng tlhophiso e latelang:
!
router ospf LAB
mpls ldp auto-config
!
Ha re bopeng POST kopo:
Khoele ea potso:
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
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Ho "Header" tab, o hloka ho eketsa lihlooho tse peli:
Amohela kopo/json
Content-Type application/json
Ka mor'a ho bolaoa, ba lokela ho fumana boemo "204 No Content".
Ha re hlahlobeng seo re nang le sona.
Ho etsa sena, re tla bopa Fumana kopo:
Khoele ea potso:
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
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
Ka mor'a ts'ebetso, u lokela ho bona tse latelang:
Ho tab ya Authorization, o tlameha ho seta parameter Basic Auth le ho kena / password: admin/admin.
fihlela qeto e
Ka kakaretso, joalo ka ha u hlokometse, lits'ebetso tsa ho hokahanya Cisco le Juniper ho OpenDaylight ha li fapane - sena se bula sebaka se pharaletseng sa boqapi. Ho qala ka taolo ea tlhophiso ea likarolo tsohle tsa marang-rang le ho qetella ka ho theha maano a hau a marang-rang.
Thutong ena, ke fane ka mehlala e bonolo ka ho fetisisa ea hore na u ka sebelisana joang le lisebelisoa tsa marang-rang u sebelisa OpenDaylight. Ntle le pelaelo, lipotso tse tsoang mehlaleng e kaholimo li ka rarahana le ho feta mme tsa theha lits'ebeletso tsohle ka ho tobetsa e le 'ngoe ea toeba - tsohle li lekantsoe feela ke monahano oa hau *
E tla ntšetsoa pele…
PES
Haeba ka tšohanyetso u se u ntse u tseba sena sohle kapa, ho fapana le hoo, u fetile 'me u tebile moeeng oa ODL, joale ke khothaletsa ho sheba ho nts'etsapele lits'ebetso ho molaoli oa ODL. U ka qala ho tloha mona.