Introduzione
In questo documento viene descritto come monitorare l'utilizzo della CPU per risolvere i problemi relativi all'utilizzo elevato della CPU nel processo SNMP.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza base di Cisco IOS®-XE WLC serie 9800.
Componenti usati
Le informazioni di questo documento si basano sulle versioni hardware di Cisco IOS®-XE WLC serie 9800 e non sono limitate a versioni software specifiche.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Introduzione Informazioni
È necessario verificare se il protocollo SNMP è quello che presenta un utilizzo maggiore. Per ulteriori indagini, raccogliere questi registri durante l'orario non di ufficio quando viene rilevato il problema, in quanto può influire sulle prestazioni,
Monitor (Monitora)
Esempio:
ID Runtime (ms) Richiamato Secs 5 sec 1 min. 5 Min. TTY Processo
736 6846005 11045858 619 88,09% 9,15% 3,28% 0 SNMP ENGINE
Risoluzione dei problemi
Aprire due sessioni CLI WLC per raccogliere i seguenti log:
Sessione 1: visualizzazione degli host di stato del protocollo snmp
Debug snmp packet Debug snmp detail terminal monitor
Sessione-2: questi stati mostrano l'output per un intervallo e consentono al servizio interno di eseguire questa operazione.
Conf t Service internal end wr test snmp cpu-stats start show snmp cpu-stats test snmp cpu-stats stop
Verificare inoltre il MIB utilizzato per il polling sul server SNMP quando viene rilevato il problema.
script EEM
Attenersi alla procedura relativa alle ore non di produzione.
Passaggio 1. Eseguire questi comandi
Conf t
Interno servizio
end
wr
Passaggio 2. Abilitare lo script EEM per gli stati snmp (copiare e incollare lo script nella CLI del controller):
Conf t
nessuna applet per gestione eventi snmp-1
applet gestione eventi snmp-1
event none maxrun 2000
action 10 cli, comando "enable"
action 11 comando cli "terminal leng 0"
l'azione 11.1 avvia lo script
azione 12 comando cli "debug snmp packet"
azione 13 comando cli "debug snmp detail"
azione 14 comando cli "debug snmp request"
action 20.1 cli, comando "show clock"
azione 21 regexp "(Gen|Feb|Mar|Apr|Maggio|Giu|Lug|Ago|Set|Ott|Nov|Dic) ([1-9]|0[1-9]|[1-2][0-9]|3[0-1]) (20[1-9][0-9])" "$_cli_result" ora2 mese giorno anno
azione 22 inserisce "$time2"
azione 23 put "$month"
azione 24 inserisce "$day"
azione 25 inserisce "$year"
azione 26 comando cli "show clock | append flash:/snmp-cpu-logs-$year$month$day.txt"
azione 27 comando cli "show snmp status hosts | append flash:/snmp-cpu-logs-$year$month$day.txt"
azione 30 comando cli "test snmp cpu-stats start"
azione 35 impostazione livello 1
36 mentre $iter le 6
azione 40 comando cli "show snmp cpu-stats | append flash:/snmp-cpu-logs-$year$month$day.txt"
l'azione 40.1 mette "Iteratore:$iter"
azione 41 attesa 300
azione 43 comando cli "show clock | append flash:/snmp-cpu-logs-$year$month$day.txt"
azione 44 incrementare livello 1
azione 45 fine
azione 50 comando cli "test snmp cpu-stats stop"
action 55 cli command "no debug snmp packet"
action 56 cli command "no debug snmp detail"
action 57 cli command "no debug snmp request"
L'azione 58 mette "fine lo script"
end
wr
Passaggio 3. Eseguire lo script precedente utilizzando questo comando: #event manager run snmp-1
Nota: al di fuori dell'orario di lavoro, quando viene rilevato un problema, abilitare lo script utilizzando il comando,
Attendere che lo script termini il prompt nella CLI. Solitamente ci vogliono 30 minuti.
Passaggio 4. L'esecuzione dello script precedente richiede al massimo 30-40 minuti e richiede il messaggio "Script ends",
È necessario completare l'istruzione "Iterator" dopo la visualizzazione del messaggio "Script ends"
Una volta terminato lo script, selezionare GUI > Amministrazione > File Manager > Bootflash. Fare clic con il pulsante destro del mouse sul log snmp-cpu-logs.txt per scaricarlo e condividerlo con TAC.
Passaggio 5. Controllare il file MIB utilizzato per eseguire il polling del WLC durante il rilascio.
Un output di riferimento di esempio può essere simile al seguente:
DR 5sec% 1min% 5min% Tempo di esecuzione (ms) (usec) richiamato da OID
556272A00320 0,00 6,03 3,30 59 59408 44 vmMembershipSummaryEntry.2
556272A00320 50,48 9,68 4,09 59 59659 44 vmMembershipSummaryEntry,3
556272A00320 0,23 1,60 2,23 0 8333 6 clcCdpApCacheNomeApp
556272A00320 0.19 1.62 2.24 2 6999 5 bsnDot11EssMacFiltering
556272A00320 0,23 1,60 2,23 2 3792 24 bsnDot11EssAdminStatus
556272A00320 0,23 1,60 2,23 2 4000 2 bsnDot11EssSecurityAuthType
556272A00320 0,23 1,60 2,23 2 3541 24 bsnDot11EssRowStatus
556272A00320 0,23 1,60 2,23 2 3500 2 bsnDot11EssWebPolicySet
L'utilizzo di SNMP superiore al 70-90% per C9800-40 è normale.
Conclusioni
Se si utilizza SNMP per eseguire il polling di OID diversi, la CLI deve essere configurata come best practice per ridurre il possibile impatto sulla CPU C9800: C9800config)#snmp-server subagent cache
Con questo comando, la cache viene cancellata dopo 60 secondi. Per modificare l'intervallo, utilizzare questa CLI:
Timeout cache subagent C9800(config)#snmp-server?
<1-100> intervallo di timeout della cache (predefinito: 60 secondi)
Se il core non deve essere utilizzato ulteriormente sul processo SNMP, limitare il polling SNMP dal server che utilizza il MIB. Disabilitare l'identificatore dell'oggetto tempo di attesa elevato dal MIB/server SNMP.
Un oggetto SNMP ad alta coda dal MIB può essere disabilitato o rimosso.
Di seguito è riportato l'elenco dei riferimenti che è possibile disabilitare se non necessario:
NomeAppCacheCdpApp
bsnDot11EssMacFiltering
bsnDot11EssAdminStatus
bsnDot11EssSecurityAuthType
bsnDot11EssRowStatus
bsnDot11EssWmePolicySetting
IndirizzoIpStazioneMobileBSN
NomeUtenteStazioneMobileBSN
bsnStazioneMobileAPMacAddr
idslotAPIfMobileStationbsn
bsnMobileStationEssIndex
bsnStazioneMobileSsid
BSNMobileStationAID
bsnStatoStazioneMobile
bsnAPIfDot11PeriodoBeacon
bsnGlobalDot11OpzionePrivacyImplementata
bsnGlobalDot11CapacitàMultidominioImplementata
bsnGlobalDot11CapacitàMultidominioAbilitata
bsnGlobalDot11IndicePaese
bsnGlobalDot11BilanciamentoCarico
bsnSupportoGlobaleDot11bDot11g
L'oggetto "bsn station" su SNMP impiega tempo per ottenere ulteriori dettagli.
Suggerimento: è consigliabile ridurre l'intervallo di polling in base al numero di nodi della rete e rimuovere i MIB non necessari
Informazioni correlate
Per ulteriori informazioni su SNMP su C9800, fare riferimento a questo collegamento: