Sommario

Introduzione

Problema

Premesse

Soluzione

Comandi utili

Introduzione

Questo documento descrive la soluzione per un utilizzo elevato della memoria recuperabile sulla scheda MIO su ASR5500 dopo l'abilitazione EDR (Event Data Record).

Problema

Lo chassis ASR 5500 mostrava un elevato utilizzo di memoria recuperabile sulla scheda MIO (Management Input/Output) attiva dopo l'aggiunta della configurazione EDR.

Premesse

ASR 5500 utilizza una serie di unità a stato solido (SSD) per lo storage persistente a breve termine. Il RAID 5 viene utilizzato da ASR 5500 e viene chiamato hd-raid. Vari record di dati vengono memorizzati sul raid hd come file. Questi file vengono trasferiti da ASR 5500. Il numero di record e di file può essere elevato e questo determina la creazione di un numero elevato di pagine di memoria recuperabili per memorizzare i file. Le pagine recuperabili sono pagine di file di backup, ovvero pagine allocate tramite file mappati, che non sono attualmente mappate ad alcun processo. Da processo e memoria, le pagine recuperabili vengono calcolate come Attivo(file) + Inattivo(file) - Mappato.

È possibile raggiungere una soglia in base ai recuperi di memoria che possono bloccare il processo. Se ciò avviene durante un'attività critica, il sistema può passare da una scheda all'altra quando non risponde in tempo. I valori minimo, minimo e massimo determinano l'avvio e l'arresto di Kernel Swap Daemon (kswapd). Il kswapd è un processo asincrono per eseguire queste operazioni di recupero finché la memoria libera non supera il limite massimo.

Vengono mostrati esempi dei dettagli della memoria per le schede MIO prima e dopo la configurazione EDR.

Prima della memorizzazione nella cache era di circa 0,8 Gb

******* card5-cpu0 /proc/meminfo *******

MemTotal:       98941752 kB

MemFree:        93932096 kB

Buffers:            4324 kB

Cached:           838580 kB

Dopo l'abilitazione EDR è diventata di 70 Gb

******** card5-cpu0 /proc/meminfo *******

MemTotal:       98941752 kB

MemFree:        21543700 kB

Buffers:            4004 kB

Cached:         70505556 kB

Card 5, CPU 0:

Status                : Active, Kernel Running, Tasks Running

File Usage          : 12320 open files, 9881352 available

Memory Usage        : 8875M 9.0% used, 67804M 69.0% reclaimable

Memory Details:

Static            : 1437M kernel, 243M image

System            : 63M tmp, 3M buffers, 3077M kcache, 68004M cache

Process/Task      : 3707M (1276M small, 2082M huge, 349M other)

Other             : 141M shared data

Free              : 21624M free

Usable            : 94940M usable (21624M free, 141M shared data, 67804M reclaimable, 4728M reserved by tasks)

Soluzione

L'elevata quantità di EDR generati e il lungo tempo necessario per eliminare i vecchi record possono causare un elevato utilizzo della memoria recuperabile. Si consiglia di verificare il tempo che intercorre tra il push dei file all'esterno di ASR 5500 e il tempo di eliminazione dei vecchi file. Il timer di eliminazione file deve essere regolato in base alle operazioni del nodo. Nell'immagine è illustrato il flusso generale del ciclo di vita della memoria.

Nota: i file devono essere eliminati dopo essere stati trasferiti all'esterno di ASR 5500. Il metodo preferito è l'utilizzo cdr remove-file-after-transfer configurazione. La configurazione è applicabile a CDR ed EDR.

I comandi per abilitare l'eliminazione sono visualizzati nello snippet.

[local]ASR5500# config

[local]ASR5500(config)# context (name)

ASR5500(config-ctx)# edr-module active-charging-service

ASR5500(config-ctx)# cdr use-harddisk

ASR5500(config-ctx)# cdr-remove-file-after-transfer

Comandi utili

- Quando CDMOD è abilitato.

show cdr statistics

- Per monitorare la memoria recuperabile. Mostra i risultati dell'ultima lettura di 5 minuti, 15 minuti, valori minimo e massimo rispettivamente.

show cpu info card [5|6] verbose | grep reclaimable

show cdr file-space-usage

show gtpp storage-server local file statistics

Nell'esempio dell'output, è possibile eliminare 89 Gb.

[local]ASR5500# show cpu info card 5 verbose | grep reclaim

Memory Usage        : 10984M 11.2% used, 86380M 87.9% reclaimable

Usable            : 74076M usable (939M free, 86380M reclaimable, 13242M reserved by tasks)

Memory Usage        : 10985M 11.2% used, 86445M 87.9% reclaimable

Usable            : 74065M usable (872M free, 86445M reclaimable, 13253M reserved by tasks)

Memory Usage        : 11064M 11.3% used, 86387M 87.9% reclaimable

Usable            : 73904M usable (851M free, 86387M reclaimable, 13334M reserved by tasks)

Memory Usage        : 9803M 10.0% used, 87803M 89.3% reclaimable

Usable            : -NA- (697M free, 87803M reclaimable, 13511M reserved by tasks)

- Controllare la configurazione GTP per l'intervallo di eliminazione CDR/EDR e verificare che sia impostato su un intervallo inferiore, ad esempio 720 secondi.
Attenzione: questo valore deve essere impostato in base al flusso del modello di chiamata specifico.

gtpp group <>

gtpp storage-server local file purge-processed-files purge-interval 720