概要
このドキュメントでは、Nexus 7000シリーズスイッチのM1親カードでファブリックエクステンダ(FEX)を使用する場合に、Light Distribution Box(LDB)割り当てが失敗したために中断されたVLANをトラブルシューティングする方法について説明します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- Cisco NX-OSバージョン6.2(x)
- Cisco Nexus 7000 シリーズ スイッチ
- Cisco Nexus 2000シリーズファブリックエクステンダ
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
背景説明
LDBは、FEXポートチャネルのトランクからVLANへのマッピングなど、フォワーディングエンジンが受信したフレームのプロパティを格納するハードウェアテーブルです。LDB割り当ての失敗は、このデータベースが枯渇したことを示します。
FEXモジュールがN7K-M132XP-12(非XL)に接続されている場合、LDBエントリの最大数は約228kです。XLモジュールの場合、制限は約512Kです。
合計LDBエントリは、各FEX HIFで定義されたVLAN範囲の合計(HIFで定義された最大VLANと最小VLANの差)です。
以下に、いくつかの例を示します。
switchport trunk allowed vlan 1-4 = 4 LDBエントリ
switchport trunk allowed vlan 1-4、70-80、800 = 800 LDBエントリ
switchport trunk allowed vlan 200-800 = 600 LDBエントリ
switchport trunk allowed vlan 200, 800 = 600 LDBエントリ
ポート101/1/1 ~ 101/1/10がswitchport trunk allowed vlan 200で設定されている場合、800個のLDBエントリが消費される総数は6000(10x600)になります。
アクセスポートは1つのLDBエントリ(HIFで定義されたアクセスVLAN)を消費します。
次のコマンドを使用して、各モジュールのLDBエントリを確認します。
N7K-A# attach mod 1
Attaching to module 1 ...
To exit type 'exit', to abort type '$.'
module-1#
module-1# show system internal eltmc info ldb summary
LDB allocation summary:
Max dynamic ldb entries: 203776
Total number of entries: 199680
Number of free entries: 197
Number of free regions: 2
Number of allocated entries: 199483
Number of allocated regions: 280
Number of fail allocations: 21
[an error occurred while processing this directive]
この例では、21件のLDB割り当てが失敗しています。特定のエントリをデータベースの特定の部分にハッシュするために使用されるハッシュメカニズムが原因で、エントリの総数が最大のダイナミックLDBエントリに達して割り当てが失敗したことを確認する必要はありません。
次の出力は、各ポートチャネルまたはインターフェイスで使用されるLDBエントリの数(16進数)を示しています。
module-1# show system internal eltmc info ldb all
LDB allocation maps :
base size allocation
0xd400 0x1000 Shared
0xe400 0x1000 Shared
0xf400 0x1000 Shared
0x10400 0x1000 Ethernet1/4
0x11400 0x1000 Ethernet1/7
0x12400 0x1 Ethernet179/1/30
0x12401 0x1 port-channel1093
0x12402 0x1 port-channel1564
0x12403 0x1 port-channel1550
0x12404 0x1 port-channel1527
0x12405 0x1 port-channel1546
0x12426 0x1 Ethernet169/1/47
0x12427 0x1 Ethernet169/1/48
0x12428 0x1 Ethernet181/1/33
0x12429 0x1 Ethernet181/1/34
0x1242a 0x1 Ethernet163/1/4
0x1242b 0x1 Ethernet163/1/5
0x1242c 0x506 Ethernet183/1/7
0x12932 0x1 port-channel1096
0x12933 0x1 port-channel1095
0x12934 0x1 port-channel1092
0x12935 0x2c8 port-channel1084
0x12bfd 0x506 Ethernet183/1/8
0x13103 0x2c8 port-channel1086
0x133cb 0x1 port-channel1589
0x133cc 0x1 port-channel1063
0x133cd 0x1 port-channel1654
0x133ce 0x1 port-channel1652
0x133d4 0x1 port-channel1520
0x133d5 0x1 port-channel1560
0x133d6 0x1 port-channel1561
0x133d7 0x506 Ethernet167/1/4
0x138dd 0x506 Ethernet167/1/2
0x13de3 0x403 Ethernet165/1/2
0x141e6 0x403 Ethernet151/1/1
<snip>
[an error occurred while processing this directive]
注:上記の2つのコマンドは、NX-OS 6.0.3および5.2.4のN7K-M132XP-12(非XL)に対して誤ったLDB値を提供します。
NX-OS 5.2.5および6.1でこれを修正します。
問題:Nexus 2000ファブリックエクステンダが接続されているNexus 7000でLDB割り当てが失敗するため、VLANがサスペンド状態になる。
症状:
1.ログに「LDB Allocation Failed」と表示されるエラーメッセージ
2015 Feb 3 00:01:27.260 N7k1 %ETHPORT-5-IF_SEQ_ERROR: Error ("LDB Allocation Failed") communicating with MTS_SAP_ELTM for opcode MTS_OPC_ETHPM_PORT_LOGICAL_BRINGUP (RID_PORT: port-channel1001)
2015 Feb 3 00:01:27.261 N7k1 %ETHPORT-3-IF_ERROR_VLANS_SUSPENDED: VLANs 268,1261-1262,1268 on Interface port-channel1001 are being suspended. (Reason: LDB Allocation Failed)
[an error occurred while processing this directive]
2. FEXに接続された複数のホストへの接続が失われた
3. show interface status err-vlansの出力には、LDBの割り当て失敗によるVLANの中断が示されます
N7kA# show interface status err-vlans
--------------------------------------------------------------------------------
Port Name Err-Vlans Status
--------------------------------------------------------------------------------
Po1001 ***dcn2pclx01a** 268,1261-1262,1268 LDB Allocation
*LOG Failed
[an error occurred while processing this directive]
解決方法
これは、ラインカードに関連するハードウェアの制限です。この問題はソフトウェアアップグレードでは解決されません。
VLANをHIFからプルーニングするか、FEX HIFのVLAN範囲を減らして、LDBエントリの総数を減らすことを推奨します。
各インターフェイスの各VLANインスタンスはLDBエントリを消費します(たとえば、portchannel 1に100個のVLANが定義され、ポートチャネル内の4個の物理ポートがある場合、消費されるLDBエントリの総数は400、10)。