JUNIPER NETWERK Logo 1NETCONF & YANG API orkestrasie
GidsJuniper NETWERKE NETCONF & YANG API sagtewareGepubliseer
2023-07-07
VRYSTELLING 4.2

Inleiding

Doel van hierdie dokument
Hierdie dokumentasie beskryf hoe om Paragon Active Assurance met 'n netwerkdiensorkeseerder te integreer via die Beheersentrum NETCONF & YANG API. Hands-on examples word gegee van die belangrikste take wat betrokke is, insluitend: die skep en ontplooiing van virtuele toetsagente, die uitvoer van toetse en monitors, en die herwinning van resultate van hierdie aktiwiteite.
In hierdie dokument word die vrylik beskikbare Python NETCONF-kliënt-ncclient in die rol van orkeseerder gebruik.

Konvensies
Die volgende afkortings word in hierdie dokument gebruik:

Afkorting Betekenis
CLI Command Line Interface
EM Elementbestuurder
ES Fout tweede
MEP MEG (Maintenance Entity Group) End Point (ITU-T Y.1731 definisie) of Maintenance End Point (Cisco definisie)
NFV Netwerkfunksie virtualisering
NFVO Netwerkfunksie Virtualiseringsorkeseerder
NSD Netwerkdiensbeskrywing
RPC Afgeleë Prosedure Oproep
SIP Sessie-aanvangsprotokol
SLA Diensvlakooreenkoms
S-VNFM Spesiale VNF Bestuurder
VNF Virtuele netwerkfunksie
vTA Virtuele toetsagent

Notas oor terugwaartse versoenbaarheid

In weergawes 2.35.4/2.36.0 van die NETCONF & YANG API is die validering van sekere versoeke strenger gemaak om aan die NETCONF-standaard te voldoen. Dit beteken dat kliëntkode gebaseer op ouer weergawes van hierdie gids dalk nou verwerp kan word.
Byvoorbeeldample, in vorige Python example kode, geen naamruimtekenmerk is verskaf nie. Die naamspasie moet nou in die versoek-XML verskaf word wanneer jy 'n ConfD-hulpbron wil wysig.

Voorvereistes en Voorbereidings

