Inhoud

Inleiding

Gebruikte componenten

Servicegegevens voor inventaris

Beheerbaarheidsstatus

Laatste sync-status

Problemen

Interne fout

Apparaatreferenties

Netconf

Netwerkcontroles

Databasetabellen

Sync-loop en -traps

API naar Apparaatsynchronisatie forceren

Review Traps

Service-crashingstatus

Kan apparaat niet verwijderen

API om apparaat te verwijderen

Inleiding

Dit document beschrijft de basisconcepten en gemeenschappelijke problemen van de Cisco DNA Center Inventory-service die u in het productieproces vindt.

Gebruikte componenten

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.

Servicegegevens voor inventaris

De Cisco DNA Center Inventory-service is gebaseerd in een Kubernetes (K8s) Pod die u kunt vinden draaien in de naamruimte "fusie" met de naam "apic-em-inventaris-manager-service-<id>" als een implementatieomgevingstype.

In de K8s pod vind je een Docker container genaamd "apic-em-inventaris-manager-service".

De belangrijkste taken van de "apic-em-inventaris-manager-service"-pool zijn: apparaatdetectie en apparaatlevenscyclusbeheer.

Dit zorgt ervoor dat apparaatgegevens beschikbaar zijn in Postgres SQL (database gebruikt door fusiediensten).

De "fusie"-naamruimte (Appstack) ook bekend als het Network Controller Platform (NCP), biedt de Service Provisioning Framework (SPF)-services voor alle eisen op het gebied van netwerkautomatisering.

Deze omvatten ontdekking, inventaris, topologie, beleid, het Beheer van het Beeld van de Software (SWIM), het Archief van de Configuratie, Netwerkprogrammeur, Plaatsen, groepering, telemetrie, Tesseract integratie, malplaatjeprogrammeur, kaarten, IPAM, Sensoren, Orchestratie/Workflow/Scheduling, de integratie van ISE, en gelijkaardig.

De status van de inventarispeul kan worden gecontroleerd door de opdracht uit te voeren:

$ magctl appstack status | grep inventory

De status van de inventarisservice kan met de opdracht worden gecontroleerd:

$ magctl service status

De inventarisservicelogboeken kunnen met de opdracht worden gecontroleerd:

$ magctl service logs -r

Opmerking: De inventarisservice kan ook bestaan uit twee lopende peulen, zodat u een enkele peul in de opdrachten moet specificeren met behulp van de volledige inventarispeul naam, inclusief de peul-id.

In dit document kunnen we ons richten op de inventarisapparaat Manageability en Last Syncing status om de algemene kwesties te bekijken:

Beheerbaarheidsstatus

- Beheerd met groen pictogram: Het apparaat is bereikbaar en wordt volledig beheerd.

- Beheerd met oranje foutpictogram: Het apparaat wordt beheerd met een aantal fouten zoals onbereikbaar, verificatiefout, ontbrekende Netconf-poorten, interne fout, enzovoort. U kunt de cursor over de foutmelding hangen om meer details over de fout en de beïnvloede toepassingen te bekijken.

- Onbeheerd: Apparaat kan niet worden bereikt en er is geen inventarisinformatie verzameld vanwege problemen met de apparaatconnectiviteit.

Laatste sync-status

- Beheerd: Het apparaat is in een volledig beheerde staat.

- Gedeeltelijke verzameling is mislukt: Het apparaat is in een gedeeltelijk verzamelde staat en niet alle inventarisinformatie is verzameld. Beweeg de cursor over het pictogram Informatie (i) om aanvullende informatie over de fout weer te geven.

- Onbereikbaar: Apparaat kan niet worden bereikt en er is geen inventarisinformatie verzameld vanwege problemen met de apparaatconnectiviteit. Deze voorwaarde treedt op wanneer periodieke verzameling plaatsvindt.

- Verkeerde referenties: Als de apparaatreferenties worden gewijzigd nadat het apparaat aan de inventaris is toegevoegd, wordt deze voorwaarde genoteerd.

- Bezig met starten: Er worden voorraden verzameld.

Opmerking: Raadpleeg de officiële handleiding voor versie 2.3.5.x: Manager Your Inventory voor meer informatie over de inventarisfuncties in Cisco DNA Center

Problemen

Interne fout

De pagina Cisco DNA Center Inventory kan een waarschuwingsbericht weergeven in de status Beheerbaarheid voor apparaten met een of ander conflict dat de gegevensverzameling voorkomt:

"Interne fout: NCIM12024: Alle informatie van het apparaat kon niet met succes worden verzameld of de inventarisverzameling voor dit apparaat is nog niet begonnen. Het kan een tijdelijk probleem zijn dat automatisch kan worden opgelost. Synchroniseer het apparaat opnieuw als het probleem niet is opgelost. Neem contact op met Cisco TAC."

