Einleitung
In diesem Dokument wird die Lösung für eine hohe wiederverwendbare Speichernutzung auf der MIO-Karte des ASR5500 nach der Aktivierung von Event Data Record (EDR) beschrieben.
Problem
Das ASR 5500-Gehäuse wies nach dem Hinzufügen der EDR-Konfiguration eine hohe wiederverwendbare Speichernutzung auf der aktiven Management Input/Output (MIO)-Karte auf.
Hintergrundinformationen
Die ASR 5500 verwendet ein Array von Solid State Drives (SSDs) für die kurzfristige persistente Speicherung. RAID 5 wird vom ASR 5500 verwendet und hd-raid genannt. Auf dem hd-raid werden verschiedene Datensätze als Dateien gespeichert. Diese Dateien werden vom ASR 5500 übertragen. Die Anzahl der Datensätze und Dateien kann groß sein, wodurch eine große Anzahl von wiederverwendbaren Speicherseiten zum Speichern der Dateien erstellt wird. Wiederverwendbare Seiten sind dateigestützte Seiten (d. h. Seiten, die über zugeordnete Dateien zugewiesen werden), die derzeit keinem Prozess zugeordnet sind. Aus Prozess und Speicher werden die zurückforderbaren Seiten als Active(file) + Inactive(file) - Mapped berechnet.
Es gibt einen Schwellenwert, der erreicht werden kann, wenn Speicher zurückgewonnen wird, der den Prozess blockieren kann. Wenn dies während einer kritischen Aufgabe geschieht, kann das System die Karten umschalten, wenn es nicht rechtzeitig reagiert. Die Minimal-, Low- und High-Werte bestimmen, wann der Kernel Swap Daemon (kswapd) startet und stoppt. Der kswapd ist ein asynchroner Prozess, um diese Rückforderungen durchzuführen, bis der freie Speicher die hohe Marke überschreitet.
Es werden Beispiele für Speicherdetails für MIO-Karten vor und nach der EDR-Konfiguration gezeigt.
Vor dem Cache-Speicher lag er bei ca. 0,8 GB
******* card5-cpu0 /proc/meminfo *******
MemTotal: 98941752 kB
MemFree: 93932096 kB
Buffers: 4324 kB
Cached: 838580 kB
Nach der Aktivierung von EDRs wurden 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)
Lösung
Die hohe Anzahl generierter EDRs und die lange Zeit zum Löschen alter Datensätze können eine hohe wiederverwertbare Speichernutzung verursachen. Es wird empfohlen, die Zeit zwischen dem Push der Dateien außerhalb des ASR 5500 und dem Löschen alter Dateien zu überprüfen. Der Timer für das Löschen von Dateien muss entsprechend den Knotenvorgängen angepasst werden. Der allgemeine Ablauf des Speicherlebenszyklus ist in der Abbildung dargestellt.
Hinweis: Die Dateien müssen gelöscht werden, nachdem sie außerhalb des ASR 5500 übertragen wurden. Die bevorzugte Methode ist die Verwendung cdr remove-file-after-transfer
konfiguration. Die Konfiguration gilt für CDR und EDR.
Die Befehle zum Aktivieren des Löschvorgangs werden im Ausschnitt angezeigt.
[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
Nützliche Befehle
- Wenn CDMOD aktiviert ist.
show cdr statistics
- Überwachen des wiederverwendbaren Speichers. Es zeigt Ergebnisse für die letzte Lesung von 5 Minuten, 15 Minuten, minimalen bzw. maximalen Werten.
show cpu info card [5|6] verbose | grep reclaimable
show cdr file-space-usage
show gtpp storage-server local file statistics
Im Beispiel der Ausgabe können 89 GB gelöscht werden.
[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)
gtpp group <>
gtpp storage-server local file purge-processed-files purge-interval 720