ConfD installasie
ConfD ('n produk van Tail-f) word gebruik as 'n tussenganger tussen die Paragon Active Assurance-stelsel en NETCONF. ConfD verbind Paragon Active Assurance-konfigurasie en operasionele data aan die NETCONF & YANG API.
ConfD moes saam met die beheersentrumsagteware geïnstalleer gewees het, soos beskryf in die installasiegids.

Verifieer dat ConfD aan die gang is
Om te verifieer dat die ConfD aan die gang is, voer die opdrag uit
ssh -s @localhost -p 830 netconf
om seker te maak dat ConfD op poort 830 reageer. In die opdrag, is soos gedefinieer deur die netconf gebruiker create
opdrag in die Installasiegids, afdeling Installeer ConfD. Gee die wagwoord wat deur dieselfde opdrag gedefinieer word.
Verifieer dat die beheersentrum-module in die uitvoer ingesluit is. Die uitvoer moet 'n reël soos die volgende bevat:
http://ncc.netrounds.com?module=netrounds-ncc&hersiening=2017-06-15

Sinkroniseer die konfigurasiedatabasis met beheersentrum

Laastens moet ons die konfigurasiedatabasis bywerk deur NETCONF. Ons sal dit hier doen deur middel van 'n Python-biblioteek genaamd ncclient (NETCONF Client). Die taak kan egter ook in 'n ander programmeertaal uitgevoer word solank dit die NETCONF/YANG-protokol gebruik.
Die rol van ncclient is om as 'n kliënt op te tree teenoor die ConfD-bediener wat die NETCONF/YANG API huisves.

Juniper NETWERKE NETCONF & YANG API sagteware -Beheersentrum

Dit is die moeite werd om daarop te wys dat ncclient geensins verwant is aan Beheersentrum nie (voorheen “Netrounds Beheersentrum”), alhoewel die naam toevallig met “ncc” begin.
Hier is hoe om ncclient te installeer:

Ons kan nou die sinchronisasie soos volg uitvoer. Let noukeurig daarop dat dit op 'n aparte rekenaar gedoen moet word, en nie op die Beheersentrumbediener self nie:

#
# LET WEL:
# Hierdie skrip tree op as 'n kliënt teenoor ConfD wat op die NCC-bediener loop.
# Dit sal die NETCONF/YANG API vir kommunikasie gebruik.

Juniper NETWERKE NETCONF & YANG API sagteware - Beheersentrum 1

LET WEL: Hierdie prosedure word ook vereis wanneer toetsagente onafhanklik van NETCONF geïnstalleer en geregistreer is. Sien die nota in die afdeling "Oorview van Test Agent Orchestration” op bladsy 17 vir meer inligting.

Die opstel van veelvuldige NETCONF-beheerde Paragon Active Assurance-rekeninge

Die stappe hieronder word slegs vereis as jy verdere Paragon Active Assurance-rekeninge wil opstel om deur NETCONF beheer te word, bykomend tot die rekening wat op hierdie manier in die Installasiegids, afdeling "Installeer ConfD" gekonfigureer is.
Vir elke sodanige rekening, gaan soos volg voort:

  • Meld in Beheersentrum aan by die rekening en navigeer na Rekening > Toestemmings.Juniper NETWERKE NETCONF & YANG API sagteware -Rekening
  • Voeg die gebruiker by "confd@netrounds.com“, en gee hierdie ConfD-gebruikeradministrasietoestemming in die GUI deur op die Nooi-knoppie te klik.Juniper NETWORKS NETCONF & YANG API-sagteware -Rekening 1
  • Sinkroniseer die konfigurasiedatabasis met Beheersentrum soos beskryf in die afdeling "Sinkroniseer die konfigurasiedatabasis met Beheersentrum" op bladsy 4.
    Jy behoort nou in staat te wees om verskeie Paragon Active Assurance-rekeninge met dieselfde ConfD-gebruiker te beheer.

LET WEL: Sodra jy 'n Paragon Active Assurance-rekening via ConfD begin beheer, moet jy NIE veranderinge aan hierdie rekening aanbring deur die web GUI met betrekking tot enige Paragon Active Assurance-kenmerke wat "config" is (sien die hoofstuk "Ondersteunde kenmerke in Paragon Active Assurance" op bladsy 9). As jy dit doen, sal die verlies van sinkronisering lei.

Inleiding tot NETCONF Orchestration API

verbyview

'n Derdeparty NFVO of diensorkeseerder is tipies die komponent wat toets- en moniteringsessies met behulp van die Control Centre API begin. Hierdie orkestreerder haal ook die saamgestelde metingsresultate van die Toetsagent-aktiwiteite op. Prestasie-KPI's kan deur derdeparty-prestasiebestuurstelsels herwin word, terwyl gebeurtenisse – sodra dit veroorsaak is deur drempeloortredings wat in die beheersentrum gestel is – na derdeparty-foutbestuurstelsels gestuur kan word.
Om op te som, die figuur hieronder toon hoe Paragon Active Assurance met ander derdepartystelsels in die OSS-landskap in wisselwerking tree.

Juniper NETWERKE NETCONF & YANG API sagteware -Oorview

  • NFVO/Diensorkesteerder: Gee die VNF Bestuurder opdrag om die vTA's te ontplooi en Paragon Active Assurance in die diensketting in te stel. Sodra die diens geaktiveer is, gebruik die orkeseerder die API na Beheersentrum om diensaktiveringstoetse te aktiveer en slaag-/druipresultate te kry. As die toetse geslaag word, sal die orkeseerder die API na Beheersentrum gebruik om aktiewe monitering van die diens te begin. KPI's van die monitering word deurlopend óf deur die orkestreerder óf deur 'n aparte Prestasiebestuurplatform herwin.
  • Beheersentrum: Ontplooi, skaal en beëindig die vTA soos deur die NFVO of diensorkeseerder opdrag gegee.
  • Prestasiebestuurstelsel of Diensgehaltebestuurstelsel: Lees KPI's van aktiewe monitering via die Beheersentrum-API.
  • Foutbestuurstelsel: Ontvang NETCONF-, SNMP- of e-poskennisgewings vanaf die beheersentrum as SLA's oortree word.

Definisies van konsepte in Paragon Active Assurance

  • Toetsagente: Die komponente wat metings uitvoer (vir toetse sowel as monitors) in 'n Paragon Active Assurance-stelsel. Toetsagente bestaan ​​uit sagteware met die vermoë om werklike netwerkverkeer te genereer, te ontvang en te ontleed.
  • Die soort toetsagent wat in hierdie dokument bespreek word, is die virtuele toetsagent (vTA), 'n virtuele netwerkfunksie (VNF) wat op 'n hiperviser ontplooi word. Ander tipes toetsagent bestaan ​​ook.
  • Daar is twee basiese tipes metings in Paragon Active Assurance, toetse en monitors.
  • Toets: 'n Toets bestaan ​​uit een of meer stappe wat elkeen 'n bepaalde, eindige duur het. Stappe word opeenvolgend uitgevoer. Elke stap kan behels dat verskeie take gelyktydig uitgevoer word.
  • Monitor: 'n Monitor het nie 'n gespesifiseerde tydsduur nie, maar word onbepaald uitgevoer. Soos 'n stap in 'n toets, kan 'n monitor verskeie gelyktydige take uitvoer.
  • Sjabloon: Wanneer Paragon Active Assurance deur 'n orkestreerder beheer word, word toetse en monitors altyd uitgevoer deur middel van sjablone waarin die toets of monitor gedefinieer word. Parameterinstellings kan tydens looptyd as insette na die sjabloon deurgegee word.

Werkvloei vir outomatisering
Ontwerp Tyd

Met ontwerptyd berei u metings voor deur sjablone vir toetse en monitors in Paragon Active Assurance te skep. Hoe om dit te doen, word in die hoofstuk “Toets en monitor sjablone” op bladsy 15 behandel.

Looptyd
Tydens looptyd stel jy jou toestelle op en voer die werklike metings uit.

  • 'n verbyview van alle examples gegee word gevind in die hoofstuk “Eksamples van die beheer van Paragon Active Assurance via NETCONF & YANG API” op bladsy 15.
  • Hoe om toetsagente te ontplooi en op te stel, word in die hoofstuk “Bvamples: Toetsagente” op bladsy 16.
  • Hoe om voorraaditems soos TW in te voerAMP weerkaatsers en IPTV-kanale word deurgegaan in die hoofstuk “Eksamples: Voorraaditems” op bladsy 29.
  • Hoe om alarms op te stel, word verduidelik in die hoofstuk “Bvamples: Alarms” op bladsy 35.
  • Hoe om toetse en monitors uit te voer deur Paragon Active Assurance-sjablone deur NETCONF uit te voer, word beskryf in die hoofstukke "Bv.amples: Toetse” op bladsy 43 en “Bvamples: Monitors” op bladsy 54.

Ondersteunde kenmerke in Paragon Active Assurance

Alle toets- en monitortipes in Paragon Active Assurance kan geskep en uitgevoer word deur die gebruik van sjablone. Hoe om dit te doen, word gedek in die inprogram-hulp onder “Toetse en monitors” > “Skep sjablone”.

Skep van Paragon Active Assurance-rekeninge word tans nie ondersteun nie; een of meer voorafbepaalde rekeninge sal egter vir die gebruiker opgestel wees.
Die tabelle hieronder beskryf watter kenmerke in Paragon Active Assurance in hierdie vrystelling beskikbaar is, en hoe hierdie kenmerke in YANG voorgestel word.

Verduideliking van YANG-konstrukte

Gerieflikheidshalwe word hier definisies gegee van die YANG-konstrukte waarna in die kenmerktabel verwys word.

  • Config (config=true): Konfigurasiedata, benodig om 'n stelsel van een toestand na 'n ander te transformeer.
  • State (config=false): Stel data: bykomende data op 'n stelsel wat nie konfigurasiedata is nie, soos leesalleen-statusinligting en versamelde statistieke.
  • RPC: 'n Remote Procedure Call, soos gebruik binne die NETCONF protokol.
  • Kennisgewing: Gebeurteniskennisgewings gestuur vanaf 'n NETCONF-bediener na 'n NETCONF-kliënt.

Tabelle van Paragon Active Assurance-kenmerke beskikbaar vir orkestrasie
Hulpbron: Monitering
YANG pad:/rekeninge/rekening/monitors

Kenmerk Subkenmerk YANG konstruksie
Skep/wysig/vee monitor uit Gebaseer op monitor sjabloon Config
Begin/stop monitor Config
Monitor sjablone Lys bestaande monitorsjablone met insette Staat
NETCONF kennisgewings Alarmstatus verander Kennisgewing
Monitor resultate SLA/ES-toonbank vir topvlak (%)
SLA/ES-teller vir taakvlak (%)
Staat

Anders as toetse (vergelyk Hulpbron: Toetse hieronder), word monitors nie met 'n RPC begin nie, maar eerder deur die monitorkonfigurasie te pleeg.
Hulpbron: Toetse
YANG pad: /rekeninge/rekening/toetse

Kenmerk Subkenmerk YANG konstruksie
Begin toets Gebaseer op toets sjabloon RPC
Bestuur toetse Lys toetse met status Staat
Toets sjablone Lys bestaande toetssjablone met insette Staat
NETCONF kennisgewings Toetsstatus verander Kennisgewing
Toets resultate Kry toetsstapstatus (slaag, druip, fout, …) Staat

Hulpbron: Toetsagente
YANG paaie:

  • /accounts/account/test-agents (Config)
  • /accounts/account/registered-test-agents (Staat)

Toetsagente onder /accounts/account/test-agents is dié wat in 'n rekening gekonfigureer is. Slegs hierdie toetsagente kan deur die orkeseerder gekonfigureer en gebruik word in toetse en monitors via NETCONF.
Nadat jy 'n toetsagent opgestel het en dit by die rekening geregistreer het, sal die toetsagent onder /accounts/account/registered-test-agents verskyn. U kan alle geregistreerde toetsagente vind deur 'n "get"-opdrag in NETCONF te gebruik (vergelyk die hoofstuk Bvamples: Toetsagente).
Onder /accounts/account/registered-test-agents kan jy ook toetsagente vind wat nog nie opgestel is nie. Enige sulke toetsagente moet gekonfigureer word voordat hulle gebruik kan word.
In 'n orkestrasie-scenario word dit oor die algemeen aanbeveel dat jy alle konfigurasie van jou Paragon Active Assurance-rekening deur NETCONF doen. Dit verseker dat toets-agente en geregistreerde-toets-agente nie verskil nie.

Kenmerk Subkenmerk YANG konstruksie
Skep vooraf toetsagent op bediener Config
Stel vanlyn toetsagent op (Beheersentrum stoot konfigurasie na toetsagent
wanneer dit aanlyn kom)
Config
Gebruik bestaande/ekstern gekonfigureerde toetsagente Gebruik in toets/monitor Config
Stel koppelvlakke op Config
Kry status Staat
Stel toetsagent op (slegs toetstoestel) Stel NTP op Config
Stel brûe op Config
Stel VLAN-koppelvlakke op Config
Stel SSH-sleutels op Config
IPv6 Config
Gebruik Herlaai RPC
Dateer op RPC
NETCONF kennisgewings Aanlynstatus verander Kennisgewing
Status Kry stelselstatus (uptyd, geheuegebruik,
laai gemiddelde, weergawe)
Staat

Hulpbron: Inventaris
YANG-pad: /accounts/account/twamp-reflektors

Juniper NETWERKE NETCONF & YANG API sagteware -Oorview 1Juniper NETWERKE NETCONF & YANG API sagteware -Oorview 2Juniper NETWERKE NETCONF & YANG API sagteware -Oorview 3

Ondersteunde NETCONF-vermoëns

Die tabel hieronder wys na die IETF RFC's wat die NETCONF-vermoëns beskryf wat gebruik word vir die doel van Paragon Active Assurance-orkestrasie.

Toets en monitor sjablone
Sjablone vir toets- en monitortipes moet met die hand deur die Paragon Active Assurance-gebruikerskoppelvlak opgestel word. Hoe om dit te doen, word gedek in die inprogram-hulp onder “Toetse en monitors” > “Skep sjablone”.

Examples van die beheer van Paragon Active Assurance via NETCONF & YANG API

In die hoofstukke wat volg, word aanvaar dat geskikte toets- en monitorsjablone gedefinieer is volgens die instruksies wat in die hoofstuk “Toets- en monitorsjablone” op bladsy 15 gegee word.

Gereedskap wat in Examples
Al die eksampLese in die daaropvolgende hoofstukke is saamgestel met behulp van die volgende vrylik beskikbare gereedskap:

  • Pang: Word gebruik om die YANG-modelle te visualiseer en te blaai.
  • Beskikbaar by https://github.com/mbj4668/pyang (kloon vanaf git en hardloop python setup.py install).
  • Python NETCONF-kliënt "ncclient": Word gebruik om met beheersentrum te kommunikeer deur NETCONF te gebruik.
  • Beskikbaar by https://github.com/ncclient/ncclient (loop pip install ncclient).
    Die netrounds-ncc.yang-datamodel word in /opt/netrounds-confd gevind sodra ConfD volgens die Installasiegids geïnstalleer is).