Als de fout niet automatisch wordt opgelost of nadat een apparaat opnieuw wordt gesynchroniseerd, kunnen we beginnen met de eerste probleemoplossing. Die fout kan meerdere redenen hebben, maar hier noemen we slechts enkele van de meest voorkomende:

- Onjuiste apparaatreferenties voor SNMP, SSH en NetConf.

- Problemen met de netwerkconnectiviteit die verband houden met SNMP, SSH en Netconf.

- NetConf-configuratieproblemen in het apparaat waardoor Netconf niet correct werkt.

- Schakel een apparaat opnieuw in terwijl een apparaat al wordt gesynchroniseerd.

- Er zijn meerdere traps van het apparaat ontvangen die in een korte periode meerdere resynctriggers veroorzaken.

- Back-end problemen met inventarisdatabasegegevens in meerdere tabellen met betrekking tot het apparaat.

Tip: Als u het netwerkapparaat verwijdert en het opnieuw detecteert met de juiste CLI-, SNMP- en NETCONF-referenties, kunt u verouderde databasegegevens verwijderen die de interne fout kunnen veroorzaken.

Tip: Het bekijken van de Inventaris servicelogboeken en het filteren op apparaat IP of Hostname kan nuttig zijn om de interne foutenworteloorzaak te identificeren.

Apparaatreferenties

Om de referenties van het apparaat te bekijken, navigeer je naar het menu van Cisco DNA Center -> Provision -> Inventory -> Select Device -> Actions -> Inventory -> Inventory -> Edit Device en klik je op "Validate" en bevestig je dat de verplichte referenties (CLI en SNMP) de validatie met een groene check doorstaan (inclusief netconf indien van toepassing).

Als de validatie mislukt, controleert u of de gebruikersnaam en het wachtwoord die Cisco DNA Center gebruikt om het netwerkapparaat te beheren, rechtstreeks in de opdrachtregel voor het apparaat geldig zijn.

Als ze lokaal zijn geconfigureerd of als ze zijn geconfigureerd in een AAA-server (TACACS of RADIUS), valideer dan dat de gebruikersnaam en het wachtwoord correct zijn geconfigureerd in de AAA-server.

Controleer ook of voor de gebruikersbenamingsrechten de wachtwoordinstelling "Inschakelen" moet zijn ingesteld in de instellingen voor apparaatreferenties in Cisco DNA Cinventaris invullen.

De fouten in CLI geloofsbrieven kunnen een beheersbaarheidsfoutenmelding in Inventaris veroorzaken: CLI-verificatiefout.

Netconf

Netconf is een protocol voor het op afstand beheren van een compatibel netwerkapparaat via Remote Procedure Calls (RPC).

Cisco DNA Center gebruikt Netconf-functies om de configuratie op netwerkapparaten te drukken of te verwijderen, om functies zoals bewaking via Assurance mogelijk te maken.

Cisco DNA Center Inventory kan ook valideren dat de Netconf-vereisten juist zijn, waaronder:

- Netconf standaard poort 830 te zijn open en functioneel in het netwerk.

- Gebruiker met voorrecht 15 met SSH-toegang tot het netwerkapparaat (lokaal of AAA geconfigureerd).

- Schakel Netconf in het netwerkapparaat in:

(config)#netconf-yang

- Als een nieuw model is ingeschakeld, moet u ook de standaardinstellingen van de AAA configureren:

(config)#aaa authorization exec default

(config)#aaa authentication login default

Fouten in Netconf-referenties kunnen leiden tot een beheersbaarheids-foutmelding in Inventaris: NetConf-verbindingsfout.

Netwerkcontroles

We kunnen ook de netwerkconnectiviteit en protocollen zoals SNMP-instellingen valideren, afhankelijk van de versie.

We kunnen bijvoorbeeld de instellingen voor community, gebruiker, groep, engineID, verificatie en codering enzovoort dubbel controleren, afhankelijk van SNMP-versie.

We kunnen ook SSH- en SNMP-connectiviteit bekijken met ping- en traceroute-opdrachten in de apparaatopdrachtregel en poorten voor SSH (22) en SNMP (161 en 162) in firewall-, proxy- of toegangslijsten.

Van Cisco DNA Center, Maglev CLI gebruiken we de ip route opdrachten om de verbinding met het netwerkapparaat te valideren.

SNMP-wandeling kan ook worden gebruikt voor probleemoplossing.

Fouten in SNMP-referenties kunnen een foutmelding voor beheerbaarheid in inventaris veroorzaken: SNMP-verificatiefout of onbereikbaar apparaat.

Databasetabellen

Als eindgebruiker kunt u de Cisco DNA Center GUI met Grafana gebruiken om SQL queries uit te voeren zodat u geen toegang tot de Postgres shell via maglev CLI nodig hebt.

