cisco logo

CISCO IOS XR hostimisrakendused

CISCO IOS XR hostimisrakendused

Rakenduste hostimine IOS XR-is
Selles jaotises selgitatakse erinevaid rakenduste hostimise tüüpe ja näidatakse, kuidas lihtsat rakendust saab hostida natiivselt või kolmanda osapoole konteineris IOS XR-is.

  • Rakenduste hostimine Dockeri konteinerite abil.
  • Dockeripõhise konteinerirakenduse hostimine.

Rakenduste hostimine Dockeri konteinerite abil
Rakenduste hostimine IOS XR-is toetab dokkimiskonteinereid. Saate luua IOS XR-is oma konteineri, kasutades dokkerit, ja hostida konteineris rakendusi. Rakendusi saab arendada mis tahes Linuxi distributsiooni abil. See sobib hästi rakendustele, mis kasutavad süsteemiteeke, mis erinevad IOS XR-i juurtest file süsteem. Cisco NCS 540 toetab ainult dokkimispõhist rakenduste hostimist.

Dockeripõhise konteinerirakenduse hostimine
Selles jaotises tutvustatakse konteinerrakenduste hostimise kontseptsiooni ja kirjeldatakse selle töövoogu. Konteinerrakenduste hostimine võimaldab rakendusi hostida nende enda keskkonnas ja protsessiruumis (nimeruumis) Cisco IOS XR-i Linuxi konteineris. Rakenduse arendajal on täielik kontroll rakenduste arenduskeskkonna üle ja ta saab kasutada valitud Linuxi distributsiooni. Rakendused on isoleeritud IOS XR juhttasandi protsessidest; Siiski saavad nad XR GigE liideste kaudu ühenduda võrkudega väljaspool XR-i. Rakendused pääsevad hõlpsalt juurde ka kohalikule file süsteemid IOS XR-is.

Dockeri kasutamine rakenduste majutamiseks Cisco IOS XR-is
Docker on konteiner, mida kasutatakse rakenduste majutamiseks Cisco IOS XR-is. Docker eraldab rakendusprotsessid XR-i aluseks olevatest hostprotsessidest, kasutades Linuxi võrgu nimeruume.

Dockeri vajadus Cisco IOS XR-is
Dockerist on saamas tööstusharu eelistatud pakendamise mudel virtualiseerimisruumi rakenduste jaoks. Docker loob aluse rakenduse elutsükli haldamise automatiseerimiseks. Docker järgib kihilist lähenemisviisi, mis koosneb põhipildist allosas, mis toetab ülaltoodud rakenduste kihte. Põhipildid on avalikult saadaval hoidlas, olenevalt rakenduse tüübist, mida soovite peale installida. Dockeri kujutistega saate manipuleerida dockeri indeksi ja registri abil. Docker pakub konteinerrakenduste arendamiseks git-laadset töövoogu ja toetab õhukese värskenduse mehhanismi, kus värskendatakse ainult lähtekoodi erinevust, mis viib kiiremate versiooniuuendusteni. Docker pakub ka "õhukese allalaadimise" mehhanismi, kus uuemad rakendused laaditakse alla kiiremini, kuna ühised põhidokkerikihid jagatakse mitme dokkimiskonteineri vahel. Dokkimiskihtide jagamine mitme dokkimiskonteineriga vähendab XR-i dokkimiskonteinerite jalajälge.

Dockeri arhitektuur Cisco IOS XR-is
Järgmine joonis illustreerib doki arhitektuuri IOS XR-is.

CISCO IOS XR-i hostimisrakendused 1

Hostitavate rakenduste binaarfailid installitakse dokkimiskonteinerisse.

Rakenduste hostimine Dockeri konteinerites
Järgmine joonis illustreerib IOS XR-i Dockeri konteinerites rakenduste hostimise töövoogu.
CISCO IOS XR-i hostimisrakendused 2

  1. Dokk file lähtehoidlas kasutatakse rakenduse binaarfaili koostamiseks file teie (dokimootori ehitus) hostmasinas.
  2. Rakenduse binaarfail file surutakse dockeri kujutiste registrisse.
  3. Rakenduse binaarfail file tõmmatakse dockeri kujutiste registrist ja kopeeritakse XR-i (dokimootori sihthost) dockeri konteinerisse.
  4. Rakendus on ehitatud ja majutatud XR-i dokkimiskonteineris.

