Sommario

Introduzione

Sfondo

Prerequisiti

Requisiti

Componenti usati

Suggerimenti per la risoluzione dei problemi

Introduzione

Questo documento aiuta a comprendere l'utilizzo medio della memoria sul dispositivo Nexus 3000.

Contributo di Narottama Sahoo, Santhosh Shankar, Cisco TAC Engineers

Sfondo

L'utilizzo della memoria in nexus 3000 può variare in base alla versione in esecuzione sul dispositivo.

Nelle versioni più recenti, a causa dell'aggiunta di nuove funzionalità, l'utilizzo di memoria sarà probabilmente elevato rispetto alle versioni precedenti

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Interfaccia della riga di comando Nexus

- Informazioni sul funzionamento della memoria flash e RAM nel mondo dei computer

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Nexus serie 3000 piattaforma

- Versione codice 6.x e 7.x

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.

Suggerimenti per la risoluzione dei problemi

Di seguito sono riportati alcuni output di esempio del mio laboratorio (N3548 configurato in modo minimo) che mostrano l'utilizzo della memoria di base sulla piattaforma.

N3K-3548.42# sh system resources | egrep "used"

Memory usage:   4117860K total,   2250220K used,   1867640K free

N3K-3548.42# sh system internal kernel memory global | be NAME | cut -c 1-42

NAME            |TOTAL                   |

mtc_usd         | 462744  231212  223972 |

fwm             | 277132   97788   84907 |

afm             | 218180   53060   40829 |

netstack        | 380252   45592   38952 |

clis            | 219208   41924   32060 |

m2rib           | 182944   35812   31502 |

--More--

Tutti i processi in esecuzione utilizzeranno una certa quantità di memoria per le operazioni di text/heap/stack/data/shared-lib.   La CLI precedente indica l'utilizzo proporzionale della memoria per processo (tiene conto delle pagine di memoria condivise tra i processi).  Aggiungendo l'utilizzo proporzionale della memoria di tutti i processi, è possibile ottenere una rappresentazione dell'utilizzo della memoria da parte dei processi dello spazio utente.  Su uno switch lab, la somma di utilizzo di base per tutti i processi in esecuzione è stata circa il 42% dell'utilizzo complessivo (943276 kB).

N3K-3548.42# sh system internal kernel meminfo | egrep "ShmFS|^In cache"

In cache: 1174236 kB

ShmFS: 1169840 kB

I file binari / le configurazioni / ecc di NX-OS vengono estratti dalle immagini di kickstart/sistema durante l'avvio.  Questi risiedono in file system temporanei non supportati da storage persistente e sono considerati da linux come ShmFS.

Oltre all'utilizzo di ShmFS, Linux memorizza temporaneamente nella cache i contenuti dei file letti/referenziati dai processi.  Il contatore memorizzato nella cache è la somma di ShmFS e dei file memorizzati nella cache.   Dall'output sopra riportato, è possibile osservare che l'utilizzo nella cache rappresenta circa il 52% dell'utilizzo complessivo (1174236 kB).

N3K-3548.42# sh system internal kernel meminfo | egrep "Lastra"

Lastra: 85376 kB

Infine, il kernel utilizza anche una certa quantità di memoria per le strutture di dati interne.  Slab tiene conto delle strutture di dati kernel e kernel_module.  Dall'output sopra riportato, l'utilizzo di lastre rappresenta circa il 4% dell'utilizzo complessivo (85376 kB).

Esiste un ulteriore utilizzo della memoria che non viene interrotto dal kernel linux, ma che è in grado di gestire solo circa 50 MB.  Per ulteriori informazioni, consultare la documentazione relativa all'architettura Linux.

In proporzione all'utilizzo di base, i file system temporanei sono i più grandi consumatori di memoria.  Si tratta di un comportamento previsto e comune a tutte le piattaforme basate su NX-OS.

Per NX-OS con 5.X l'utilizzo medio sarà di circa il 40%

Per NX-OS con un utilizzo medio di 6,X compreso tra il 60% e il 70%

Per NX-OS con utilizzo 7.X sarà circa l'80%

Pertanto, un maggiore utilizzo della memoria è probabilmente un fattore di nuove funzionalità in ciascuna release e un maggiore ingombro di base per il sistema operativo.

Output di esempio raccolto senza alcuna configurazione predefinita sul dispositivo

Versione: 6.0(2)U3(7)

switch# show system resources module all

CPU Resources:

-----------------------------------------------------------

CPU utilization: Module 5 seconds 1 minute 5 minutes

-----------------------------------------------------------

1         7        6        9

-----------------------------------------------------------

Processor memory: Module Total(KB) Free(KB) % Used

-----------------------------------------------------------

1   3785276   1450540    61             (Usage when running 6.x version)

Versione: 7.0.3.I2.2a

switch# show system resources module all

CPU Resources:

----------------------------------------------------------

CPU utilization: Module 5 seconds 1 minute 5 minutes

-----------------------------------------------------------

1     6        8         8

-----------------------------------------------------------

Processor memory: Module Total(KB) Free(KB) % Used

-----------------------------------------------------------

1    3903900   795600      79            (Usage when running 7.x version)

Consigli:

Consultare sempre le note sulla versione per conoscere i requisiti di sistema per ogni software. I requisiti hardware e software variano in particolare in base alla memoria durante l'aggiornamento a una versione più recente del codice.

Link utili:

Note sulla release