De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document beschrijft hoe verschillende fasen van het NSO NED-spoor goed te lezen en te begrijpen.
De Cisco® Crosswork Network Service Orchestrator (NSO) kan gedetailleerde overzichten genereren van de communicatie tussen NSO en de apparaten die worden beheerd door Network Element Drivers (NED’s) van NSO. Voor op Java gebaseerde NEDs, omvatten deze spoordossiers volgens een gedeeld kader worden gestructureerd. Dit document helpt u dit gedeelde kader en de details in deze logboeken te begrijpen.
In dit document wordt ervan uitgegaan dat u een Java-end gebruikt die door Cisco is ontwikkeld. Dit omvat CLI, Generic en 3PY NEDs. De fasen en het kader die in dit document worden uitgelegd, zijn van toepassing op NetConf NEDs, maar de overtrek-logbestanden die voor NetConf NEDs worden gegenereerd, labelen ze niet op dezelfde manier als in dit document wordt getoond.
Terwijl de fasen die in dit document worden beschreven, over alle Java NED's worden gedeeld, verschillen de specifieke bewerkingen die als deel van die fase worden uitgevoerd voor elke NED vanwege individuele apparaatbehoeften.
Gegevens in een NED-sporenbestand kunnen in 3 verschillende categorieën worden bekeken.
NSO instrueert de ND om specifieke fasen te starten. Elke handeling in NSO resulteert in dezelfde fasesequenties, maar elke NED voert unieke instructies uit naar een netwerkapparaat. Het NED-sporenbestand registreert niet de exacte gegevens die tussen de NSO en de NED stromen, maar wel de instructie om een fase te starten, en de NED-respons geeft aan dat een fase is voltooid. Lijnen die beginnen met >> geven instructies aan om een fase te starten. Lijnen beginnend met << geeft de NSO aan dat de fase is afgelopen.
>> 20-Mar-2025::23:23:17.277 user: admin/56 thandle 86091 hostname ncs device xr-netsim0 trace-id=1ee09d76-4415-4bb8-bd39-05f99072bd54 CLI CONNECT to xr-netsim0-127.0.0.1:10025 as admin (Trace=raw)<< CONNECTED
<< 20-Mar-2025::23:23:17.623 user: admin/56 thandle 86091 hostname ncs device xr-netsim0 trace-id=1ee09d76-4415-4bb8-bd39-05f99072bd54 CONNECTED 0
>> 20-Mar-2025::23:24:41.703 user: admin/56 thandle 86213 hostname ncs device xr-netsim0 trace-id=1ee09d76-4415-4bb8-bd39-05f99072bd54 SHOW 0:
<< 20-Mar-2025::23:24:41.879 user: admin/56 thandle 86213 hostname ncs device xr-netsim0 trace-id=1ee09d76-4415-4bb8-bd39-05f99072bd54 SHOW
Binnen elke fase zal de NED opdrachten uitvoeren naar het netwerkapparaat om de doelen van elke fase te bereiken. Communicatie van de NED naar het apparaat wordt aangeduid als *** output
, communicatie die de NED van het apparaat ontvangt wordt aangeduid als *** input
.
*** output 20-Mar-2025::13:08:31.955 user: admin/316551 thandle 18978916 hostname ncs device xr-netsim0 trace-id=- ***
show running-config
*** input 20-Mar-2025::13:08:31.987 user: admin/316551 thandle 18978916 hostname ncs device xr-netsim0 trace-id=- ***
show running-config
Thu Jan 5 13:08:37.274 BRT
Building configuration...
!! IOS XR Configuration 7.2.1
...
In CLI NED's bestaat de input uit alle informatie die op de CLI van het apparaat verschijnt, inclusief de opdrachten die door NSO worden verzonden.
De NED registreert een bepaalde hoeveelheid informatie die niet aan het apparaat of aan NSO wordt doorgegeven. Dit omvat eindinstellingen, de verwerking van gegevens en de verwachte wijzigingen in de NSO-database (CDB).
Dit soort informatie begint vaak met--
maar dat geldt niet voor alle informatie van dit type.
*** output 20-Mar-2025::13:08:31.955 user: admin/316551 thandle 18978916 hostname ncs device xr-netsim0 trace-id=- ***
-- BEGIN SHOW
-- [20-Mar-2025::13:08:31.956] progress: show: reading config...
-- Reading running config...
show running-config
Deze sectie gaat door een lijst van gemeenschappelijke verrichtingen en documenteert de verwachte opeenvolging van fasen NSO voor elke verrichting initieert. U vindt meer informatie over elke fase in het gedeelte Fasen van dit document.
Opmerking: De fasen IS_ALIVE, SET_TIME OUT en CLOSE worden uit elke reeks weggelaten omdat ze weinig waarde voor probleemoplossing hebben
>> CLI CONNECT
<< CONNECTED
OF
>> GENERIC CONNECT
<< CONNECTED
Terwijl de CLI- en GENERIC CONNECT-fasen functioneel vrijwel identiek zijn, gebruiken CLI- en GENERIC-type NED’s verschillende CONNECT-fasen.
>> CLI CONNECT
<< CONNECTED
>> GET_TRANS_ID
<< TRANS_ID
>> CLI CONNECT
<< CONNECTED
>> SHOW
<< SHOW
>> GET_TRANS_ID
<< TRANS_ID
OF
>> CLI CONNECT
<< CONNECTED
>> SHOW
<< SHOW
<< PROVISIONAL TRANS_ID
Sommige NED's zijn geoptimaliseerd om te gebruiken in PROVISIONAL TRANS_ID
plaats van GET_TRANS_ID
.
>> CLI CONNECT
<< CONNECTED
>> SHOW
<< SHOW
De vergelijking-configuratieverrichting is zeer gelijkaardig aan sync-van, maar het werkt niet CDB bij. Als Compare-config een configuratieverschil detecteert, roept het GET_TRANS_ID niet aan om de checksum bij te werken. Als er geen configuratieverschil is roept het GET_TRANS_ID op en werkt de checksum bij.
>> CLI CONNECT
<< CONNECTED
>> INITIALIZE
<< INITIALIZED
>> PREPARE
<< PREPARE OK
>> COMMIT
<< COMMIT OK
>> PERSIST
<< PERSIST OK
>> GET_TRANS_ID
<< TRANS_ID
Deze operaties gaan niet over op de NED-logica en veroorzaken geen logbestanden die worden gegenereerd in het NED-sporenbestand.
Deze handeling stuurt geen gegevens naar de netwerkapparaten, maar wel de NED-logica.
>> CLI CONNECT
<< CONNECTED
>> PREPARE DRY
<< PREPARE DRY
>> CLI CONNECT
<< CONNECTED
>> INITIALIZE
<< INITIALIZED
>> SHOW_PARTIAL
<< SHOW
>> PREPARE
<< PREPARE OK
>> COMMIT
<< COMMIT OK
>> PERSIST
<< PERSIST OK
>> GET_TRANS_ID
<< TRANS_ID
Deze volgorde is misleidend. Het beweert de INITIALISERINGSfase op te nemen, maar de NED zal tijdens deze fase geen opdrachten starten en het effectief overslaat. Dit komt doordat de vlag zonder overschrijven de checksum niet controleert, maar de configuratie met behulp van SHOW_PARTIAL in plaats daarvan controleert.
>> CLI CONNECT
<< CONNECTED
>> INITIALIZE
<< INITIALIZED
>> PREPARE
>> CLOSE
<< CLOSED
>> CLI CONNECT
<< CONNECTED
>> SHOW_PARTIAL
<< SHOW
>> ABORT
<< ABORT OK
>> GET_TRANS_ID
<< TRANS_ID
Wanneer er iets fout gaat tijdens een commit, beëindigt NSO de verbinding, sluit opnieuw aan en probeert het systeem te herstellen. NSO doet dit door de configuratie van het apparaat te controleren met behulp van SHOW_PARTIAL en het verzenden van een reeks opdrachten om de huidige configuratie terug te keren naar de configuratie vóór het begin van de commit tijdens de ABORT fase. Apparaten met kandidaat-configuratie hebben alternatieve methoden om te herstellen die NSO kan inzetten, afhankelijk van wanneer de fout is opgetreden.
>> CLI CONNECT
<< CONNECTED
>> COMMAND
<< COMMAND
Alle op java gebaseerde NED's gebruiken dezelfde fasen, maar elke NED past de exacte uitvoering van de fase aan aan het specifieke apparaat dat het verwerkt.
Tijdens de CONNECT-fase drukt de NED informatie over zichzelf af, maakt een verbinding tot stand, schakelt paginering (voor CLI NED's) uit en verzamelt apparaatinformatie. Dit omvat de NSO- en NED-versie, de NED-instellingen, SSH-algoritmen en het apparaatmodel en de versie. Het registreert niet de wachtwoorduitwisseling.
Bij het tegenkomen van een storing voor NSO om verbinding te maken met een apparaat, kan elk deel van deze fase verantwoordelijk zijn. Het is mogelijk dat NSO de SSH-sessie kon instellen, maar het apparaatmodel en de versie niet kon ophalen.
NED's houden een sessie met een apparaat enkele seconden nadat een bewerking is voltooid. Als er binnen dat tijdsbestek een andere bewerking voor hetzelfde apparaat vereist is, logt de NED een RECONNECT-fase in plaats van CLI/GENERIC CONNECT in en wordt de informatie opnieuw gebruikt.
De GET_TRANS_ID-fase verzamelt informatie om een checksum te berekenen. Deze controlesom kan worden geverifieerd om te bepalen of een apparaat out-of-sync is tijdens een commit- of check-sync-operatie, of het kan worden opgeslagen voor een toekomstige controle. Cisco selecteert de meest lichtgewicht optie die beschikbaar is voor elk apparaat. Cisco-ios-cli NED verzamelt de volledige apparaatconfiguratie om een controlesom te genereren. De cisco-iosxr NED gebruikt de commit-lijst en controleert of de commit-id sinds de laatste sync is gewijzigd.
NED's drukken de checksum die ze aan het eind van de GET_TRANS_ID fase hebben berekend.
>> 15-Mar-2025::10:29:41.410 user: admin/205 thandle 1559 hostname ncs device alu0 GET_TRANS_ID
*** output 15-Mar-2025::10:29:41.411 user: admin/205 thandle 1559 hostname ncs device alu0 ***
-- get config method: cli dump
admin display-config
*** input 15-Mar-2025::10:29:41.415 user: admin/205 thandle 1559 hostname ncs device alu0 ***
admin display-config
...
<< 15-Mar-2025::10:29:42.045 user: admin/205 thandle 1559 hostname ncs device alu0 TRANS_ID 8f42fe893c448f47c155710bb909800b
GET_TRANS_ID wordt aangeroepen tijdens check-sync, aan het eind van sync-vanaf, aan het eind van commit, of aan het eind van Compare-config als er geen verschil is gedetecteerd. Alleen tijdens check-sync is de checksum niet bijgewerkt als deel van GET_TRANS_ID. Bij het begin van een commit operatie, verifieert NSO ook de checksum, maar gebruikt INITIALIZATION in plaats van GET_TRANS_ID.
Tijdens de SHOW fase verzamelt een NED de huidige configuratie op het apparaat en parseert het zodat het kan worden bijgewerkt of vergeleken met CDB. Een SHOW fase kan bestaan uit een of meer opdrachten om de relevante gegevens te verzamelen. Sommige NEDs prompt meerdere SHOW fasen in een rij voor verschillende secties van de configuratie.
<< 15-Mar-2025::14:17:07.190 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c CONNECTED 0
>> 15-Mar-2025::14:17:07.210 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0:
<< 15-Mar-2025::14:17:07.211 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.211 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0:
<< 15-Mar-2025::14:17:07.212 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.212 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0:
<< 15-Mar-2025::14:17:07.212 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.213 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0:
<< 15-Mar-2025::14:17:07.213 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.214 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0: <'vlan-configuration'>
<< 15-Mar-2025::14:17:07.214 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.214 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0: <'switchvlan-configuration'>
<< 15-Mar-2025::14:17:07.215 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
>> 15-Mar-2025::14:17:07.215 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW 0:
<< 15-Mar-2025::14:17:08.672 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c SHOW
<< 15-Mar-2025::14:17:08.672 user: admin/17279 thandle 7896374 hostname ncs device zte0 trace-id=438b8c PROVISIONAL TRANS_ID 8bb56df1e125549b62f96e8007866
Zodra de gegevens zijn verzameld, parseert en bereidt de NED deze voor op NSO. In CLI NEDs wordt dit proces gemarkeerd door turboparser. Alle gegevens die NSO niet begrijpt en niet kan toewijzen aan het huidige yang model is vastgelegd als een overgeslagen lijn.
-- turbo-mode parsing (setvalues) :: performance numbers :
-- --------------------------------------------------------------------------------
-- number of lines parsed : 469
-- number of lines skipped : 2
-- time to parse config (ms) : 20
-- time to transfer xml to nso (ms) : 531
-- --------------------------------------------------------------------------------
-- skipped 2 lines in context '/' :
-- (line 16) : 'platform sslvpn use-pd'
-- (line 74) : 'pae'
-- --------------------------------------------------------------------------------
-- [15-Mar-2025::17:00:07.906] progress: show: populating cdb ok [531 ms]
-- transformed >= sorted 8 'neighbor ' lines for hash checksum
-- show trans_id = 12b6f28a48520ca4b5c6ebdfe3d333ee
-- done show [5055 ms]
<< 15-Mar-2025::17:00:07.912 user: nsoadmin/23219 thandle 3068964 hostname ncs device ios0 SHOW
VOORLOPIGE TRANS_ID is een optimalisatie die in sommige NEDs wordt geïmplementeerd om GET_TRANS_ID aan het eind van een sync-vanaf-bewerking te vervangen. Zonder deze optimalisatie NED's die nodig zijn om de volledige configuratie van een apparaat te verzamelen om een checksum te berekenen verzamelen deze gegevens tweemaal tijdens sync-vanaf verzamelen. Eens tijdens de SHOW fase en opnieuw tijdens de GET_TRANS_ID fase. VOORLOPIGE TRANS_ID vervangt GET_TRANS_ID in deze situaties om de gegevens van de SHOW-bewerking te hergebruiken.
Er is een speciale implementatie van deze optimalisatie in de Cisco-iosxr-cli NED. Dit NED vereist niet de volledige configuratie maar de configuratie kan zo groot zijn dat het ontleden lang genoeg duurt voor de SSH-sessie om tijd uit te hebben tegen de tijd dat GET_TRANS_ID start. Om dit te voorkomen, verzamelt de NED de benodigde informatie als onderdeel van SHOW en gebruikt in plaats daarvan VOORLOPIGE TRANS_ID.
De initialize fase is gelijk aan GET_TRANS_ID. Het verzamelt dezelfde gegevens en berekent een controlesom, maar wordt alleen gebruikt aan het begin van een commit-operatie om te verifiëren of een apparaat in-sync is. Als een apparaat niet synchroon blijkt te zijn, wordt de INITIALISERINGSfase gevolgd door een UNINITIALIZATION-fase en wordt een fout teruggestuurd naar de NSO. INITIALISEER nooit updates de checksum.
Opmerking: Commit no-overwrite heeft een INITIALIZATION fase maar er worden geen opdrachten uitgevoerd tijdens deze fase omdat out-of-sync niet relevant is.
De Prepare-fase is de belangrijkste fase van een commit-operatie. Tijdens de VOORBEREIDENDE fase vertaalt de NED de beoogde veranderingen in de NSO CDB om opdrachten te geven die het apparaat zal begrijpen. Het stuurt vervolgens die opdrachten naar het apparaat, inclusief eventuele opdrachten om de UI te navigeren zoals het invoeren van de configuratiemodus.
Voor apparaten zonder kandidaat configuratie, het verzenden van bevelen veroorzaakt directe invloed aan de lopende configuratie en de verrichting van het netwerk.
Tijdens de COMMIT-fase past het NED de configuratie toe op het apparaat. De COMMIT-fase is leeg voor apparaten zonder kandidaat-configuratie zoals apparaten die worden beheerd door de cisco-ios-cli NED. Als het apparaat beschikt over vastgelegde mogelijkheden, maakt NSO gebruik van die tijdens deze fase.
>> 8-Mar-2025::14:06:54.238 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a COMMIT 1: (Timeout 30)
*** output 8-Mar-2025::14:06:54.239 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
-- BEGIN COMMIT
-- [08-Mar-2025::14:06:54.239] progress: commit: committing config...
-- Committing (confirmed) [num-commit 0 0a delayed=0]
commit confirmed 30 show-error
*** input 8-Mar-2025::14:06:54.268 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
commit confirmed 30 show-error
Wed Mar 8 14:06:54.354 BRT
RP/0/RP0/CPU0:RNCOBSA0101(config)#
*** output 8-Mar-2025::14:06:58.377 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
commit show-error
*** input 8-Mar-2025::14:06:58.404 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
commit show-error
Wed Mar 8 14:06:58.493 BRT
% Confirming commit for trial session.
RP/0/RP0/CPU0:RNCOBSA0101(config)#
*** output 8-Mar-2025::14:06:58.734 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
end
*** input 8-Mar-2025::14:06:58.763 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
end
RP/0/RP0/CPU0:RNCOBSA0101#
*** output 8-Mar-2025::14:06:58.832 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a ***
-- [08-Mar-2025::14:06:58.832] progress: commit: committing config ok [4593 ms]
-- DONE COMMIT [4594 ms]
<< 8-Mar-2025::14:06:58.832 user: admin/397910 thandle 18935883 hostname ncs device xr0 trace-id=c9c7a91b-dfd2-45bd-bbe4-71a0ddb1039a COMMIT OK
Sommige apparaten vereisen extra instructies om ervoor te zorgen dat de configuratie wordt gehandhaafd, zelfs wanneer een apparaat opnieuw wordt opgestart. Deze opdrachten worden verzonden tijdens de PERSIST-fase.
De PreparE DRY-fase is uniek voor commit dry-run outformat native
bewerkingen. Gelijkaardig aan de PreparE fase vertaalt het de bedoeling van NSO aan apparatenbevelen, maar verzendt die geen bevelen naar het apparaat.
De SHOW_PARTIAL fase kan aangeroepen worden door maathandleiding, of het wordt gebruikt tijdens commit no-overwite
en rollback during commit error
.
Deze fase is vergelijkbaar met de SHOWfase in die zin dat het configuratiegegevens van het apparaat verzamelt en parseert. Het verzamelt een specifiekere reeks gegevens die relevant zijn voor de huidige commit operatie in plaats van de volledige configuratie. Niet alle apparaten ondersteunen het verzamelen van kleinere sets gegevens.
De ABORT-fase is vergelijkbaar met de PreparE-fase, maar exclusief voor terugdraaiing. NSO stuurt opdrachten om de apparatenconfiguratie terug te keren naar de manier waarop het was voordat de commit.
De REVERT fase wordt gebruikt in situaties waar een commit een fout tegenkwam, maar NSO kan een apparaat gewoon vertellen om terug te keren naar een vorige configuratie. In dit geval zijn de fasen SHOW_PARTIAL en ABORT niet vereist.
De COMMANDO-fase is uniek voor live-status operaties. Tijdens de COMMANDOfase geeft NSO instructies aan de apparaten buiten het bereik van normale commit-operaties.
De IS_ALIVE fase is een health check om te controleren of de sessies tussen de NED, het apparaat en NSO nog gezond zijn. Als je IS_ALIVE vals tegenkomt is het waarschijnlijk dat je een time-out in een van de sessies tegenkwam.
Tijdens de SLUITfase sluit het END de SSH-sessie voor het eindapparaat.
De SET_TIME OUT-fase geeft een vernieuwing van verschillende timeouts aan die worden beheerd door NSO en NED.
Na een SHOW-fase drukt de NED een lijst af van de verwachte wijzigingen die in de NSO CDB moeten worden aangebracht.
created /ios:line/vty[first='5'][last='15']/login
created /ios:line/vty[first='5'][last='15']/login/local
modified /ios:interface/Loopback[name='2']
created /ios:interface/Loopback[name='2']/shutdown
created /ios:username[name='cisco']
value_set /ios:username[name='cisco']/privilege 15
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
24-Mar-2025
|
Eerste vrijgave |