Telemetreg yn Junos ar gyfer Llwythi Gwaith AI/ML
Awdur: Shalini Mukherjee
Rhagymadrodd
Gan fod trafnidiaeth clwstwr AI yn gofyn am rwydweithiau di-golled gyda mewnbwn uchel a hwyrni isel, elfen hollbwysig o'r rhwydwaith AI yw casglu data monitro. Mae Junos Telemetry yn galluogi monitro dangosyddion perfformiad allweddol yn gronynnog, gan gynnwys trothwyon a rhifyddion ar gyfer rheoli tagfeydd a chydbwyso llwythi traffig. Mae sesiynau gRPC yn cefnogi ffrydio data telemetreg. Mae gRPC yn fframwaith modern, ffynhonnell agored, perfformiad uchel sydd wedi'i adeiladu ar drafnidiaeth HTTP/2. Mae'n grymuso galluoedd ffrydio deugyfeiriadol brodorol ac yn cynnwys metadata hyblyg hyblyg ym mhenawdau ceisiadau. Y cam cychwynnol mewn telemetreg yw gwybod pa ddata sydd i'w gasglu. Yna gallwn ddadansoddi'r data hwn mewn fformatau amrywiol. Unwaith y byddwn yn casglu'r data, mae'n bwysig ei gyflwyno mewn fformat sy'n hawdd ei fonitro, gwneud penderfyniadau a gwella'r gwasanaeth a gynigir. Yn y papur hwn, rydym yn defnyddio pentwr telemetreg sy'n cynnwys Telegraf, InfluxDB, a Grafana. Mae'r pentwr telemetreg hwn yn casglu data gan ddefnyddio model gwthio. Mae modelau tynnu traddodiadol yn defnyddio llawer o adnoddau, mae angen ymyrraeth â llaw, a gallent gynnwys bylchau gwybodaeth yn y data y maent yn ei gasglu. Mae modelau gwthio yn goresgyn y cyfyngiadau hyn trwy gyflwyno data yn anghydamserol. Maent yn cyfoethogi'r data trwy ddefnyddio hawdd ei ddefnyddio tags ac enwau. Unwaith y bydd y data mewn fformat mwy darllenadwy, rydym yn ei storio mewn cronfa ddata a'i ddefnyddio mewn delweddu rhyngweithiol web cais am ddadansoddi'r rhwydwaith. Ffigur. Mae 1 yn dangos i ni sut mae'r pentwr hwn wedi'i gynllunio ar gyfer casglu, storio a delweddu data yn effeithlon, o ddyfeisiau rhwydwaith sy'n gwthio data i'r casglwr i'r data sy'n cael ei arddangos ar ddangosfyrddau i'w dadansoddi.
TIG Stack
Fe wnaethom ddefnyddio gweinydd Ubuntu i osod yr holl feddalwedd gan gynnwys y stack TIG.
Telegraff
I gasglu data, rydym yn defnyddio Telegraf ar weinydd Ubuntu sy'n rhedeg 22.04.2. Y fersiwn Telegraf sy'n rhedeg yn y demo hwn yw 1.28.5.
Mae Telegraf yn asiant gweinydd a yrrir gan ategyn ar gyfer casglu ac adrodd ar fetrigau. Mae'n defnyddio prosesydd plugins cyfoethogi a normaleiddio'r data. Yr allbwn plugins yn cael eu defnyddio i anfon y data hwn i wahanol storfeydd data. Yn y ddogfen hon rydym yn defnyddio dau plugins: un ar gyfer synwyryddion openconfig a'r llall ar gyfer synwyryddion brodorol Juniper.
MewnlifDB
I storio'r data mewn cronfa ddata cyfres amser, rydym yn defnyddio InfluxDB. Mae'r ategyn allbwn yn Telegraf yn anfon y data i InfluuxDB, sy'n ei storio mewn modd hynod effeithlon. Rydym yn defnyddio V1.8 gan nad oes CLI yn bresennol ar gyfer V2 ac uwch.
Grafana
Defnyddir Grafana i ddelweddu'r data hwn. Mae Grafana yn tynnu'r data o InfluxDB ac yn caniatáu i ddefnyddwyr greu dangosfyrddau cyfoethog a rhyngweithiol. Yma, rydym yn rhedeg fersiwn 10.2.2.
Ffurfweddiad Ar Y Swits
I weithredu'r pentwr hwn, yn gyntaf mae angen i ni ffurfweddu'r switsh fel y dangosir yn Ffigur 2. Rydym wedi defnyddio porthladd 50051. Gellir defnyddio unrhyw borthladd yma. Mewngofnodwch i'r switsh QFX ac ychwanegwch y cyfluniad canlynol.
Nodyn: Mae'r cyfluniad hwn ar gyfer labordai/POCs gan fod y cyfrinair yn cael ei drosglwyddo mewn testun clir. Defnyddiwch SSL i osgoi hyn.
Amgylchedd
Nginx
Mae angen hyn os na allwch ddatgelu'r porthladd y mae Grafana yn lletya arno. Y cam nesaf yw gosod nginx ar y gweinydd Ubuntu i wasanaethu fel asiant dirprwy gwrthdro. Unwaith y bydd nginx wedi'i osod, ychwanegwch y llinellau a ddangosir yn Ffigur 4 i'r ffeil “diofyn” a symudwch y ffeil o /etc/nginx i /etc/nginx/sites-enabled.
Sicrhewch fod y wal dân yn cael ei haddasu i roi mynediad llawn i'r gwasanaeth nginx fel y dangosir yn Ffigur 5.
Unwaith y bydd nginx wedi'i osod a bod y newidiadau gofynnol yn cael eu gwneud, dylem allu cyrchu Grafana o a web porwr trwy ddefnyddio cyfeiriad IP y gweinydd Ubuntu lle mae'r holl feddalwedd wedi'i osod.
Mae yna glitch bach yn Grafana nad yw'n gadael i chi ailosod y cyfrinair diofyn. Defnyddiwch y camau hyn os ydych chi'n rhedeg i mewn i'r mater hwn.
Camau i'w cyflawni ar y gweinydd Ubuntu i osod y cyfrinair yn Grafana:
- Ewch i /var/lib/grafana/grafana.db
- Gosod sqllite3
o sudo apt gosod sqlite3 - Rhedeg y gorchymyn hwn ar eich terfynell
o sqlite3 grafana.db - Sqlite gorchymyn brydlon yn agor; rhedeg yr ymholiad canlynol:
> dileu o'r defnyddiwr lle mewngofnodi = 'gweinyddwr' - Ailgychwynnwch grafana a theipiwch admin fel enw defnyddiwr a chyfrinair. Mae'n annog cyfrinair newydd.
Unwaith y bydd yr holl feddalwedd wedi'i osod, crëwch y ffeil config yn Telegraf a fydd yn helpu i dynnu'r data telemetreg o'r switsh a'i wthio i InfluuxDB.
Ategyn Synhwyrydd Openconfig
Ar y gweinydd Ubuntu, golygwch y ffeil /etc/telegraf/telegraf.conf i ychwanegu'r holl angenrheidiol plugins a synwyr. Ar gyfer y synwyryddion openconfig, rydym yn defnyddio'r ategyn gNMI a ddangosir yn Ffigur 6. At ddibenion demo, ychwanegwch yr enw gwesteiwr fel “spine1”, y rhif porthladd “50051” a ddefnyddir ar gyfer gRPC, enw defnyddiwr a chyfrinair y switsh, a'r rhif eiliadau ar gyfer ail ddeialu rhag ofn y bydd methiant.
Yn y pennill tanysgrifio, ychwanegwch enw unigryw, “cpu” ar gyfer y synhwyrydd penodol hwn, llwybr y synhwyrydd, a'r cyfnod amser ar gyfer cydio yn y data hwn o'r switsh. Ychwanegwch yr un ategyn inputs.gnmi a inputs.gnmi.subscription ar gyfer yr holl synwyryddion config agored. (Ffigur 6)
Ategyn Synhwyrydd Brodorol
Mae hwn yn ategyn rhyngwyneb telemetreg Juniper a ddefnyddir ar gyfer synwyryddion brodorol. Yn yr un ffeil telegraf.conf, ychwanegwch yr ategyn synhwyrydd brodorol inputs.jti_openconfig_telemetry lle mae'r meysydd bron yr un fath â openconfig. Defnyddiwch ID cleient unigryw ar gyfer pob synhwyrydd; yma, rydym yn defnyddio “telegraf3”. Yr enw unigryw a ddefnyddir yma ar gyfer y synhwyrydd hwn yw “mem” (Ffigur 7).
Yn olaf, ychwanegwch ategyn allbwn outputs.influxdb i anfon y data synhwyrydd hwn i InfluxDB. Yma, gelwir y gronfa ddata yn “telegraf” gydag enw defnyddiwr fel “mewnlif” a chyfrinair “influxdb” (Ffigur 8).
Unwaith y byddwch wedi golygu'r ffeil telegraf.conf, ailgychwynnwch y gwasanaeth telegraf. Nawr, gwiriwch yr InfluxDB CLI i wneud yn siŵr a yw mesuriadau'n cael eu creu ar gyfer yr holl synwyryddion unigryw. Teipiwch “mewnlif” i fynd i mewn i'r InfluxDB CLI.
Fel y gwelir yn Ffigur. 9, nodwch yr ysgogiad influxDB a defnyddiwch y gronfa ddata “telegraf”. Rhestrir yr holl enwau unigryw a roddir i'r synwyryddion fel mesuriadau.
I weld allbwn unrhyw un mesuriad, dim ond i sicrhau bod y ffeil telegraf yn gywir a bod y synhwyrydd yn gweithio, defnyddiwch y gorchymyn “dewis * o gyfyngiad cpu 1” fel y dangosir yn Ffigur 10.
Bob tro y gwneir newidiadau i'r ffeil telegraf.conf, gwnewch yn siŵr eich bod yn rhoi'r gorau i InfluxDB, ailgychwyn Telegraf, ac yna cychwyn InfluxDB.
Mewngofnodwch i Grafana o'r porwr a chreu dangosfyrddau ar ôl sicrhau bod y data'n cael ei gasglu'n gywir.
Ewch i Connections> InfuxDB> Ychwanegu ffynhonnell ddata newydd.
- Rhowch enw i'r ffynhonnell ddata hon. Yn y demo hwn mae'n “prawf-1”.
- O dan y pennill HTTP, defnyddiwch IP gweinydd Ubuntu a phorthladd 8086.
- Yn y manylion InfluxDB, defnyddiwch yr un enw cronfa ddata, “telegraf,” a rhowch enw defnyddiwr a chyfrinair y gweinydd Ubuntu.
- Cliciwch Cadw a phrofi. Sicrhewch eich bod yn gweld y neges, “llwyddiannus”.
- Unwaith y bydd y ffynhonnell ddata wedi'i hychwanegu'n llwyddiannus, ewch i Dangosfyrddau a chliciwch Newydd. Gadewch inni greu ychydig o ddangosfyrddau sy'n hanfodol ar gyfer llwythi gwaith AI/ML yn y modd golygydd.
Examples O Graffiau Synhwyrydd
Mae'r canlynol yn gynampllai o rai cownteri mawr sy'n hanfodol ar gyfer monitro rhwydwaith AI/ML.
Percentage defnydd ar gyfer rhyngwyneb mynediad et-0/0/0 ar asgwrn cefn-1
- Dewiswch y ffynhonnell ddata fel prawf-1.
- Yn yr adran FROM, dewiswch y mesuriad fel "rhyngwyneb". Dyma'r enw unigryw a ddefnyddir ar gyfer y llwybr synhwyrydd hwn.
- Yn yr adran BLE, dewiswch ddyfais::tag, ac yn y tag gwerth, dewiswch enw gwesteiwr y switsh, hynny yw, asgwrn cefn1.
- Yn yr adran SELECT, dewiswch y gangen synhwyrydd yr ydych am ei monitro; yn yr achos hwn dewiswch “field(/interfaces/interface[if_name='et-0/0/0']/state/counters/if_in_1s_octets)". Nawr yn yr un adran, cliciwch ar “+” ac ychwanegwch y mathemateg cyfrifiad hwn (/50000000000 * 100). Yn y bôn, rydym yn cyfrifo'r canrantage defnyddio rhyngwyneb 400G.
- Gwnewch yn siŵr bod y FFORMAT yn “gyfres amser,” ac enwch y graff yn yr adran ALIAS.
Defnydd byffer brig ar gyfer unrhyw giw
- Dewiswch y ffynhonnell ddata fel prawf-1.
- Yn yr adran FROM, dewiswch y mesuriad fel "byffer."
- Yn yr adran LLE, mae tri maes i'w llenwi. Dewiswch ddyfais::tag, ac yn y tag gwerth dewiswch enw gwesteiwr y switsh (hy meingefn-1); A dewiswch /cos/interfaces/interface/@name::tag a dewiswch y rhyngwyneb (hy et- 0/0/0); A dewiswch y ciw hefyd, /cos/interfaces/interface/queues/ciw/@queue::tag a dewis rhif ciw 4.
- Yn yr adran SELECT, dewiswch y gangen synhwyrydd rydych chi am ei monitro; yn yr achos hwn dewiswch “maes (/cos/rhyngwynebau/rhyngwyneb/ciwiau/ciw/Meddiannu Uchafbwynt).”
- Gwnewch yn siŵr bod y FFORMAT yn “gyfres amser” ac enwch y graff yn yr adran ALIAS.
Gallwch goladu data ar gyfer rhyngwynebau lluosog ar yr un graff ag a welir yn Ffigur 17 ar gyfer et-0/0/0, et-0/0/1, et-0/0/2 ac ati.
Deilliad cymedrig PFC ac ECN
I ddarganfod y deilliad cymedrig (y gwahaniaeth mewn gwerth o fewn ystod amser), defnyddiwch y modd ymholiad crai.
Dyma'r ymholiad mewnlifiad rydym wedi'i ddefnyddio i ddarganfod y deilliad cymedrig rhwng dau werth PFC ar et-0/0/0 o Spine-1 mewn eiliad.
Deilliad SELECT (cymedr (“/interfaces/interface[if_name='et-0/0/0′]/state/pfc-counter/tx_pkts"), 1s) O “rhyngwyneb” LLE (“dyfais” ::tag = 'Spine-1') A $timeFilter GRWP ERBYN amser ($cyfwng)
Deilliad SELECT (cymedr (“/interfaces/interface[if_name='et-0/0/8′]/state/error-counters/ecn_ce_marked_pkts"), 1s) O “rhyngwyneb” LLE (“dyfais” ::tag = 'Spine-1') A $timeFilter GRWP ERBYN amser ($cyfwng)
Mae gwallau adnoddau mewnbwn yn golygu deilliad
Yr ymholiad crai am wallau adnoddau deilliadol yw:
Deilliad SELECT (cymedr (“/interfaces/interface[if_name='et-0/0/0′]/state/error-counters/if_in_resource_errors"), 1s) O “rhyngwyneb” LLE (“dyfais” ::tag = 'Spine-1') A $timeFilter GRWP ERBYN amser ($cyfwng)
Mae diferion cynffon yn golygu deilliad
Yr ymholiad crai am ddeilliad cymedrig diferion cynffon yw:
Deilliad SELECT (cymedr ("/ cos/rhyngwynebau/rhyngwyneb/ciwiau/ciw/tailDropBytes"), 1s) O “buffer” LLE (“dyfais”::tag = 'Deilen-1' A “/cos/interfaces/interface/@name”::tag = 'et-0/0/0' A “/cos/interfaces/interface/queues/ciw/@queue”::tag = '4') A $timeFilter GRŴP ERBYN amser($__cyfwng) llenwi(null)
defnydd CPU
- Dewiswch y ffynhonnell ddata fel prawf-1.
- Yn yr adran FROM, dewiswch y mesuriad fel "newcpu"
- Yn y BLE, mae tri maes i'w llenwi. Dewiswch ddyfais::tag ac yn y tag gwerth dewiswch enw gwesteiwr y switsh (hy meingefn-1). AC mewn / cydrannau / cydran / eiddo / eiddo / enw:tag, a dewiswch cpuutilization-cyfanswm AC mewn enw::tag dewiswch RE0.
- Yn yr adran SELECT, dewiswch y gangen synhwyrydd rydych chi am ei monitro. Yn yr achos hwn, dewiswch "maes (cyflwr / gwerth)".
Yr ymholiad amrwd ar gyfer dod o hyd i ddeilliad annegyddol diferion cynffon ar gyfer switshis lluosog ar ryngwynebau lluosog mewn didau/eiliadau.
SELECT_non_negative_deilliadol(cymedr(“/cos/interfaces/interface/queues/ciw/tailDropBytes”), 1s)*8 O “buffer” LLE (dyfais::tag =~ /^ Asgwrn Cefn [1-2]$/) a (“/cos/interfaces/interface/@name”::tag =~ /et-0\/0\/[0-9]/ neu “/cos/interfaces/interface/@name”::tag=~/et-0\/0\/1[0-5]/) A $timeFilter GRŴP ERBYN amser ($__cyfwng), dyfais::tag llenwi(nwl)
Dyma rai o'r cynampllai o'r graffiau y gellir eu creu ar gyfer monitro rhwydwaith AI/ML.
Crynodeb
Mae'r papur hwn yn dangos y dull o dynnu data telemetreg a'i ddelweddu trwy greu graffiau. Mae'r papur hwn yn sôn yn benodol am synwyryddion AI/ML, yn frodorol ac yn agored, ond gellir defnyddio'r gosodiad ar gyfer pob math o synwyryddion. Rydym hefyd wedi cynnwys atebion ar gyfer materion lluosog y gallech eu hwynebu wrth greu'r setup. Mae'r camau a'r allbynnau a ddangosir yn y papur hwn yn benodol i'r fersiynau o'r stac TIG a grybwyllwyd yn gynharach. Gall newid yn dibynnu ar fersiwn y meddalwedd, y synwyryddion a fersiwn Junos.
Cyfeiriadau
Archwiliwr Model Data Juniper Yang ar gyfer yr holl opsiynau synhwyrydd
https://apps.juniper.net/ydm-explorer/
Fforwm Openconfig ar gyfer synwyryddion openconfig
https://www.openconfig.net/projects/models/
Pencadlys Corfforaethol a Gwerthu
Juniper Networks, Inc.
1133 Ffordd Arloesol
Sunnyvale, CA 94089 UDA
Ffôn: 888. JUNIPER (888.586.4737)
neu +1.408.745.2000
Ffacs: +1.408.745.2100
www.juniper.net
Pencadlys APAC ac EMEA
BV Rhyngwladol Juniper Networks
Rhodfa Boeing 240
1119 PZ Schiphol-Rijk
Amsterdam, Yr Iseldiroedd
Ffôn: +31.207.125.700
Ffacs: +31.207.125.701
Hawlfraint 2023 Juniper Networks. Inc. Cedwir hawliau ail. Mae Juniper Networks, logo Juniper Networks, Juniper, Junos, a nodau masnach eraill yn nodau masnach cofrestredig Juniper Networks. gan gynnwys. a/neu ei chymdeithion yn yr Unol Daleithiau a gwledydd eraill. Gall enwau eraill fod yn nodau masnach eu perchnogion priodol. Nid yw Juniper Networks yn cymryd unrhyw gyfrifoldeb am unrhyw wallau yn y ddogfen hon. Mae Juniper Networks yn cadw'r hawl i newid. addasu. trosglwyddo, neu fel arall ddiwygio'r cyhoeddiad hwn heb rybudd.
Anfonwch adborth i: design-center-comments@juniper.net V1.0/240807/ejm5- telemetreg-junos-ai-ml
Dogfennau / Adnoddau
![]() |
Rhwydwaith Juniper Telemetry Yn Junos ar gyfer Meddalwedd Llwythi Gwaith AI ML [pdfCanllaw Defnyddiwr Telemetreg Yn Junos ar gyfer Meddalwedd Llwythi Gwaith AI ML, Junos ar gyfer Meddalwedd Llwythi Gwaith AI ML, Meddalwedd Llwythi Gwaith AI ML, Meddalwedd Llwythi Gwaith, Meddalwedd |