Dockeri konteinerite rakenduste värskendamine
Järgmine joonis illustreerib dokkimiskonteinerites hostitud rakenduste värskendamise töövoogu.CISCO IOS XR-i hostimisrakendused 3

  1. Rakenduse värskendus luuakse libsi baasvärskendusena file (delta värskendus file) ja lükatakse dockeri kujutiste registrisse.
  2. Delta värskendus file (sisaldab ainult erinevust rakenduse koodis) tõmmatakse dockeri kujutiste registrist ja kopeeritakse XR-i (dockeri mootori sihthosti) dockeri konteineritesse.
  3. Dokkeri konteinerid taaskäivitatakse deltavärskendusega file.

TPA hostimine rakendushalduri abil

Tabel 1: funktsioonide ajaloo tabel

Funktsioon Nimi Väljalaske teave Funktsioon Kirjeldus
Nõudmisel Dockeri deemoniteenus Väljalase 7.5.1 Alates sellest väljaandest on

Dockeri deemoniteenus käivitub ruuteris ainult siis, kui konfigureerite kolmanda osapoole hostimisrakenduse appmgr käsk. Selline tellitav teenus optimeerib operatsioonisüsteemi ressursse, nagu protsessor, mälu ja võimsus.

Varasemates versioonides käivitus Dockeri deemoniteenus ruuteri alglaadimise ajal automaatselt.

Varasemates versioonides hostisid ja juhtisid rakendusi Dockeri käsud. Need Dockeri käsud käivitati kerneli bash-shellis, mis hostis ka Cisco IOS XR tarkvara. Rakenduste halduri kasutuselevõtuga on nüüd võimalik hallata kolmanda osapoole rakenduste hostimist ja nende toimimist Cisco IOS XR CLI-de kaudu. Selle funktsiooni abil saavad kõik aktiveeritud kolmanda osapoole rakendused pärast ruuteri uuesti laadimist või RP ümberlülitamist automaatselt taaskäivitada. See rakenduste automaatne taaskäivitamine tagab hostitud rakenduste sujuva toimimise.

Toetatud käsud rakenduste halduris
Iga käivitatud rakendusehalduri käsu või konfiguratsiooni puhul teostab rakenduste haldur nõutud toimingu, liidestades Dockeri pesa Dockeri deemoniga. Järgmises tabelis on loetletud Dockeri konteineri funktsioonid, üldised Dockeri käsud, mida kasutati eelmistes versioonides, ja sellega samaväärsed rakendusehalduri käsud, mida nüüd saab kasutada.

Funktsionaalsus Üldised Dockeri käsud Rakendus Juht Käsud
Installige rakenduse RPM NA Router#appmgr paketi installimise rpm

pildi_nimi-0.1.0-XR_7.3.1.x86_64.rpm

Seadistage ja aktiveerige rakendus • Laadi pilt – [xr-vm_node0_RP0_CPU0:~]$docker load -i /tmp/pildi_nimi.tar

• Kontrollige ruuteril olevat pilti –

xr-vm_node0_RP0_CPU0:~]$dockeri pildid ls

• Loo pildi kohale konteiner –

[xr-vm_node0_RP0_CPU0:~]$dockeri loomine pildi_nimi
Ruuter #config

Ruuter(config)#appmgr Ruuter(config-appmgr)#rakendus

rakenduse_nimi

Ruuter(config-application)#activate tüüpi dokkimisallikas pildi_nimi docker-run-opts “–net=host” docker-run-cmd “iperf3 -s -d”

  • Käivita konteiner – [xr-vm_node0_RP0_CPU0:~]$dockeri algus minu_konteineri_id Ruuter(config-application)#commit
View rakenduse loend, statistika, logid ja üksikasjad

konteiner

• Piltide loend

-[xr-vm_node0_RP0_CPU0:~]$docker images ls

• Konteinerite loend –

[xr-vm_node0_RP0_CPU0:~]$docker ps

• Statistika

-[xr-vm_node0_RP0_CPU0:~]$dockeri statistika

Ruuter#show appmgr source-table

Ruuter#show appmgr rakenduse nimi rakenduse_nimi info kokkuvõte

Ruuter#show appmgr rakenduse nimi rakenduse_nimi info üksikasjad

Ruuter#show appmgr rakenduse nimi rakenduse_nimi statistika

  • Palgid

-[xr-vm_node0_RP0_CPU0:~]$dockeri logid

Ruuter#show appmgr application-table

Ruuter#show appmgr rakenduse nimi rakenduse_nimi palgid