Tip: Als u wilt leren hoe u Grafana kunt gebruiken, raadpleegt u de officiële handleiding: Execute Postgres Queries in Cisco DNA Center GUI

Sommige postgres database tabellen om te bekijken bij problemen met netwerkapparaten in Inventory zijn:

- netwerkapparaat

- beheerinterface

- netwerkelement

- netwerkresource

- apparaatje

- ipaddress

Waarschuwing: Alleen Cisco TAC mag worden uitgevoerd om vragen te tonen in de Postgres Shell en alleen BU/DE-teams mogen wijzigingen aanbrengen in DB-tabellen.

Opmerking: Databasekwesties kunnen ook de interne foutmelding veroorzaken voor apparaten die het verzamelen van gegevens en de levering van apparaten kunnen verhinderen.

Tip: U kunt de Postgres-logboeken bekijken met Kibana op de pagina Cisco DNA Center System 360 en op zoek gaan naar overtredingen van de beperking wanneer de Inventory-service probeert gegevens op te slaan of bij te werken in de Postgres-databasetabellen.

Sync-loop en -traps

Cisco DNA Center is ontworpen om een apparaat uit te voeren Resycn elke keer dat het een val van het apparaat ontvangt nadat een belangrijke wijziging is uitgevoerd in het apparaat zelf om de Cisco DNA Center Inventory bijgewerkt te houden. Soms houdt Cisco DNA Center Inventory page uw netwerkapparaten voor altijd in de status "Syncing" in de sectie Beheerbaarheid.

Opmerking: Dit soort synchronisatielussen als gevolg van massale vallen kan ervoor zorgen dat Cisco DNA Center meerdere malen in een korte tijd verificatie uitvoert naar apparaten die de traps verzenden als gevolg van gedetecteerde wijzigingen.

API naar Apparaatsynchronisatie forceren

Als uw netwerkapparaat te lang, zelfs dagen, in de status Syncing houdt, eerst de basiscontroles op bereikbaarheid en connectiviteit. Forceer vervolgens het apparaat opnieuw synchroniseren via API-aanroep:

1.- Open de CLI-sessie van Cisco DNA Center maglev.

2.- Ontvang het Cisco DNA Center-verificatietoken via API:

curl -s -X POST -u admin  https://kong-frontend.maglev-system.svc.cluster.local/api/system/v1/identitymgmt/token

3.- Gebruik het token uit de vorige stap om de API uit te voeren om de apparaatsync te forceren:

curl -X PUT -H "X-AUTH-TOKEN:

" -H "content-type: application/json" -d '

' https://

/api/v1/network-device/sync-with-cleanup?forceSync=true --insecure

4.- U kunt het apparaat opnieuw in Syncing zien maar dit keer met een Force Sync optie via API.

Tip: U kunt het apparaatnummer opvragen via de browser-URL (device of id) van de pagina Cisco DNA Center Inventory Device Details of de pagina Apparaatweergave 360.

Opmerking: Raadpleeg de Cisco DevNet API-handleiding voor meer informatie over API's in Cisco DNA Center

Review Traps

Als het probleem blijft bestaan nadat de synchronisatietaak in het apparaat is geforceerd, kunnen we bekijken of het Cisco DNA Center "event-service" te veel traps ontvangt en welk type vallen controleren door de logboeken van de gebeurtenisservice te lezen:

1.- Voordat we de logbestanden lezen kunnen we gewoon de totale vallen controleren met de opdracht:

$ echo;echo;eventsId=$(docker ps | awk '/k8s_apic-em-event/ {print $1}'); docker cp $eventsId:/opt/CSCOlumos/logs/ /tmp/;for ip in $(awk -F\: '/ipAddress / {print $4}' /tmp/logs/ncs* | sort | uniq);do for trap in $(grep -A10 $ip /tmp/logs/ncs* | awk -F\= '/trapType/ {print $2}');do tStamp=$(grep -A10 $ip /tmp/logs/ncs* | awk '/trapType/ {print $2,$3}'); echo "$ip - $trap "| grep -E "^([0-9]{1,3}[\.]){3}[0-9]{1,3}" | awk -F\. '{print $1,$2,$3,$4}';done;done | sort | uniq -c | grep -v address| sort -bgr > /home/maglev/trapCounter.log &

2.- Vervolgens hechten we aan de event-service container:

$ magctl service attach -D event-service

3. - Zodra u in de gebeurtenisservice container, wijzigt u map naar de logboekmap:

$ cd /opt/CSCOlumos/logs/

4. - Als u de bestanden in de map te bekijken kunt u een aantal logbestanden zien die hun naam begint met "ncs".

Voorbeeld:

root@apic-em-event-service-586df7d4b8-f9c74:/opt/CSCOlumos/logs# ls -l

