はじめに
このドキュメントでは、Cisco IOS® XR上のアグリゲーションサービスルータ(ASR)9Kの利点とデバッグ可能性のトレードオフによるltraceの削減について説明します。
ltraceとは
Ltraceは、Cisco IOS XRではデバッグ目的で広く使用されています。Cisco IOS XRの各プロセスは、メモリに保存されているトレースを使用するため、ルータの動作中にプロセスが増加するとメモリを消費します。
ltraceの使用を変更する設定
Cisco IOS XRリリース5.3.2以降では、ltraceの使用を変更するオプションが2つのddtsで追加されました。
1. Cisco Bug ID CSCus39188 スケールオプションでltrace shmemの使用を制限するオプションを提供
2. Cisco Bug ID CSCus39159 shmemの使用状況の詳細については、「show memory summary」を参照してください。
設定変更を有効にするには、設定後にリロードが必要です。
注:DDTSによるCisco Bug ID CSCuz22580 リリース5.3.xではltrace dynamic scale factor(dsca)を使用できません。これは、ファブリックカードが継続的にクラッシュするためです。このコマンドは、Cisco IOS XRリリース6.0.x以降のルータで使用できます。
デフォルトの動作
Cisco IOS XR 5.3.2以降のASR9Kルータでは、ltraceの観点からデフォルトの動作に注意してください。
RP/0/RSP1/CPU0:#show shmem summary location 0/1/cPU0
Total Shared memory: 1608M
ShmWin: 389M
Image: 882M
LTrace: 148M
AIPC: 27M
SLD: 3M
SubDB: 1016K
CERRNO: 144K
GSP-CBP: 62M
EEM: 0
XOS: 4M
CHKPT: 2M
CDM: 3M
XIPC: 1M
DLL: 64K
SysLog: 0
Miscellaneous: 81M
LTrace usage details:
Used: 148M, Max: 1884M
Current: default(dynamic)
Configured: dynamic with scale-factor: 16 (changes take effect after reload)
構成変更
設定後、スロット1ラインカードでltraceをスケールファクタ16だけ小さくするための変更を次に示します。
RP/0/RSP1/CPU0:#config t
RP/0/RSP1/CPU0:(config)#ltrace mode dynamic scale-factor 16 location 0/1/cpu0
RP/0/RSP1/CPU0:(config)#commit
RP/0/RSP1/CPU0:(config)#
リロード後
LCのリロード後にltraceを使用します。
RP/0/RSP1/CPU0:#show run | i ltrace
ltrace mode dynamic scale-factor 16 location 0/1/CPU0
RP/0/RSP1/CPU0:#show shmem summary location 0/1/CPU0
Total Shared memory: 1484M
ShmWin: 383M
Image: 882M
LTrace: 31M
AIPC: 27M
SLD: 3M
SubDB: 1016K
CERRNO: 144K
GSP-CBP: 62M
EEM: 0
XOS: 4M
CHKPT: 2M
CDM: 3M
XIPC: 1M
DLL: 64K
SysLog: 0
Miscellaneous: 80M
LTrace usage details:
Used: 31M, Max: 141M
Current: dynamic with scale-factor: 16
Configured: dynamic with scale-factor: 16
RP/0/RSP1/CPU0:#
注:この設定変更により、最大ltraceは以前の1884 Mから141 Mに、以前の使用は148 Mから31 Mに減少しました。ltraceの削減によって得られたメモリは、Cisco IOS XRルータの動作とプロセスに使用できます。
さまざまなスケール要因の比較
既定のトレース
LTrace usage details:
Used: 563M, Max: 3612M
Current: default(dynamic)
Configured: default(dynamic)
スケール係数8
LTrace usage details:
Used: 76M, Max: 436M
Current: dynamic with scale-factor: 8
Configured: dynamic with scale-factor: 8
スケール係数16
Used: 31M, Max: 141M
Current: dynamic with scale-factor: 16
Configured: dynamic with scale-factor: 16
ASR9Kでの32ビットと64ビットのCLIの違い
32ビットコマンド
RP/0/RSP1/CPU0:#show shmem summary location 0/2/CPU0
64ビットコマンド
RP/0/RSP1/CPU0:# show shared-memory location 0/RSP0/CPU0>>>>>> This cli is not supported on releases prior to 712/721
シェルコマンド
# show_memory -m
RPでのみltraceの削減が必要な場合にシャーシのリロードを回避する方法
- 両方のルートプロセッサ(RP)に対してのみ設定変更をコミットします。
- スタンバイルートスイッチプロセッサ(RSP)のリロード。
- show redundancyをチェックして、RSPがスタンバイ対応とNSR対応の両方であることを確認してください。
- RP FOの一部として以前のアクティブなRSPリロードが発生するRP FO。
質問と答え
1.ルータの動作におけるトレースとその目的は何ですか。
Ltraceはデバッグに使用されます。ほとんどすべてのXRプロセスは、これらのパラメータを使用して、動作中のすべての種類のイベントをログに記録します。これらのトレースは、ルータの予期しない動作のデバッグに役立ちます。
2.ltraceリダクションはどのように計算されますか?
デフォルトのスケールファクタの値が1825 MBの場合。スケールファクタ8の場合、1825/8 = 228.125 ~= 248MBになります。
3.最大ltrace値はどのように計算されますか。
最大値は、トレースが消費できる最大メモリを示します。これは、多数のプロセスと、ltrace管理を行うプロセスから要求される累積ltraceメモリに基づいています。
デフォルトでは、ltraceは1つのチャンクで要求されるメモリをクライアントに提供しません。用途に基づいて動的に実行されます(静的な設定と動的な設定が図に示されています)。
一方、「Used」は、ltraceのすべてのクライアントが現在使用している現在の共有メモリを提供します。
RP/0/RSP0/CPU0:#show shmem summary location 0/0/CPU0
Total Shared memory: 1395M
ShmWin: 630M
Image: 407M
LTrace: 173M
AIPC: 28M
SLD: 3M
SubDB: 1016K
CERRNO: 144K
GSP-CBP: 58M
EEM: 0
XOS: 4M
CHKPT: 2M
CDM: 3M
XIPC: 1M
DLL: 64K
SysLog: 0
Miscellaneous: 80M
LTrace usage details:
Used: 173M, Max: 1825M
Current: default(dynamic)
Configured: default(dynamic)
4.設定変更によるトレース削減のトレードオフは何ですか。
デフォルトとは異なるスケールファクタでのコンフィギュレーションコミットの変更により、ltraceストレージのバッファが減少するため、デバッグの可能性を犠牲にして、ルータで使用できる共有メモリを増やすことができます。
5.推奨値は何ですか。
これはltraceの削減の必要性に大きく依存します。ただし、インストールされている物理メモリが少ないRSPでは、ltraceの使用を減らすことをお勧めします。たとえば、6 GBの物理メモリを搭載したA9K-RSP440-TRでは、スケールファクタが8または16のトレースを減らすことで、システムで使用できるメモリを大幅に増やすことができ、停止の緩和に役立ちます。
6.ltraceコンシューマコンポーネントを見つける方法?
RPまたはラインカードLCに接続し、のシェルCLIを実行します。 du -sk /dev/shmem/ltrace/* | sort -n.