Inhalt

Einleitung

Problemdetails

Analyse

Einleitung

Auf dem Aggregation Services Router 9000 (ASR9K) mit Enhanced XR (eXR), auch bekannt als 64-Bit-XR, Version 6.2.1 und höher, zeigt der Befehl "show memory summary" nicht den gesamten im entsprechenden Datenblatt dokumentierten internen Speicher an. Dies kann einige Kunden verwirren.

Problemdetails

Im Folgenden wird ein ASR9901 mit der Version 6.4.2 als Beispiel verwendet.

Laut Datenblatt verfügt der integrierte Routingprozessor (RP) über 32 GB 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

Bei "Speicherübersicht anzeigen" werden nur ca. 27 GB angezeigt, obwohl das System den Gesamtspeicher unter "Admin show system resources" als 32 GB erkennt.

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>

Dasselbe Verhalten kann auch auf anderen ASR9K-Geräten beobachtet werden, z. B.: ASR9010 mit eXR 6.2.3

Das Datenblatt A9K-RSP880-TR sollte 16 GB RAM haben.

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

"Zusammenfassung des Speichers anzeigen" zeigt 12,5 GB und "Administrator zeigt Systemressourcen 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

Wenn wir jedoch 32-Bit-XR überprüfen, wird der gesamte physische Speicher angezeigt, wie im Datenblatt dokumentiert:

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

Analyse

Ab Version 6.2.1 verwendet eXR auf ASR9K das Virtualisierungsmodell für virtuelle Maschinen (VM), wobei das Linux Container (LXC)-Modell verwendet wird, das in den Versionen 6.1.2 und 6.1.3 verwendet wurde.

Container können viel mehr Anwendungen in einen einzigen physischen Server packen als virtuelle Systeme.

VM's können eine Menge Systemressourcen beanspruchen. Auf jeder VM wird nicht nur eine vollständige Kopie eines Betriebssystems ausgeführt, sondern eine virtuelle Kopie der gesamten Hardware, die das Betriebssystem ausführen muss. Dies kann zu einer großen Menge an Arbeitsspeicher und CPU-Zyklen führen. Im Gegensatz dazu reicht alles, was ein Container benötigt, aus einem Betriebssystem, unterstützenden Programmen und Bibliotheken und Systemressourcen, um ein bestimmtes Programm auszuführen. VMs bieten jedoch eine wesentlich größere Flexibilität, um Funktionen wie In-Service-Software-Upgrades (ISSU) zu unterstützen.

Da Linux-Container die physischen Ressourcen und den Kernel des Hosts gemeinsam nutzen, während jede VM ihr eigenes Betriebssystem und ihre virtualisierte Hardware benötigt, würde dies erklären, warum jeder VM eine bestimmte Anzahl von Ressourcen vom gesamten Host zugewiesen wird. Dies führt dazu, dass in der Zusammenfassung des Arbeitsspeichers nicht der gesamte physische Arbeitsspeicher von eXR 6.2.1 und höher angezeigt wird. Linux Conainer können auch eine Beschränkung für zugewiesenen Speicher aufweisen, wie sie auf NCS5000- und NCS5500-Plattformen angezeigt wird, und dasselbe Verhalten wird für die CLI "show memory summary" auf diesen Plattformen beobachtet.