total 90852

drwxr-xr-x 1 maglev maglev     4096 May  9 21:33 ./

drwxr-xr-x 1 maglev maglev     4096 Apr 29 17:56 ../

-rw-r--r-- 1 root root 2937478 May 9 21:37 ncs-0-0.log -rw-r--r-- 1 root root 0 Apr 29 23:59 ncs-0-0.log.lck -rw-r--r-- 1 root root 10002771 May 9 21:33 ncs-1-0.log -rw-r--r-- 1 root root 10001432 May 9 21:16 ncs-2-0.log -rw-r--r-- 1 root root 10005631 May 9 21:01 ncs-3-0.log -rw-r--r-- 1 root root 10000445 May 9 20:47 ncs-4-0.log -rw-r--r-- 1 root root 10000507 May 9 20:33 ncs-5-0.log -rw-r--r-- 1 root root 10003091 May 9 20:21 ncs-6-0.log -rw-r--r-- 1 root root 10001058 May 9 20:06 ncs-7-0.log -rw-r--r-- 1 root root 10001064 May 9 19:53 ncs-8-0.log -rw-r--r-- 1 root root 10000572 May 9 19:39 ncs-9-0.log

-rw-r--r-- 1 root   root        424 Apr 30 00:01 nms_launchout.log

-rw-r--r-- 1 root   root        104 Apr 30 00:01 serverStatus.log

5.- Deze "ncs" bestanden zijn degene die we nodig hebben om te analyseren welk type vallen we ontvangen en hoeveel. We kunnen de logbestanden die ze filteren bekijken op apparaat hostname of het sleutelwoord "trapType":

root@apic-em-event-service-586df7d4b8-f9c74:/opt/CSCOlumos/logs# grep trapType ncs*.log

root@apic-em-event-service-586df7d4b8-f9c74:/opt/CSCOlumos/logs# grep

ncs*.log

Er zijn te veel soorten vallen, sommige van hen kunnen het apparaat resync teweegbrengen en als zij te vaak komen kunnen zij de lijn van de Sync veroorzaken.

Door de traps te analyseren kunnen we de oorzaak van de val identificeren en vallen maken om te stoppen, bijvoorbeeld een AP in een Rebooting Cycle.

U kunt de traps-uitvoer opslaan in een bestand en deze indien nodig delen met het escalatieteam.

Service-crashingstatus

Als u vermoedt dat de inventariskaart crasht vanwege oneven gedrag op de pagina Cisco DNA Center Inventory tijdens het beheer van netwerkapparaten, kunt u de status van de kaart eerst valideren:

$ magctl appstack status | grep inventory

$ magctl service status

Als u de uitvoer van de peul status, als u een hoog aantal herstart of een fout status ziet, dan kunt u aan de inventaris container bevestigen en het heapdump bestand verzamelen dat de gegevens kan hebben die kunnen helpen escalatie team te analyseren en te definiëren de basisoorzaak van de crashing staat:

$ magctl service attach -D

root@apic-em-inventory-manager-service-76f7f8d7f5-427m5:/# ll /opt/maglev/srv/diagnostics/ | grep heapdump

-rw-r--r-- 1 root root 1804109 Jul 20 21:16 apic-em-inventory-manager-service-76f7f8d7f5-427m5.heapdump

Opmerking: Als er geen heapdump-bestand in de containermap is gevonden, was er geen crashstatus aanwezig in de container.

Kan apparaat niet verwijderen

In sommige situaties kan Cisco DNA Center geen netwerkapparaat van de gebruikersinterface van de inventaris kunnen verwijderen vanwege een probleem met de back-end.

API om apparaat te verwijderen

Als u het apparaat niet uit de inventaris kunt verwijderen met de Cisco DNA Center GUI, kunt u de API gebruiken om het apparaat via id te verwijderen:

1.- Navigeer naar het Cisco DNA Center Menu -> Platform -> Developer Toolkit -> Tabblad API's en zoek naar apparaten in de zoekbalk, uit de resultaten klik in Apparaten uit de sectie Weet uw netwerk en zoek naar de API VERWIJDEREN door Device ID API.

2. - Klik in de API Delete by Device ID, klik in Try en geef de apparaat-id op van het gewenste apparaat dat uit de inventaris moet worden verwijderd.

3.- Wacht tot de API wordt uitgevoerd en u een OK-respons van 200 krijgt, en bevestig vervolgens dat het netwerkapparaat niet meer aanwezig is op de Inventarispagina.

Tip: U kunt het apparaatnummer opvragen via de browser-URL (device of id) van de pagina Cisco DNA Center Inventory Device Details of de pagina Apparaatweergave 360.

Opmerking: Raadpleeg de Cisco DevNet API-handleiding voor meer informatie over API's in Cisco DNA Center