Introduzione
Su Aggregation Services Router 9000 (ASR9K) con Enhanced XR (eXR), noto anche come 64-bit XR, versione 6.2.1 e successive, il comando "show memory summary" non visualizza tutta la memoria interna documentata sul Data Sheet corrispondente, il che potrebbe confondere alcuni clienti.
Dettagli problema
Di seguito verrà utilizzato un ASR9901 con versione 6.4.2 come esempio.
In base alle specifiche tecniche, il processore di routing integrato (RP) dispone di 32 GigaByte (GB) di RAM (Random Access Memory).
RP/0/RSP0/CPU0:R1#show platform
Node Type State Config state
--------------------------------------------------------------------------------
0/RSP0/CPU0 ASR9901-RP(Active) IOS XR RUN NSHUT
0/FT0 ASR-9901-FAN OPERATIONAL NSHUT
0/FT1 ASR-9901-FAN OPERATIONAL NSHUT
0/FT2 ASR-9901-FAN OPERATIONAL NSHUT
0/0/CPU0 ASR9901-LC IOS XR RUN NSHUT
"Show memory summary" visualizza solo circa 27 GB, nonostante il sistema riconosca la memoria totale come 32 GB in "admin show system resources".
RP/0/RSP0/CPU0:R1#show memory summary
node: node0_RSP0_CPU0
------------------------------------------------------------------
Physical Memory: 27089M total (22185M available)
Application Memory : 27089M (22013M available)
Image: 4M (bootram: 0M)
Reserved: 0M, IOMem: 0M, flashfsys: 0M
Total shared window: 133M
RP/0/RSP0/CPU0:R1#admin show system resources
Node Physical Application Boot Partition CPUs Shmwin
Total Available Cached Total Available Cached Total Available
0/RSP0-Host 32415M^ 512M^ 135M 31655M^ 500M^ 132 923M 542M 4 N/A
0/RSP0-Admin 1940M 1072M 144M 1894M 1047M 141 2308M 1252M 1 N/A
0/RSP0-XR 27739M 22548M 999M 27089M 22020M 975 N/A N/A 2 6655M
<snip>
Lo stesso comportamento può essere osservato su altri dispositivi ASR9K, ad esempio ASR9010 con eXR 6.2.3
Osservando la scheda tecnica A9K-RSP880-TR dovrebbe avere 16 GB di RAM.
RP/0/RSP0/CPU0:R2#show platform
Node Type State Config state
-------------------------------------------------------------------------------
0/RSP0/CPU0 A9K-RSP880-TR(Active) IOS XR RUN NSHUT
0/FT0 ASR-9010-FAN-V2 OPERATIONAL NSHUT
0/FT1 ASR-9010-FAN-V2 OPERATIONAL NSHUT
0/1/CPU0 A9K-MOD400-TR IOS XR RUN NSHUT
0/1/0 A9K-MPA-20X10GE OK
0/1/1 A9K-MPA-1X100GE OK
0/PT0 A9K-AC-PEM-V3 OPERATIONAL NSHUT
0/PT1 A9K-AC-PEM-V3 OPERATIONAL NSHUT
"Show memory summary" visualizza 12,5 GB e "admin show system resource" visualizza 16 GB
RP/0/RSP0/CPU0:R2#show memory summary
node: node0_RSP0_CPU0
------------------------------------------------------------------
Physical Memory: 12496M total (8465M available)
Application Memory : 12496M (8287M available)
Image: 4M (bootram: 0M)
Reserved: 0M, IOMem: 0M, flashfsys: 0M
Total shared window: 128M
RP/0/RSP0/CPU0:R2#admin show system resou
Node Physical Application Boot Partition CPUs Shmwin
Total Available Cached Total Available Cached Total Available
0/RSP0-Host 16217M^ 276M^ 29M 15837M^ 271M^ 28 923M 592M 8 N/A
0/RSP0-Admin 1940M 1158M 78M 1894M 1131M 76 2308M 1451M 1 N/A
0/RSP0-XR 12796M 8488M 888M 12496M 8288M 867 N/A N/A 6 3071M
0/1-Host 24491M 11510M 127M 23917M 11241M 124 923M 592M 6 N/A
0/1-Admin 1008M 471M 90M 984M 460M 88 2308M 1528M 1 N/A
0/1-XR 10948M 5902M 2343M 10691M 5764M 2288 N/A N/A 5 3071M
Tuttavia, se si controlla 32-bit XR, viene visualizzata la memoria fisica totale come documentato nel datasheet:
RP/0/RSP0/CPU0:R3#show memory summary
Physical Memory: 16384M total (12600M available)
Application Memory : 16043M (12600M available)
Image: 100M (bootram: 100M)
Reserved: 224M, IOMem: 0, flashfsys: 0
Total shared window: 51M
RP/0/RSP0/CPU0:R3#show platform
Node Type State Config State
-----------------------------------------------------------------------------
0/RSP0/CPU0 A99-RSP-TR(Active) IOS XR RUN PWR,NSHUT,MON
0/RSP1/CPU0 A99-RSP-TR(Standby) IOS XR RUN PWR,NSHUT,MON
0/1/CPU0 A9K-MOD400-SE IOS XR RUN PWR,NSHUT,MON
0/1/0 A9K-MPA-20X10GE OK PWR,NSHUT,MON
0/1/1 A9K-MPA-2X100GE OK PWR,NSHUT,MON
0/2/CPU0 A99-8X100GE-SE IOS XR RUN PWR,NSHUT,MON
0/4/CPU0 A9K-MOD400-TR IOS XR RUN PWR,NSHUT,MON
0/4/0 A9K-MPA-8X10GE OK PWR,NSHUT,MON
0/4/1 A9K-MPA-2X40GE OK PWR,NSHUT,MON
Analisi
A partire dalla release 6.2.1, eXR su ASR9K utilizzerà il modello di virtualizzazione Virtual Machine (VM), che consente di passare dal modello Linux Container (LXC) utilizzato nelle release 6.1.2 e 6.1.3.
I contenitori possono contenere molte più applicazioni in un unico server fisico di quanto non possa fare una macchina virtuale (VM).
Le VM possono richiedere molte risorse di sistema. Ogni VM esegue non solo una copia completa di un sistema operativo, ma anche una copia virtuale di tutto l'hardware necessario per l'esecuzione del sistema operativo. Questo può aumentare la quantità di memoria e i cicli della CPU. Al contrario, tutto ciò che un contenitore richiede è un sistema operativo, il supporto di programmi e librerie, e risorse di sistema per eseguire un programma specifico. Tuttavia, le VM offrono una maggiore flessibilità per supportare funzioni quali l'aggiornamento del software in-service (ISSU).
Poiché i contenitori Linux condividono le risorse fisiche e il kernel dell'host, mentre ogni VM richiede il proprio sistema operativo e hardware virtualizzato, ciò spiegherebbe perché a ogni VM viene allocata una quantità specifica di risorse dall'host complessivo. Di conseguenza, nel riepilogo della memoria visualizzata non viene visualizzata la memoria fisica totale complessiva in eXR release 6.2.1 e successive. I contenitori Linux possono inoltre avere un limite per la memoria allocata, come appare sulle piattaforme NCS500 e NCS5500, e su queste piattaforme verranno osservati gli stessi comportamenti per la CLI 'show memory summary'.