I-Telemetry kwiJunos ye-AI / ML yoMsebenzi woMsebenzi
Umbhali: Shalini Mukherjee
Intshayelelo
Njengoko uthungelwano lweqela le-AI lufuna uthungelwano olungalahlekiyo olunomthamo ophezulu kunye ne-latency ephantsi, eyona nto ibalulekileyo yothungelwano lwe-AI kukuqokelelwa kwedatha yokubeka iliso. I-Junos Telemetry yenza ukuba kubekwe iliso kwi-granular yezalathisi eziphambili zokusebenza, kubandakanywa imiqobo kunye nezixhobo zokubala zolawulo lwengxinano kunye nokulinganisa umthwalo wendlela. Iiseshoni ze-gRPC zixhasa ukuhanjiswa kwedatha yetelemetry. I-gRPC yinkqubo yangoku, evulekileyo, isikhokelo sokusebenza esiphezulu esakhiwe kuthutho lwe-HTTP/2. Ixhobisa izakhono zokusasaza zomthonyama kwaye ibandakanya imetadata yesiko eguquguqukayo kwimibhalo yesicelo. Inyathelo lokuqala kwi-telemetry kukwazi ukuba yeyiphi idatha ekufuneka iqokelelwe. Emva koko sinokuhlalutya le datha kwiifomathi ezahlukeneyo. Sakuba siqokelele idatha, kubalulekile ukuyiveza ngendlela ekulula ukuyijonga, ukwenza izigqibo kunye nokuphucula inkonzo enikezelwayo. Kweli phepha, sisebenzisa isitakhi se-telemetry esiquka iTelegraf, i-InfluxDB, kunye neGrafana. Esi sitaki se-telemetry siqokelela idatha sisebenzisa imodeli yokutyhala. Imifuziselo yotsalo yemveli ifuna ubutyebi obuninzi, ifuna ungenelelo olwenziwa ngesandla, kwaye inokubandakanya izikhewu zolwazi kwiidatha eziyiqokelelayo. Iimodeli zokutyhala ziyoyisa le mida ngokuhambisa idatha ngokulandelelanayo. Batyebisa idatha ngokusebenzisa i-user-friendly tags kunye namagama. Emva kokuba idatha ikwifomathi efundekayo ngakumbi, siyigcina kwisiseko sedatha kwaye siyisebenzise kwimbonakalo esebenzayo web isicelo sokuhlalutya inethiwekhi. Umzobo. I-1 isibonisa ukuba esi sitaki siyilelwe njani ukuqokelelwa kwedatha, ukugcinwa, kunye nokubonwa, ukusuka kwizixhobo zothungelwano ezityhalela idatha kumqokeleli ukuya kwidatha eboniswa kwiideshibhodi ukuze zihlalutywe.
TIG Stack
Sisebenzise iseva ye-Ubuntu ukufaka yonke isoftware kubandakanya istaki seTIG.
Telegraph
Ukuqokelela idatha, sisebenzisa iTelegraf kwiseva ye-Ubuntu eqhuba i-22.04.2. Inguqulo yeTelegraf esebenza kule demo yi-1.28.5.
I-Telegraf yi-agent ye-plugin eqhutywa yi-server yokuqokelela kunye neemetrics zokunika ingxelo. Isebenzisa iprosesa plugins ukutyebisa kunye nokuqhelanisa idatha. Isiphumo plugins zisetyenziselwa ukuthumela le datha kwiivenkile ezahlukeneyo zedatha. Kolu xwebhu sisebenzisa ezimbini plugins: enye ye-openconfig yabenzi boluvo kunye neyeJuniper yabenzi boluvo bomthonyama.
I-InfluxDB
Ukugcina idatha kwisiseko sedatha yexesha, sisebenzisa i-InfluxDB. Iplagi ephumayo kwiTelegraf ithumela idatha kwi-InfluxDB, eyigcina ngendlela esebenza kakuhle kakhulu. Sisebenzisa i-V1.8 njengoko kungekho CLI ekhoyo ye-V2 nangaphezulu.
Grafana
I-Grafana isetyenziselwa ukujonga le datha. IGrafana itsala idatha kwi-InfluxDB kwaye ivumela abasebenzisi ukuba benze iideshibhodi ezityebileyo nezisebenzayo. Apha, siqhuba uguqulelo 10.2.2.
Uqwalaselo KwiTshintsho
Ukuphumeza esi sitaki, kufuneka kuqala siqwalasele iswitshi njengoko kubonisiwe kuMfanekiso 2. Sisebenzise izibuko 50051. Naliphi na izibuko linokusetyenziswa apha. Ngena kwinguqu ye-QFX kwaye wongeze uqwalaselo olulandelayo.
Phawula: Olu lungelelwaniso lolweebhu/iiPOCs njengoko igama lokugqitha lihanjiswa ngokubhaliweyo okucacileyo. Sebenzisa i-SSL ukunqanda oku.
Okusingqongileyo
Nginx
Oku kuyafuneka ukuba awukwazi ukuveza izibuko ekubanjwe kulo iGrafana. Inyathelo elilandelayo kukufaka i-nginx kwiseva ye-Ubuntu ukuze isebenze njenge-arhente emele umva. Nje ukuba i-nginx ifakwe, yongeza imigca eboniswe kwi-Figure 4 kwifayile "engagqibekanga" kwaye uhambise ifayile ukusuka /etc/nginx ukuya /etc/nginx/sites-enabled.
Qinisekisa ukuba i-firewall ilungelelanisiwe ukunika ufikelelo olupheleleyo kwinkonzo ye-nginx njengoko kubonisiwe kuMfanekiso 5.
Nje ukuba i-nginx ifakwe kunye notshintsho olufunekayo lwenziwe, kufuneka sikwazi ukufikelela kwi-Grafana kwi- web Umkhangeli zincwadi usebenzisa idilesi ye-IP yeseva ye-Ubuntu apho yonke isoftware ifakiwe.
Kukho ingxaki encinci eGrafana engakuvumeli ukuba usete kwakhona igama eligqithisiweyo elingagqibekanga. Sebenzisa la manyathelo ukuba ubaleka kulo mba.
Amanyathelo ekufuneka enziwe kwiseva ye-Ubuntu ukuseta igama lokugqitha eGrafana:
- Yiya ku /var/lib/grafana/grafana.db
- Faka i-sqllite3
o sudo apt ukufaka sqlite3 - Sebenzisa lo myalelo kwi-terminal yakho
o sqlite3 grafana.db - Ukukhawuleza komyalelo we-Sqlite kuyavula; sebenzisa lo mbuzo ulandelayo:
> cima kumsebenzisi apho kungena khona = 'admin' - Qala kwakhona i-grafana kwaye uchwetheze u-admin njengegama lomsebenzisi kunye negama lokugqitha. Ibangela igama lokugqitha elitsha.
Nje ukuba yonke isoftware ifakiwe, yenza ifayile yoqwalaselo kwiTelegraf eya kunceda ukutsala idatha yetelemetry kwiswitshi kwaye uyityhale kwi-InfluxDB.
I-plugin ye-Openconfig Sensor
Kumncedisi we Ubuntu, hlela ifayile /etc/telegraf/telegraf.conf ukongeza zonke ezifunekayo. plugins kunye nezivamvo. Kwizinto zoluvo ze-openconfig, sisebenzisa iplagi ye-gNMI eboniswe kuMfanekiso 6. Ngeenjongo zedemo, yongeza igama lenginginya njenge “spine1”, inombolo yezibuko “50051” esetyenziselwa i-gRPC, igama lomsebenzisi kunye negama lokugqitha lokutshintsha, kunye nenombolo. yemizuzwana yokucofa kwakhona xa kusilele.
Kwistanza sobhaliso, yongeza igama elikhethekileyo, "cpu" yale nzwa ithile, indlela yoluvo, kunye nexesha lexesha lokubamba le datha kwiswitshi. Yongeza i-plugin inputs.gnmi efanayo kunye ne-inputs.gnmi.subscription kuzo zonke izibonisi ze-config ezivulekileyo. (Umfanekiso 6)
I-Plugin yesivamvo seNative
Le yiJuniper telemetry interface plugin esetyenziselwa abenzi boluvo bomthonyama. Kwale telegraf.conf fayile, yongeza iplugin yesivamvo somthonyama inputs.jti_openconfig_telemetry apho imimandla iphantse yafana ne-openconfig. Sebenzisa i-ID yomxhasi eyodwa kuyo yonke inzwa; apha, sisebenzisa "i-telegraf3". Igama elikhethekileyo elisetyenziswe apha kule nzwa ngu "mem" (Umfanekiso 7).
Okokugqibela, yongeza iplagin output outputs.influxdb ukuthumela le data sensor kwiInfluxDB. Apha, uvimba wedatha unikwe igama elithi "telegraf" kunye negama lomsebenzisi njenge "influx" kunye negama lokugqitha elithi "influxdb" (Figure 8).
Nje ukuba uhlele ifayile ye-telegraf.conf, qalisa kwakhona inkonzo ye-telegraf. Ngoku, jonga kwi-InfluxDB CLI ukuze uqiniseke ukuba imilinganiselo yenzelwe zonke izinzwa ezizodwa. Chwetheza "influx" ukungena kwi-InfluxDB CLI.
Njengoko kubonwa kuMfanekiso. 9, faka i-influxDB ngokukhawuleza kwaye usebenzise i-database "telegraf". Onke amagama awodwa anikwe abenzi boluvo adweliswe njengemilinganiselo.
Ukubona isiphumo salo naluphi na umlinganiselo omnye, ukuqinisekisa ukuba ifayile yetelegraf ichanekile kwaye inzwa iyasebenza, sebenzisa umyalelo othi "khetha * kwi-cpu umda 1" njengoko kubonisiwe kuMfanekiso 10.
Ngalo lonke ixesha utshintsho lusenziwa kwifayile ye-telegraf.conf, qiniseka ukuba uyayimisa i-InfluxDB, uqalise kwakhona iTelegraf, emva koko uqalise i-InfluxDB.
Ngena kwi-Grafana kwi-browser kwaye wenze iideshibhodi emva kokuqinisekisa ukuba idatha iqokelelwa ngokuchanekileyo.
Yiya kuQhagamshelwano> I-InfuxDB> Yongeza umthombo omtsha wedatha.
- Nika igama kulo mthombo wedatha. Kule demo yi "test-1".
- Ngaphantsi kwe-HTTP stanza, sebenzisa i-Ubuntu iseva ye-IP kunye ne-8086 port.
- Kwiinkcukacha ze-InfluxDB, sebenzisa igama elifanayo ledatha, "telegraf," kwaye unikeze igama lomsebenzisi kunye negama lokugqitha leseva ye-Ubuntu.
- Cofa Gcina & uvavanyo. Qinisekisa ukuba uyawubona umyalezo othi, "uphumelele".
- Nje ukuba umthombo wedatha wongezwe ngempumelelo, yiya kwiiDashboards kwaye ucofe Ntsha. Masenze iidashbhodi ezimbalwa ezibalulekileyo kumthwalo we-AI/ML kwimowudi yomhleli.
Exampiigrafu zeSensor
Ezi zilandelayo zi-exampizinto zokubala ezinkulu ezibalulekileyo esweni uthungelwano lwe-AI/ML.
IpesentitagUkusetyenziswa kwe-interface yokungena et-0/0/0 kumqolo-1
- Khetha umthombo wedatha njengovavanyo-1.
- Kwicandelo FROM, khetha umlinganiselo njenge "interface". Eli ligama elilodwa elisetyenziswe kulo mendo woluvo.
- Kwicandelo APHO, khetha isixhobo::tag, kwaye kwi tag ixabiso, khetha igama lenginginya lokutshintsha, oko kukuthi, umqolo1.
- Kwi KHETHA icandelo, khetha isebe loluvo ofuna ukulijonga; kulo mzekelo khetha “ummandla(/unxibelelwano/ujongano[if_name='et-0/0/0']/state/counters/if_in_1s_octets)”. Ngoku kwicandelo elifanayo, nqakraza ku "+" kwaye wongeze le zibalo zokubala (/ 50000000000 * 100). Ngokwesiseko sibala ipesentitage ukusetyenziswa kwe-400G interface.
- Qinisekisa ukuba i-FORMAT “yi-time-series,” kwaye unike igama legrafu kwicandelo le-ALIAS.
Incopho yokuhlala yesithinteli kuwo nawuphi na umgca
- Khetha umthombo wedatha njengovavanyo-1.
- Kwicandelo elithi FROM, khetha umlinganiselo njenge "buffer."
- Kwicandelo APHO, kukho imimandla emithathu ekufuneka igcwaliswe. Khetha isixhobo::tag, kwaye kwi tag ixabiso khetha igama lenginginya lotshintshiselwano (okt umqolo-1); KWAYE ukhethe /cos/ujongano/ujongano/@ igama::tag kwaye ukhethe ujongano (okt et- 0/0/0); KWAYE ukhethe umgca ngokunjalo, /cos/interfaces/interface/queues/queue/@queue::tag kwaye ukhethe inombolo yomgca 4.
- Kwi KHETHA icandelo, khetha isebe loluvo ofuna ukulijonga; kulo mzekelo khetha "ummandla(/cos/interfaces/interface/queues/queue/PeakBufferOccupancy)."
- Qinisekisa ukuba i-FORMAT "yi-time-series" kwaye unike igama legrafu kwicandelo le-ALIAS.
Ungadibanisa idatha yojongano oluninzi kwigrafu efanayo njengoko kubonwa kuMfanekiso 17 we-et-0/0/0, et-0/0/1, et-0/0/2 njl.
I-PFC kunye ne-ECN ithetha i-derivative
Ukufumana intsingiselo ephuma kuyo (umahluko kwixabiso ngaphakathi koluhlu lwexesha), sebenzisa imowudi yokubuza ekrwada.
Lo ngumbuzo we-influx esiwusebenzisileyo ukufumana intsingiselo ephuma phakathi kwamaxabiso amabini e-PFC kwi-et-0/0/0 ye-Spine-1 ngemizuzwana.
KHETHA i-derivative(ithetha(“/i-interfaces/interface[ukuba_igama='et-0/0/0′]/state/pfc-counter/tx_pkts”), 1s) UKUSUKA “kwi-interface” APHO (“isixhobo”:tag = 'Umqolo-1') KUNYE ne-$timeFilter IQELA NGEXESHA($ikhefu)
KHETHA i-derivative(ithetha(“/i-interfaces/interface[ukuba_igama='et-0/0/8′]/state/error-counters/ecn_ce_marked_pkts”), 1s) UKUSUKA “kwi-interface” APHO (“isixhobo”::tag = 'Umqolo-1') KUNYE ne-$timeFilter IQELA NGEXESHA($ikhefu)
Iimpazamo zezibonelelo zegalelo zithetha into ephuma kuyo
Umbuzo okrwada weziphoso zoovimba uthetha i-derivative yile:
KHETHA i-derivative(ithetha(“/interfaces/interface[if_name='et-0/0/0′]/state/error-counters/if_in_resource_errors”), 1s) UKUSUKA “kwi-interface” APHO (“isixhobo”:tag = 'Umqolo-1') KUNYE ne-$timeFilter IQELA NGEXESHA($ikhefu)
Amathontsi omsila athetha into ephuma kuyo
Umbuzo okrwada wokwehla komsila uthetha into ephuma kuyo yile:
KHETHA i-derivative(ithetha(“/cos/interfaces/interface/queues/queue/tailDropBytes”), 1s) UKUSUKA “ku-bu” APHO (“isixhobo”::tag = 'Igqabi-1' KUNYE “/cos/interfaces/interface/@name”::tag = 'et-0/0/0' KUNYE “/cos/interfaces/interface/queues/queue/@queue”::tag = '4') KUNYE ne-$timeFilter IQELA NGEXESHA($__ikhefu) gcwalisa(null)
Ukusetyenziswa kwe-CPU
- Khetha umthombo wedatha njengovavanyo-1.
- Kwicandelo FROM, khetha umlinganiselo njenge "newcpu"
- Kwi-APHO, kukho iindawo ezintathu zokuzaliswa. Khetha isixhobo::tag kwaye kwi tag ixabiso khetha igama lenginginya lotshintshiselwano (okt umqolo-1). KUNYE /kwicandelo/kwicandelo/iipropathi/ipropathi/igama:tag, kwaye ukhethe cpuutilization-itotali KUNYE negama::tag khetha RE0.
- Kwi KHETHA icandelo, khetha isebe loluvo ofuna ukulijonga. Kule meko, khetha "umhlaba (ilizwe/ixabiso)".
Umbuzo okrwada wokufumana i-non-negative ephuma kuyo yomsila yehla yokutshintsha okuninzi kujongano oluninzi kwiibits/umzuzwana.
KHETHA non_negative_derivative(ithetha(“/cos/interfaces/interface/queues/queue/tailDropBytes”), 1s)*8 UKUSUKA “ku-buffer” APHO (isixhobo::tag =~ /^Spine-[1-2]$/) kunye (“/cos/interfaces/interface/@name”::tag =~ /et-0\/0\/[0-9]/ okanye “/cos/interfaces/interface/@name”::tag=~/et-0\/0\/1[0-5]/) KUNYE ne-$timeFilter IQELA NGEXESHA($__ikhefu),isixhobo::tag zalisa(null)
Ezi yayizezinye ze exampiigrafu ezinokuthi zenziwe ukubeka iliso kwinethiwekhi ye-AI/ML.
Isishwankathelo
Eli phepha libonisa indlela yokutsala idatha ye-telemetry kunye nokuyibona ngokudala iigrafu. Eli phepha lithetha ngokuthe ngqo malunga ne-AI/ML zoluvo, zombini ezomthonyama kunye ne-openconfig kodwa ukuseta kunokusetyenziselwa zonke iintlobo zabenzi boluvo. Sikwabandakanye nezisombululo kwimiba emininzi onokuthi ujongane nayo ngelixa usenza ukuseta. Amanyathelo kunye neziphumo eziboniswe kweli phepha zithe ngqo kwiinguqulelo zesitaki se-TIG ezikhankanywe ngaphambili. Ixhomekeke kutshintsho ngokuxhomekeke kuguqulelo lwesoftware, abenzi boluvo kunye noguqulelo lweJunos.
Iimbekiselo
Juniper Yang Data Model Explorer kuzo zonke iinketho zoluvo
https://apps.juniper.net/ydm-explorer/
Iforum ye-Openconfig yabenzi boluvo be-openconfig
https://www.openconfig.net/projects/models/
IKomkhulu leNtengiso
Juniper Networks, Inc.
1133 Indlela entsha
Sunnyvale, CA 94089 USA
Ifowuni: 888. JUNIPER (888.586.4737)
okanye +1.408.745.2000
Ifeksi: +1.408.745.2100
www.juniper.net
Ikomkhulu le-APAC kunye ne-EMEA
Juniper Networks International BV
Boeing Avenue 240
1119 PZ Schiphol-Rijk
EAmsterdam, eNetherlands
Ifowuni: +31.207.125.700
Ifeksi: +31.207.125.701
Copyright 2023 Juniper Networks. I-Inc. Amalungelo e-Ail agciniwe. I-Juniper Networks, i-logo ye-Juniper Networks, i-Juniper, i-Junos, kunye nezinye iimpawu zorhwebo ziimpawu zorhwebo ezibhalisiweyo ze-Juniper Networks. inc. kunye/okanye namahlakani ayo e-United States nakwamanye amazwe. Amanye amagama anokuba ziimpawu zorhwebo zabanini bazo. I-Juniper Networks ayithathi xanduva kuyo nayiphi na into engachanekanga kolu xwebhu. IJuniper Networks inelungelo lokutshintsha. lungisa. utshintshe, okanye uhlaziye olu papasho ngaphandle kwesaziso.
Thumela impendulo ku: design-center-comments@juniper.net V1.0/240807/ejm5-telemetry-junos-ai-ml
Amaxwebhu / Izibonelelo
![]() |
I-Juniper NETWORKS I-Telemetry kwi-Junos ye-AI ML yoMsebenzi weSoftware [pdf] Isikhokelo somsebenzisi I-Telemetry eJunos ye-AI ML yoMsebenzi weSoftware, iJunos ye-AI ML yoMsebenzi weSoftware, isoftware ye-AI ML, iSoftware yoMsebenzi, iSoftware. |