Funktsionaalsus Üldised Dockeri käsud Rakendus Juht Käsud
Käivitage uus • Käivita – [xr-vm_node0_RP0_CPU0:~]$docker exec -it minu_konteineri_id Ruuter#appmgr rakenduse täitja
käsk

sees a

nimi rakenduse_nimi docker-exec-cmd
jooksmine  
konteiner  
Peatage rakenduse konteiner • Peata konteiner – [xr-vm_node0_RP0_CPU0:~]$dockeri peatus minu_konteineri_id Ruuter#appmgr rakenduse peatuse nimi rakenduse_nimi
Tapa rakenduse konteiner • Kill konteiner – [xr-vm_node0_RP0_CPU0:~]$docker kill minu_konteineri_id Ruuter#appmgr rakenduse tapmisnimi rakenduse_nimi
Käivitage rakenduse konteiner • Käivita konteiner – [xr-vm_node0_RP0_CPU0:~]$dockeri algus minu_konteineri_id Ruuter#appmgr rakenduse algusnimi rakenduse_nimi
Deaktiveerige rakendus • Peata konteiner – [xr-vm_node0_RP0_CPU0:~]$dockeri peatus minu_konteineri_id Ruuter #configure

Ruuter (config) # appmgr rakendus puudub rakenduse_nimi

  • Eemalda konteiner – [xr-vm_node0_RP0_CPU0:~]$docker rm minu_konteineri_id Ruuter(config)#commit
  • Eemalda pilt – [xr-vm_node0_RP0_CPU0:~]$docker rmi pildi_nimi  
Desinstallige rakenduse pilt/RPM • Desinstalli pilt – [xr-vm_node0_RP0_CPU0:~]$dockeri rakenduse desinstallimine pildi_nimi Router#appmgr paketi desinstalli pakett

pildi_nimi-0.1.0-XR_7.3.1.x86_64

Märkus: Rakendusehalduri käskude kasutamist selgitatakse jaotises „iPerfi hostimine Dockeri konteinerites võrgu jõudluse jälgimiseks rakendusehalduri abil”.

Dockeri konfigureerimine mitme VRF-iga

Selles jaotises kirjeldatakse, kuidas saate konfigureerida Dockerit mitme VRF-iga Cisco IOS XR-is. Lisateavet mitme VRF-i konfigureerimise kohta leiate teemast Mitme VRF-i konfigureerimine rakenduse hostimise jaoks.

Seadistamine
Mitme VRF-i dokkeri loomiseks ja juurutamiseks XR-is järgige järgmisi samme.

  1. Looge mitme VRF-i dokkija NET_ADMIN ja SYS_ADMIN õigustega.
    Järgmises eksampaastal käivitatakse Dockeri konteiner, mis sisaldab kolme VRF-i (kollane, sinine ja roheline). Endineample eeldab, et eelmine "multivrfimage" dokkimispilt installiti käsuga appmgr paketi installimine.CISCO IOS XR-i hostimisrakendused 4
    Märkus. 
    • Kogu faili /var/run/netns sisu hostist Dockeri ühendamine ei ole soovitatav, kuna see ühendab Dockerisse XR-ile ja süsteemi administraatoritasandile vastavate netn-ide sisu.
    • Ärge kustutage VRF-i Cisco IOS XR-ist, kui seda kasutatakse Dockeris. Kui XR-ist kustutatakse üks või mitu VRF-i, ei saa mitme VRF-i dokkerit käivitada
  2. Kontrollige, kas mitme VRF-i dokkija on edukalt laaditud.CISCO IOS XR-i hostimisrakendused 5
  3. Ühendage mitme VRF Dockeri konteineriga, käivitades järgmise käsu.
    Ruuteri nr appmgr rakenduse exec nimi multivrfcontainer1 docker-exec-cmd /bin/bash/
    Vaikimisi laaditakse Docker Cisco IOS XR-i globaalsesse vrf-nimeruumi.
  4. Kontrollige, kas Dockerist pääseb juurde mitmele VRF-ile.CISCO IOS XR-i hostimisrakendused 7
    CISCO IOS XR-i hostimisrakendused 8

Olete Cisco IOS XR-is edukalt käivitanud mitme VRF-dokeri.

Dokumendid / Ressursid

CISCO IOS XR hostimisrakendused [pdfKasutusjuhend
IOS XR hostimisrakendused, IOS XR, hostimisrakendused, rakendused

Viited

Jäta kommentaar

Teie e-posti aadressi ei avaldata. Kohustuslikud väljad on märgitud *