verbyview van sleuteltake wat uitgevoer is

(Sommige verdere take word ook geïllustreer in wat volg.)

  • "Skep en ontplooi 'n nuwe toetsagent" op bladsy 16
  • “Skep voorraaditems (bv. weerkaatsers)” op bladsy 29
  • "Stel alarmsjablone op en waarheen om alarms te stuur" op bladsy 35
  • "Skep en voer 'n toets uit" op bladsy 45
  • “Haal tans toetsresultate op” op bladsy 50
  • "Begin 'n monitor (sluit die opstel van alarms in)" op bladsy 60
  • “Haal tans SLA-status op vir 'n monitor” op bladsy 67
  • “Werk met tags”Op bladsy 71

Examples: Toetsagente

verbyview van Test Agent Orchestration
Toetsagente in Paragon Active Assurance word beskou as "konfigurasie" in die konteks van orkestrasie. Dit beteken dat die skepping, beheer en verwydering van toetsagente via die orkestreerder en NETCONF eerder as via die Paragon Active Assurance GUI gedoen moet word.
Juniper NETWERKE NETCONF & YANG API sagteware -ikoonBELANGRIK: As 'n toetsagent deur 'n tegnikus geïnstalleer en by Beheersentrum geregistreer word sonder dat dit eers via die NETCONF & YANG API geskep is, sal die toetsagent nie in die konfigurasiedatabasis bestaan ​​nie, en die stelsel sal uit sinchroniseer raak. Vir ConfD om bewus te word van die Toetsagent in hierdie geval, sal dit nodig wees om 'n nuwe sinchronisasie met Beheersentrum uit te voer, soos uiteengesit in die afdeling "Sinkronisering van die konfigurasiedatabasis met Beheersentrum" op bladsy 4.

