目錄

簡介

問題詳細資訊

分析

簡介

在執行增強型XR(eXR)的聚合服務路由器9000(ASR9K)上（也稱為64位XR 6.2.1版及更高版本），命令「show memory summary」不會顯示相應的資料表上記錄的所有內部記憶體，這可能會讓某些客戶感到困惑。

問題詳細資訊

下面我們將使用運行6.4.2的ASR9901作為示例。

根據資料表，整合路由處理器(RP)具有32 GigaBytes(GB)的隨機訪問記憶體(RAM)。

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」只顯示約27GB，儘管系統在「admin show system resources」下識別總記憶體為32GB。

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>

在其他ASR9K裝置上可以觀察到相同的行為，例如：帶eXR 6.2.3的ASR9010

檢視資料表A9K-RSP880-TR時應有16GB的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」顯示12.5GB，「admin show system resource」顯示16GB

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

但是，如果我們檢查32位XR，則會按照資料表中的說明顯示總實體記憶體:

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

分析

從版本6.2.1開始，ASR9K上的eXR將使用虛擬機器(VM)虛擬化模型，從版本6.1.2和6.1.3中使用的Linux Container(LXC)模型轉換而來。

與虛擬機器(VM)相比，容器可以將更多的應用程式打包到單個物理伺服器中。

VM會佔用大量的系統資源。每個VM運行的不只是作業系統的完整複製，而是作業系統(OS)需要運行的所有硬體的虛擬複製。這可能會增加大量記憶體和CPU週期。相反，容器需要的只是作業系統、支援程式和庫以及系統資源足以運行特定程式。但是，VM在容納服務中軟體升級(ISSU)等功能方面提供了更大的靈活性。

因為Linux Containers共用主機的物理資源和核心，而每個VM都需要自己的作業系統和虛擬化硬體，所以這就解釋了為什麼每個VM從整個主機分配了特定數量的資源，從而導致show memory summary沒有顯示eXR 6.2.1版及更高版本上的總實體記憶體。Linux聯結器也可能對分配的內存有限制，因為它顯示在NCS5000和NCS5500平台上，並且在這些平台上會觀察到「show memory summary」CLI的相同行為。