Orkestrasie van virtuele toetsagente (vTA's) moet dus eerder in die volgende stappe gedoen word:

  1. Skep die virtuele toetsagent, insluitend sy koppelvlakkonfigurasie, deur die NETCONF & YANG-koppelvlak na die beheersentrum te gebruik. Die naam van die toetsagent sal sy unieke sleutel wees.
  2. Ontplooi die vTA op 'n virtualiseringsplatform. Volg die instruksies in die aanlynhulp onder Toetsagente > Installasie. Die basiese koppelvlakkonfigurasie wat die vTA toelaat om aan Beheersentrum te koppel, sowel as geloofsbriewe vir stawing, word in die vTA verskaf deur gebruik te maak van wolk-init gebruikersdata.
    Sodra die vTA begin het, sal dit outomaties met 'n geënkripteerde OpenVPN-verbinding aan die beheersentrum koppel. 'n NETCONF-kennisgewing word gestuur aangesien die waarde van die vTA se toets-agent-statusverandering parameter nou verander het na "aanlyn".
    LET WEL: Aangesien die naam van die vTA sy identifiseerder in Beheersentrum is, moet hierdie naam dieselfde wees as wat in Beheersentrum in “stap 1” op bladsy 17 gedefinieer is.
  3. Sodra die vTA gekoppel en geverifieer is aan Beheersentrum, word die koppelvlakkonfigurasie na die vTA gedruk. Dit is die koppelvlakkonfigurasie wat in "stap 1" op bladsy 17 verskaf is toe die vTA in Beheersentrum geskep is.
  4. Nadat die vTA sy doel gedien het, vee die vTA uit.

Skep en ontplooi 'n nuwe toetsagent

Ons moet eers 'n toetsagent skep deur die NETCONF & YANG-koppelvlak na die beheersentrum te gebruik. Wanneer 'n toetsagent op hierdie manier geskep word, is geen sinchronisasie met beheersentrum nodig nie.
Die YANG-model vir 'n toetsagent is soos hieronder uitgebeeld. Dit word verkry as uitset van die opdrag
pyang -f boom netrounds-ncc.yang
Die volledige YANG-model word gegee in "Bylaag: Boomstruktuur van volledige YANG-model" op bladsy 81, wat ook 'n legende bevat wat die konvensies verduidelik wat in hierdie en ander YANG-modelillustrasies in die huidige dokument gebruik word.

Juniper NETWERKE NETCONF & YANG API sagteware -agenteJuniper NETWORKS NETCONF & YANG API sagteware -agente 1Juniper NETWORKS NETCONF & YANG API sagteware -agente 2

Ons gaan voort met die volgende stappe, wat in die volgende uiteengesit word:

  1. Aan die begin het die Paragon Active Assurance-rekening "demo" geen toetsagente in sy voorraad nie.
  2.  'n Toetsagent genaamd "vta1" word met ncclient geskep. Op hierdie stage, daar bestaan ​​nog geen werklike toetsagent nie (dit wil sê, dit is nog nie begin nie).
  3. Die toetsagent word in OpenStack ontplooi. (Ontplooiing op daardie platform word hier as een moontlikheid onder andere gekies.)
  4. Die toetsagent koppel aan die Beheersentrum-rekening "demo" en is nou gereed vir gebruik.
    Stap 1: Aan die begin is daar geen toetsagente in die rekening-“demo” nie. Sien die skermkiekie hieronder vanaf die beheersentrum GUI.Juniper NETWORKS NETCONF & YANG API sagteware -agente 3Stap 2: 'n Toetsagent word in beheersentrum geskep deur die Python NETCONF-kliënt "ncclient" te gebruik. Hieronder is 'n kliëntkode vir die skep van 'n toetsagent met een fisiese koppelvlak met 'n DHCP-adres:

invoer argparse
van nclient invoerbestuurder
parser = argparse.ArgumentParser(beskrywing='Toets skep van toetsagent')
parser.add_argument('–host', help='Die gasheernaam waar ConfD gevind word', required=True)
parser.add_argument('–port', help='Die poort om aan ConfD te koppel', required=True)
parser.add_argument('–username', help='Die gebruikernaam om aan ConfD te koppel', required=True)
parser.add_argument('–wagwoord', help='Wagwoord vir die ConfD-rekening', required=True)
parser.add_argument('–netrounds-account', help='Die NCC rekening kort naam', required=Waar)
parser.add_argument('–test-agent-name', help='Naam van toetsagent', required=True)
args = parser.parse_args()
met manager.connect(gasheer=args.gasheer, poort=args.port, gebruikernaam=args.gebruikersnaam,
password=args.password, hostkey_verify=False) as m:
# Skep toetsagent in beheersentrum
xml = """

Juniper NETWORKS NETCONF & YANG API sagteware -agente 4) druk m.edit_config(target='hardloop', config=xml)

LET WEL: Die kode wat voorafgaan met manager.connect(…) word weggelaat van die volgende bvampdie kodebrokkies.
'n NTP-bediener is op eth0 gekonfigureer, en eth0 is ook die bestuurskoppelvlak (dit wil sê die koppelvlak wat aan Beheersentrum koppel).
'n Toetsagent-toepassing laat tans nie die opstel van koppelvlakke toe nie. Om hierdie rede, vanaf weergawe 2.34.0 en verder, is dit moontlik om die koppelvlakkonfigurasie in die YANG-skema weg te laat. Die ooreenstemmende XML word dus in hierdie geval radikaal vereenvoudig:Juniper NETWORKS NETCONF & YANG API sagteware -agente 5Sodra die toetsagent geskep is, bestaan ​​dit in die konfigurasiedatabasis en in beheersentrum. Sien die skermkiekie hieronder van die toetsagent-voorraad, wat die toetsagent “vta1” wys:

Juniper NETWORKS NETCONF & YANG API sagteware -agente 6Stap 3: Dit is nou tyd om die toetsagent “vta1” in OpenStack te ontplooi.
Die toetsagent sal wolk-init-gebruikerdata gebruik om die inligting te kry oor hoe om aan die beheersentrum te koppel. Spesifiek, die gebruikerdatateks file het die volgende inhoud (Let daarop dat die #cloud-config en netrounds_test_agent-lyne teenwoordig moet wees, en dat die oorblywende lyne ingekeep moet word):

Juniper NETWERKE NETCONF & YANG API sagteware - koudVir verdere inligting, verwys asseblief na die dokument How to Deploy Virtual Test Agents in OpenStack.
Sodra die toetsagent ontplooi is en aan die beheersentrum gekoppel is, sal die konfigurasie van die beheersentrum na die toetsagent gestoot word.

Juniper NETWORKS NETCONF & YANG API sagteware - koud 1

Stap 4: Die toetsagent is nou aanlyn in Beheersentrum en het sy konfigurasie verkry. Die toetsagent is gereed vir gebruik in toetse en monitering. Sien hierdie afdelings:

  • “Begin 'n toets” op bladsy 45
  •  "Begin 'n monitor" op bladsy 60

Lys die toetsagente in jou Paragon Active Assurance-rekening
Hieronder is example ncclient Python-kode om die toetsagente in 'n Paragon Active Assurance-rekening te lys:

Juniper NETWORKS NETCONF & YANG API sagteware - koud 2Juniper NETWORKS NETCONF & YANG API sagteware - koud 3Die uitvoering van hierdie kode gee uitset soos hieronder:

Juniper NETWORKS NETCONF & YANG API sagteware - koud 4Juniper NETWORKS NETCONF & YANG API sagteware - koud 5

Vee 'n toetsagent uit
Nadat 'n toets voltooi is, kan dit in sommige gebruiksgevalle relevant wees om die toetsagent uit te vee.
Hieronder is 'n kodebrokkie wat wys hoe om dit met ncclient te doen:

Juniper NETWERKE NETCONF & YANG API sagteware - Agent

NETCONF-kennisgewings
Hieronder bied ons 'n eenvoudige examp'n skrip om na alle inkomende NETCONF-kennisgewings vanaf die beheersentrum te luister. Hierdie kennisgewings word gestuur wanneer sekere gebeurtenisse plaasvind, soos 'n toetsagent wat vanlyn gaan of 'n gebruiker-geïnisieerde toets wat voltooi word. Op grond van die inligting wat in die kennisgewings gedra word, kan gebruikers outomatiese opvolgaksies in die orkeseerder toewys.

Juniper NETWERKE NETCONF & YANG API sagteware - NETCONFWanneer die bogenoemde skrif uitgevoer word, sal NC-kliënt die ontvangde kennisgewing in gestruktureerde XML aanbied. Sien die example uitset hieronder, wat wys dat 'n toetsagent onverwags vanlyn gaan.



2017-02-03T15:09:55.939156+00:00</eventTime>
<test-agent-status-change xmlns=’http://ncc.netrounds.com'>
demo
HW1
vanlyn

Examples: Voorraad Items

Skep (invoer) en bestuur van voorraaditems soos TWAMP weerkaatsers en Y.1731-LP's word op soortgelyke wyse gedoen as vir toetsagente. Hieronder is XML- en NETCONF-kode vir die definisie van sulke entiteite in Paragon Active Assurance deur die NETCONF & YANG API en vir die herwinning van lyste van die items wat gedefinieer is.

Die skep van 'n TWAMP Reflektor

Juniper NETWERKE NETCONF & YANG API sagteware - TWAMPJuniper NETWERKE NETCONF & YANG API sagteware - TWAMP 1

Die skep van 'n Y.1731 MEP

Juniper NETWERKE NETCONF & YANG API sagteware - FiguurSkep 'n IPTV-kanaal

Juniper NETWERKE NETCONF & YANG API sagteware -TWAMP 3

Skep 'n Ping-gasheer

Juniper NETWERKE NETCONF & YANG API Sagteware - GasheerJuniper NETWORKS NETCONF & YANG API-sagteware - Gasheer 1

Skep 'n SIP-rekening

Juniper NETWERKE NETCONF & YANG API sagteware -Rekening Juniper NETWORKS NETCONF & YANG API-sagteware -Rekening 1

Herwinning van voorraaditems
Hieronder is Python-kode vir die herwinning van alle voorraaditems wat in 'n rekening gedefinieer is. (Alle soorte voorraaditems word in een slag hierheen gehaal om 'n mate van herhaling in die dokument te vermy. Natuurlik kan enige subset van voorraaditems gehaal word deur sommige van die reëls onder rekening hieronder uit te laat.)

Juniper NETWERKE NETCONF & YANG API sagteware -Items

Die uitvoering van hierdie kode gee uitset soos hieronder:Juniper NETWORKS NETCONF & YANG API-sagteware - Items 1Juniper NETWORKS NETCONF & YANG API-sagteware - Items 2

Examples: Alarms

Alarmsjablone en verwante items (SNMP-bestuurders, alarm-e-poslyste) word geskep en bestuur op 'n soortgelyke manier as voorraaditems. Hierdie hoofstuk bevat XML- en NETCONF-kode vir die definisie van sulke entiteite in Paragon Active Assurance deur die NETCONF & YANG API en vir die herwinning van lyste van die items wat gedefinieer is.
Alarm-e-poslyste
Skep 'n alarm-e-poslysJuniper NETWORKS NETCONF & YANG API-sagteware - Items 3Juniper NETWORKS NETCONF & YANG API-sagteware - Items 4

Haal tans alle alarm-e-poslyste opJuniper NETWORKS NETCONF & YANG API-sagteware - Items 5

SNMP Bestuurders
Skep 'n SNMP BestuurderJuniper NETWORKS NETCONF & YANG API-sagteware - Items 6Juniper NETWORKS NETCONF & YANG API-sagteware - Items 7

Haal tans alle SNMP-bestuurders opJuniper NETWERKE NETCONF & YANG API sagteware - SNMPJuniper NETWORKS NETCONF & YANG API-sagteware - SNMP 1

Alarm sjablone
Skep 'n alarmsjabloonJuniper NETWERKE NETCONF & YANG API sagteware - SjabloneJuniper NETWORKS NETCONF & YANG API sagteware - sjablone 1

Haal tans alle alarmsjablone opJuniper NETWORKS NETCONF & YANG API sagteware - sjablone 2Juniper NETWORKS NETCONF & YANG API sagteware - sjablone 3

Examples: SSH-sleutels

U kan SSH publieke sleutels by 'n toetsagent voeg via die NETCONF & YANG API. Deur die ooreenstemmende private sleutel te gebruik, kan u dan via SSH by die toetsagent aanmeld.
Die volledige lys van beskikbare bewerkings op SSH-sleutels is soos volg:

  • Voeg 'n SSH-sleutel by
  • Verander 'n SSH-sleutel
  • Inspekteer 'n SSH-sleutel
  • Lys SSH-sleutels
  • Vee 'n SSH-sleutel uit.
    Hieronder word die byvoeg- en skrapbewerkings geïllustreer.
Voeg 'n SSH-sleutel by
Hier is hoe om 'n nuwe SSH-sleutel te skep.Juniper NETWERKE NETCONF & YANG API sagteware - Sleutel

Vee 'n SSH-sleutel uit
As jy 'n SSH-sleutel wil uitvee, gebruik die volgende opdrag:Juniper NETWORKS NETCONF & YANG API-sagteware - Sleutel 1

Examples: Toetse

Daar word hier aanvaar dat toetsagente (soveel as wat vir die toetse benodig word) geskep is volgens die afdeling “Skep en ontplooi ’n nuwe toetsagent” op bladsy 17.
YANG-modelpaaie vir toetse

Item YANG-modelpad: /rekeninge/rekening/toetse …
toetse /.
toets[id] /toets
id /toets/id
naam /toets/naam
status /toets/status
begin Tyd /toets/begintyd
eindtyd /toets/eindtyd
rapporteer-url /toetsverslag-url
stappe /toets/stappe
stap[id] /toets/stappe/stap
naam /toets/stappe/stap/naam
id /toets/stappe/stap/id
begin Tyd /toets/stappe/stap/begintyd
eindtyd /toets/stappe/stap/eindtyd
status /toets/stappe/stap/status
status-boodskap /toets/stappe/stap/statusboodskap
sjablone /sjablone
sjabloon[naam] /template/template
naam /template/template/name
beskrywing /template/template/beskrywing
parameters /template/template/parameters
parameter[sleutel] /templates/template/parameters/parameter
sleutel /templates/template/parameters/parameter/sleutel
tipe /templates/template/parameters/parameter/tipe

Voorvereistes vir toetsorkestrasie

  •  Om 'n toets deur NETCONF met behulp van NC-kliënt te begin, is dit nodig om eers 'n toetssjabloon te bou met behulp van die Beheersentrum GUI soos uiteengesit in die inprogram-hulp onder "Toetse en monitors"> "Skep sjablone". Alle velde wat in daardie sjabloon gespesifiseer is as "Sjablooninvoer" sal as parameters in die XML vereis word wanneer die aanvang van die toetssjabloon georkestreer word.
  • Hardlooptoetse in Paragon Active Assurance word beskou as "staat" in die konteks van orkestrasie. Staatsdata is nie-skryfbare data wat nie in die konfigurasiedatabasis gestoor word nie, in teenstelling met die konfigurasiedata wat in die afdeling “Oorview van Toetsagent-orkestrasie” op bladsy 17. Dit beteken basies dat veranderinge aan toetse of sjablone in die Beheersentrum-GUI geen sinkroniseringverwante probleme tussen Beheersentrum en die konfigurasiedatabasis sal veroorsaak nie.
  • Om verslag te kry-URL reg in toetsverslae, moet jy seker maak die beheersentrum URL korrek opgestel is. Dit word gedoen in die file /opt/netrounds-confd/settings.py. By verstek word die beheersentrumgasheernaam herwin met socket.gethostname(): sien hieronder. As dit nie die korrekte resultaat lewer nie, moet jy die gasheernaam (of die hele URL) handmatig hierin file.

# URL van Beheersentrum sonder skuinsstreep.
# Dit is byvoorbeeldample gebruik in toetsverslag-url.
HOSTNAME = socket.gethostname()
NETRONDE_URL = 'https://%s' % HOSTNAME
Begin 'n toets
Soos beskryf in die afdeling "Skep en ontplooi 'n nuwe toetsagent" op bladsy 17, voer die opdrag pang -f tree netrounds-ncc.yang uit
vanaf die gids /opt/netrounds-confd/ om die YANG-model uit te voer. In hierdie model lyk die RPC vir die begin van 'n toets met NC-kliënt soos volg:Juniper NETWORKS NETCONF & YANG API-sagteware - Sleutel 2Juniper NETWORKS NETCONF & YANG API-sagteware - Sleutel 3

Vir verduidelikings, sien die afdeling "Legende" op bladsy 81 in die aanhangsel.

Die volgende stappe word hieronder getoon:

  1. Toetsagente is by die Paragon Active Assurance-rekening geregistreer, maar geen toetse is nog begin nie.
  2. Die vereiste invoerparameters word geïdentifiseer in die toetssjabloon wat uitgevoer sal word.
  3.  'n HTTP-toets van 60 sekondes word met ncclient begin.

Stap 1: Aan die begin is geen toetse in die Paragon Active Assurance-rekening begin nie. Sien die skermkiekie hieronder vanaf die beheersentrum GUI.Juniper NETWORKS NETCONF & YANG API-sagteware - Sleutel 4
Stap 2: Die sjabloon wat ons sal gebruik om die toets in hierdie eksample is 'n HTTP-toetssjabloon. Dit het twee verpligte invoervelde (kliënte en URL) wat ons as sodanig gespesifiseer het tydens die bou van die sjabloon in die beheersentrum GUI.Juniper NETWORKS NETCONF & YANG API-sagteware - Sleutel 5

Ons sal hierdie parameters (onder andere) definieer in die XML-konfigurasie wat deur ons NETCONF-bestuurder (ncclient) aan die konfigurasiedatabasis gekommunikeer word.
Stap 3: Die HTTP-toets word met ncclient begin.
Hieronder is example-kode waar die vereiste konfigurasie-inligting en parameters vir die HTTP-toetssjabloon gespesifiseer word. Afhangende van hoe die sjabloon gebou is, kan die besonderhede hier verskil.
Vir elke parameter, die kenmerk verskaf moet word. Die sleutel is identies aan die parameter s'n
Veranderlike naam in beheersentrum. Jy kan veranderlike name soos volg inspekteer:

  • Klik Toetse op die sybalk en kies Nuwe toetsreeks.
  • Klik My Templates.
  • Klik op die Wysig-skakel onder die sjabloon van belang.
  • Klik op die Redigeer invoer-knoppie in die regter boonste hoek.

In ons example, en by verstek is die veranderlike name bloot kleinletterweergawes van die vertoonname wat in Beheersentrum gesien word (“url”Teenoor“URL”, ens.). In die beheersentrum GUI kan u egter die veranderlikes hernoem na wat u ook al wil.
Behalwe die sleutel, moet elke parameter sy tipe gespesifiseer hê: bvample, vir die URL.
Neem asseblief kennis dat jy moet herview die volledige YANG-model om volledige inligting oor tipes te bekom. Vir toetsagent-koppelvlakke het die tipe 'n meer komplekse struktuur, soos bewys onder in die kode hieronder.Juniper NETWERKE NETCONF & YANG API sagteware - Sleutel tot

Ons kan nou die skrip met ncclient gebruik. Met die veronderstelling dat alles korrek is, sal die toets geïnisieer word en die uitvoering daarvan in Beheersentrum vertoon word:Juniper NETWERKE NETCONF & YANG API sagteware - BeheerAs die toets suksesvol begin is, sal Beheersentrum met die toets-ID reageer. In hierdie example, die toets ID is 3:Juniper NETWORKS NETCONF & YANG API-sagteware - Beheer 1Die toets ID kan ook gevind word in die URL vir die toets in die Beheersentrum GUI. In hierdie example, dit URL is https://host/demo/testing/3/.
Herwin toetsresultate
Die eenvoudigste manier om toetsresultate te kry, is deur na die toets-ID te wys.
Hieronder is Python-kode om die resultate van die bogenoemde HTTP-toets met ID = 3 te kry:
met bestuurder. Koppel (gasheer=args.gasheer, poort=args.port, gebruikernaam=args.gebruikersnaam, wagwoord=args.wagwoord, hostkey_verify=False) as m:Juniper NETWORKS NETCONF & YANG API-sagteware - Beheer 2

Die uitset sal iets soos volg lyk:Juniper NETWORKS NETCONF & YANG API-sagteware - Beheer 3 Juniper NETWORKS NETCONF & YANG API-sagteware - Beheer 4

Uitvoer en invoer van toetssjablone
Toetssjablone kan in JSON-formaat uitgevoer word en in daardie formaat weer in beheersentrum ingevoer word. Dit is nuttig as jy toetssjablone in 'n ander installasie van Beheersentrum wil gebruik. (Die aanvanklike skepping van die sjablone word die beste deur die Beheersentrum GUI hanteer.)
Hieronder is kode vir die uitvoer en invoer.
Voer toetssjablone uit

Juniper NETWORKS NETCONF & YANG API-sagteware - Beheer 5

# Kry json-konfigurasie vanaf reaksie
root = ET.fromstring(respons._raw)
json_config = root[0].text
druk json_config
Die sjabloon is vervat in die json_config-voorwerp.
Voer toetssjablone in
'n JSON-konfigurasie-objek wat toetssjablone bevat, kan soos volg weer in beheersentrum ingevoer word.Juniper NETWERKE NETCONF & YANG API sagteware -SjabloneJuniper NETWORKS NETCONF & YANG API sagteware -Sjablone 1

Examples: Monitors

Hierdie afdeling neem aan dat toetsagente (soveel as wat deur die monitors vereis word) geskep is volgens die afdeling "Skep en ontplooi 'n nuwe toetsagent" op bladsy 17.
YANG-modelpaaie vir monitors

Item YANG-modelpad: /rekeninge/rekening/monitors …
monitors /.
monitor[naam] /monitor
naam /monitor/naam
beskrywing /monitor/beskrywing
begin /monitor/begin
sjabloon /monitor/sjabloon
alarm-konfigurasies /monitor/alarm-configs
Item YANG-modelpad: /accounts/account/monitors/monitor/alarm-configs …
alarm-config[identifiseerder] /alarm-config
identifiseerder /alarm-config/identifiseerder
sjabloon /alarm-config/template
e-pos /alarm-config/e-pos
snmp /alarm-config/snmp
thr-es-krities /alarm-config/thr-es-critical
thr-es-krities-duidelik /alarm-config/thr-es-critical-clear
thr-es-majeur /alarm-config/thr-es-major
thr-es-majeur-duidelik /alarm-config/thr-es-major-clear
thr-es-klein /alarm-config/thr-es-minor
thr-es-klein-duidelik /alarm-config/thr-es-minor-clear
thr-es-waarskuwing /alarm-config/thr-es-warning
thr-es-waarskuwing-duidelik /alarm-config/thr-es-warning-clear
geen-data-erns /alarm-config/geen-data-erns
geen-data-time-out /alarm-config/no-data-timeout
aksie /alarm-config/aksie
venster-grootte /alarm-config/venstergrootte
interval /alarm-config/interval
stuur-slegs-een keer /alarm-config/send-slegs-een keer
snmp-trap-per-stroom /alarm-config/snmp-trap-per-stroom
Item YANG-modelpad: /rekeninge/rekening/monitors …
parameters /monitor/parameters
Item YANG-modelpad: /rekeninge/rekening/monitors/monitor/parameters …
parameter[sleutel] /parameter
sleutel /parameter/sleutel
(waarde-tipe) /parameter
:(heelgetal) /parameter
heelgetal /parameter/heelgetal
:(dryf) /parameter
dryf /parameter/float
:(string) /parameter
Item YANG-modelpad: /rekeninge/rekening/monitors/monitor/parameters …
string /parameter/string
:(toets-agent-koppelvlakke) /parameter
toets-agent-koppelvlakke /parameter/toets-agent-koppelvlakke
toets-agent-koppelvlak[“1” op bladsy 58 /parameter/toets-agent-koppelvlakke/
rekening /parameter/toets-agent-koppelvlakke/toets-agent-koppelvlak/rekening
toets-agent /parameter/toets-agent-koppelvlakke/toets-agent-koppelvlak/toets-agent
koppelvlak /parameter/toets-agent-koppelvlakke/toets-agent-koppelvlak/koppelvlak
ip-weergawe /parameter/toets-agent-koppelvlakke/toets-agent-koppelvlak/ip-weergawe
:(twamp-reflektors) /parameter
twamp-reflektors /parameter/twamp-reflektors
twamp-reflektor[naam] /parameter/twamp-reflektors/twamp-reflektor
naam /parameter/twamp-reflektors/twamp-reflektor/naam
:(y1731-meps) /parameter
y1731-meps /parameter/y1731-meps
y1731-mep[naam] /parameter/y1731-meps/y1731-mep
naam /parameter/y1731-meps/y1731-mep/naam
:(sip-rekeninge) /parameter
sluk-rekeninge /parameter/sip-rekeninge
sip-rekening[“2” op bladsy 58] /parameter/sip-rekeninge/sip-rekening
rekening /parameter/sip-rekeninge/sip-rekening/rekening
toets-agent /parameter/sip-rekeninge/sip-rekening/toets-agent
koppelvlak /parameter/sip-rekeninge/sip-rekening/koppelvlak
sluk-adres /parameter/sluk-rekeninge/sluk-rekening/sluk-adres
:(iptv-kanale) /parameter
iptv-kanale /parameter/iptv-kanale
iptv-kanaal[naam] /parameter/iptv-kanale/iptv-kanaal
naam /parameter/iptv-kanale/iptv-kanaal/naam
  1. rekening toets-agent koppelvlak
  2. rekening toets-agent koppelvlak sip-adres
Item YANG-modelpad: /rekeninge/rekening/monitors …
status /monitor/status
laaste 15 minute /monitor/status/laaste 15 minute
status /monitor/status/laaste-15 minute/status
status-waarde /monitor/status/laaste-15 minute/statuswaarde
laaste-uur /monitor/status/laaste-uur
status /monitor/status/laaste-uur/status
status-waarde /monitor/status/laaste-uur/statuswaarde
laaste 24-uur /monitor/status/laaste-24-uur
status /monitor/status/laaste-24-uur/status
status-waarde /monitor/status/laaste-24-uur/statuswaarde
sjablone /sjablone
sjabloon[naam] /template/template
naam /template/template/name
beskrywing /template/template/beskrywing
parameters /template/template/parameters
parameter[sleutel] /templates/template/parameters/parameter
sleutel /templates/template/parameters/parameter/sleutel
tipe /templates/template/parameters/parameter/tipe

Voorvereistes vir Monitor-orkestrasie
Voordat jy 'n monitor deur NETCONF kan begin deur ncclient te gebruik, moet jy 'n monitorsjabloon in die Beheersentrum GUI bou soos verduidelik in die inprogram-hulp onder "Toetse en monitors" > "Skep sjablone". Alle velde gespesifiseer as "Sjablooninvoer" in daardie sjabloon sal as parameters in die XML vereis word wanneer die aanvang van die sjabloon georkestreer word.
Kry invoerparameters van monitorsjablone
Hieronder word twee sjablone getoon. Die eerste is vir UDP-monitering tussen twee toetsagent-koppelvlakke, en die tweede is vir HTTP wat 'n enkele toetsagent-koppelvlak gebruik.
Om die invoerparameters van 'n sjabloon uit te vind, klik die blokkie wat die sjabloon verteenwoordig. Vir die HTTP-sjabloon kan die parameters soos volg lyk:

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 2

Ons moet hierdie parameters in die volgende stap definieer wanneer ons 'n monitor begin.
Begin 'n monitor
Deur die toetsagente te gebruik wat ons in die afdeling "Skep en ontplooi 'n nuwe toetsagent" op bladsy 17 gedefinieer en ontplooi het, kan ons 'n monitor begin vanaf die sjabloon "HTTP" soos hieronder getoon.
Vir elke parameter, die kenmerk verskaf moet word. Die sleutel is identies aan die parameter se veranderlike naam in beheersentrum. Jy kan veranderlike name soos volg inspekteer:

  • Klik op Monitering op die sybalk en kies Nuwe monitor.
  • Klik My Templates.
  • Klik op die Wysig-skakel onder die sjabloon van belang.
  • Klik op die Redigeer invoer-knoppie in die regter boonste hoek.

In ons example, en by verstek is die veranderlike name bloot kleinletterweergawes van die vertoonname wat in Beheersentrum gesien word (“url”Teenoor“URL”, ens.). In die beheersentrum GUI kan u egter die veranderlikes hernoem na wat u ook al wil.
Behalwe die sleutel, moet elke parameter sy tipe gespesifiseer hê: bvample, vir die URL. Let asseblief daarop dat volledige inligting oor die parametertipe in die YANG-model gevind word. Vir toetsagent-koppelvlakke het die tipe 'n meer komplekse struktuur, soos blyk uit die kode hieronder.
In die example wat volg, word geen alarm met die monitor geassosieer nie. ByvoorbeeldampLees wat alarms behels, gaan na die afdeling "Begin 'n monitor met 'n alarm" op bladsy 62.

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 3

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 4

Begin 'n monitor met 'n alarm
Om 'n alarm met 'n monitor te assosieer, kan jy óf na 'n alarmsjabloon wys wat gedefinieer is, óf jy kan die hele alarmkonfigurasie verskaf wanneer die monitor geskep word. Ons sal een ex geeample van elke benadering hieronder.
Stel 'n monitoralarm op deur na 'n alarmsjabloon te wys
Om van 'n alarmsjabloon gebruik te maak, moet jy sy ID ken. Vir hierdie doel, haal eers al jou alarmsjablone op soos beskryf in die afdeling “Herhaal van alle alarmsjablone” op bladsy 39 en let op die naam van die betrokke sjabloon. U kan dan soos volg na daardie sjabloon verwys:

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 5

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 6

Stel 'n monitoralarm op deur dit direk op te stely
Alternatiewelik kan jy 'n alarm vir 'n monitor opstel deur sy hele konfigurasie te verskaf wanneer die monitor geskep word, sonder om na 'n alarmsjabloon te verwys. Dit word gedoen soos in die volgende bvample.

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 7

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 8

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone 9

Herwinning van lopende monitors
Om alle monitors wat tans uitgevoer word te herwin, voer hierdie skrip uit:
met bestuurder. verbind (gasheer=args.host, poort=args.port, gebruikersnaam=args. gebruikersnaam, wagwoord=args.wagwoord, hostkey_verify=False) as m:

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone in

Die uitset is 'n lys van alle lopende monitors soos hieronder getoon:

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone in 1

Juniper NETWORKS NETCONF & YANG API sagteware -Sjablone in 2

Herwin SLA-status vir 'n monitor
Hier is hoe om die SLA-status vir 'n monitor op te haal. In hierdie example, ons haal die SLA-status vir die monitor "Network Quality" vir drie intervalle van tyd op: die laaste 15 minute, die laaste uur en die laaste 24 uur.

Juniper NETWERKE NETCONF & YANG API sagteware -Monitor

Juniper NETWORKS NETCONF & YANG API-sagteware -Monitor 1

Die uitset sal iets soos volg lyk:

Juniper NETWORKS NETCONF & YANG API-sagteware -Monitor 2



NETCONF-kennisgewings
NETCONF-kennisgewings vir monitors word veroorsaak deur SLA-oortredings. Dit vind plaas wanneer die SLA vir die monitor onder 'n SLA-drempel (“Goed” of “Aanvaarbaar”) daal binne 'n gegewe tydvenster, by verstek die laaste 15 minute. Daar moet kennis geneem word dat SLA-oortredingkennisgewings vinnig verskyn nadat 'n diens deur 'n probleem geraak is, terwyl die SLA-status eers na 15 minute na "Goed" sal terugkeer, en slegs as geen verdere oortredings plaasvind nie.
Die tydvenster kan verander word deur die instelling SLA_STATUS_WINDOW (waarde in sekondes) in te wysig /etc/netrounds/netrounds.conf.
Uitvoer en invoer van monitorsjablone
Dit word op presies dieselfde manier gedoen as vir toetssjablone; vergelyk die afdeling “Uitvoer en invoer van toetssjablone” op bladsy 52. ​​Die kodebrokkies hieronder illustreer hoe om sjablone vir monitors uit te voer en in te voer.
Voer monitorsjablone uit

Juniper NETWERKE NETCONF & YANG API sagteware -Monitor Templates

Juniper NETWORKS NETCONF & YANG API-sagteware -Monitorsjablone 1

Voer monitorsjablone in

Juniper NETWORKS NETCONF & YANG API-sagteware -Monitorsjablone 3

Juniper NETWORKS NETCONF & YANG API-sagteware -Monitorsjablone 4

Met behulp van Tags

Tags gedefinieer in Paragon Active Assurance kan toegepas word op:

  • monitors
  • monitor sjablone
  • Toetsagente
  • TWAMP weerkaatsers
  • Ping gashere.
    Byvoorbeeldample, jy kan tag 'n monitor met dieselfde tag as 'n subset van toetsagente wat die monitor gaan bestuur. Hierdie kenmerk is veral nuttig as u 'n groot aantal monitors en sjablone gedefinieer het.

As jy 'n alarm met SNMP lokvalle vir 'n monitor opgestel het, sal die SNMP lokvalle dieselfde toegewys word tags as die monitor, indien enige.
Skep Tags
Hieronder wys ons hoe om 'n tag met naam en kleur soos gedefinieer deur die XMLtag> onderbou.

Juniper NETWORKS NETCONF & YANG API sagteware -Tags

Toewysing van a Tag
Om 'n toe te ken tag by 'n hulpbron voeg jy dit as 'n nuwe bytag> element onder dietags> element vir daardie hulpbron.
Hier is hoe om 'n toe te ken tag aan 'n toetsagent:

Juniper NETWORKS NETCONF & YANG API sagteware -Tags 1

Om 'n toe te ken tag aan 'n TWAMP reflektor, doen die volgende:

Juniper NETWORKS NETCONF & YANG API sagteware -Tags 2

Juniper NETWORKS NETCONF & YANG API sagteware -Tags 3

Toewysing van a tag na 'n monitor word op soortgelyke wyse hanteer:

Juniper NETWORKS NETCONF & YANG API sagteware -Tags 4

Juniper NETWORKS NETCONF & YANG API sagteware -Tags 5

Alternatiewelik kan jy 'n bestaande toewys tag aan enige van hierdie hulpbrontipes wanneer die hulpbron geskep word, deur die in te sluittags> element wat die tag ter sprake.
Opdatering van a Tag
Opdatering van 'n bestaande tag met nuwe eienskappe is analoog aan die skep van 'n tag:

Juniper NETWORKS NETCONF & YANG API sagteware -Tags bestuur

Onttrekking van a Tag
Om toewysing van a tag vanaf 'n hulpbron, voeg die kenmerk nc:operation="delete" by dietag> element wat aan die hulpbron behoort. Hieronder onttrek ons ​​'n tag vanaf 'n monitor.

Juniper NETWORKS NETCONF & YANG API sagteware -Tags bestuur 1

Die verwydering van 'n Tag
Ten einde a tag geheel en al vanaf Beheersentrum word die kenmerk nc:operation=”delete” weer gebruik, maar hierdie keer toegepas op die tag self, gedefinieer onder .

Juniper NETWORKS NETCONF & YANG API sagteware -Tags bestuur 2

Probleemoplossing

Probleem: Orchestrator en Paragon Active Assurance buite gesinchroniseer
Die orkeseerder en Paragon Active Assurance kan uit sinchronisasie beland, bvample as konfigurasieveranderinge in die Beheersentrum-GUI aangebring is, of as die toepassing van 'n konfigurasie nie suksesvol was nie en die terugrol na die vorige toestand misluk het.
In die geval van 'n mislukte terugrol, sal die NETCONF-bediener nie meer konfigurasieveranderinge aanvaar nie; dit sal antwoord met 'n foutboodskap wat sê dat konfigurasie gesluit is totdat dit weer gesinkroniseer is. Om terug te sinchroniseer en konfigurasieveranderinge te ontsluit, moet jy die opdrag rpc sync-from-ncc uitvoer wat alle konfigurasies vanaf die beheersentrum na die konfigurasiedatabasis sinchroniseer.
LET WEL: Die confd@netrounds.com gebruiker (of wat ook al opgestel is) moet supergebruiker-voorregte hê om alles suksesvol te gesinkroniseer. Dit kan bereik word met die opdrag ncc user-update confd@netrounds.com –is-supergebruiker As die gebruiker nie 'n supergebruiker is nie, sal 'n waarskuwing verskyn wat sê dat nie alles gesinkroniseer kan word nie, maar dat al wat hanteer kan word is.
LET WEL: As jou orkestreerder ook die konfigurasie stoor, sal jy dit ook moet hersinkroniseer aangesien die gevraagde konfigurasie (die konfigurasie wat die orkestreerder verwag beheersentrum moet hê) nie toegepas sal wees nie.
Probleem: Aanvanklike sinkronisering (sinc-van-ncc) het misluk as gevolg van onondersteunde hulpbronne
As jy probeer om rpc sync-from-ncc te laat loop op 'n rekening waarvan die konfigurasie in die Beheersentrum GUI geskep is, kan jy probleme ondervind as die rekening nie-ondersteunde hulpbronne bevat. Dit word aanbeveel dat jy met 'n leë rekening begin en alle konfigurasie daarvan deur NETCONF doen. Andersins, as jy probleme ondervind met hulpbronkonflikte, sal jy die botsende bronne van die rekening moet verwyder.
Probleem: NETCONF-opdragte misluk met ncclient.operations.rpc.RPCError: toepassingskommunikasie mislukking
Die NETCONF-bediener herstel nie outomaties verbinding met die Beheersentrumbediener as Beheersentrum herbegin word nie. Om die verbinding met beheersentrum te herstel, herbegin die NETCONF-proses: sudo systemctl herbegin netrounds-confd

Notas oor toetsagent-toepassings en toetsagent-toestelle

Toetsagent-toepassings in ConfD
Onder toetsagente werk die (nuwe) toetsagenttoepassing 'n bietjie anders as die (ouer) toetsagenttoestel.
Toetsagenttoepassings ondersteun nie tans koppelvlakkonfigurasie nie. Daarom maak die YANG-skema dit moontlik om 'n leë koppelvlakkonfigurasie vir sulke toetsagente te spesifiseer. Sien “hierdie gedeelte” op bladsy 23 vir 'n eksample.
Wanneer jy die ConfD-databasis met Beheersentrum sinchroniseer deur die sync-from-ncc-opdrag te gebruik, wil jy hê dat die koppelvlakkonfigurasie leeg moet bly en nie oorskryf word met wat in Beheersentrum gevind word nie. Daarom moet jy 'n spesiale vlag –without_interface_config met daardie opdrag gebruik wanneer jy met toetsagenttoepassings werk.
Leë koppelvlakkonfigurasie vir toetsagenttoestel
Soos hierbo genoem, ondersteun Test Agent Application nie koppelvlakkonfigurasie nie, en dit is dus moontlik om koppelvlakke in die YANG-skema weg te laat.
Maar daar is ook gebruiksgevalle waar jy dalk die koppelvlakkonfigurasie van 'n toetsagenttoestel wil weglaat. 'n exampLe hiervan kan 'n orkestrasie-scenario wees waar jy 'n toetsagent met behulp van wolk-init opstel, en jy wil hê dat die koppelvlakkonfigurasie daarvandaan gebruik moet word, in plaas daarvan om ConfD dit te laat oorskryf soos die toetsagent aanlyn kom.
YANG Skema veranderinge met betrekking tot ongedefinieerde koppelvlakke
Aangesien 'n leë koppelvlakkonfigurasie nou toegelaat word (vanaf weergawe 2.34.0 af), is dit moontlik om enige koppelvlaknaam te spesifiseer as invoer na 'n taak wat as deel van 'n toets of monitor uitgevoer word.
Dit is nodig om 'n toetsagenttoepassing te kan gebruik, aangesien geen koppelvlakname in ConfD gedefinieer word nie. Let egter daarop dat dit ook beteken dat u probleme kan ondervind as u per ongeluk 'n toets of monitor konfigureer om 'n nie-bestaande koppelvlak te gebruik. So wees asseblief bedag hierop.
Beperkings by die registrasie van 'n toetsagent wat in ConfD geskep is
Wanneer 'n toetsagent via die REST- of NETCONF/YANG-API geskep word, kan ons nie vooraf weet watter tipe dit is nie: toetsagent-toestel of toetsagent-toepassing. Dit word eers duidelik nadat die toetsagent geregistreer het.
Sodra die toetsagent geregistreer is en in een van hierdie konkrete tipes verander het, word jy nie toegelaat om dit as 'n ander tipe toetsagent te herregistreer nie. Dit beteken dat jy nie toegelaat word om dit eers as 'n Toetsagent Toestel te registreer nie, dan weer te registreer as 'n Toets Agent Aansoek, of omgekeerd. As jy 'n toetsagent van 'n ander tipe benodig, sal jy 'n nuwe toetsagent moet skep.

Bylaag: Boomstruktuur van volledige YANG-model

In hierdie bylaag verduidelik die afdeling “Legende” op bladsy 81 die sintaksis van die YANG-modelboomstruktuur wat met die opdrag pyang -f tree gegenereer word.
Die afdeling "YANG Model Tree Structure" op bladsy 82 gee die uitset van daardie opdrag toegepas op netrounds-ncc.yang. Dele van hierdie uitset word elders in die dokument weergegee.
Legende

Juniper NETWERKE NETCONF & YANG API sagteware -Legend

Juniper NETWORKS NETCONF & YANG API-sagteware -Legende 1

YANG Model Boomstruktuur

Juniper NETWERKE NETCONF & YANG API sagteware - Model Tree

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 1

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 2

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 3

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 3 NETWORKS NETCONF & YANG API sagteware - Model Tree 4

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 5

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 6

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 7

Juniper NETWORKS NETCONF & YANG API sagteware - Model Tree 8Juniper NETWERKE NETCONF & YANG API sagteware - Model Tree Vol

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 1Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 2

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 3

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 4

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 5

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 6

Juniper NETWORKS NETCONF & YANG API-sagteware - Modelboom Vol 7

Juniper Networks, die Juniper Networks-logo, Juniper en Junos is geregistreerde handelsmerke van Juniper Networks, Inc. in die Verenigde State en ander lande. Alle ander handelsmerke, diensmerke, geregistreerde handelsmerke of geregistreerde diensmerke is die eiendom van hul onderskeie eienaars. Juniper Networks aanvaar geen verantwoordelikheid vir enige onakkuraathede in hierdie dokument nie. Juniper Networks behou die reg voor om hierdie publikasie sonder kennisgewing te verander, te wysig, oor te dra of andersins te hersien. Kopiereg © 2023 Juniper Networks, Inc. Alle regte voorbehou.JUNIPER NETWERKE Logo

Dokumente / Hulpbronne

Juniper NETWERKE NETCONF & YANG API sagteware [pdf] Gebruikersgids
NETCONF YANG API sagteware, YANG API sagteware, API sagteware, sagteware

Verwysings

Los 'n opmerking

Jou e-posadres sal nie gepubliseer word nie. Vereiste velde is gemerk *