はじめに
このドキュメントでは、Nexus 9000 とユニファイド コンピューティング システム(UCS)サーバの間で Link Aggregation Control Protocol(LACP)ポート チャネルを形成する方法について説明します。
前提条件
要件
このドキュメントに関する固有の要件はありません。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- バージョン6.1(2)I(3)3aが稼働するNexus 9300
- Cisco Integrated Management Controller(CIMC)バージョン2.0(3f)が稼働するUCS C240 M3シリーズサーバ
- Cisco仮想インターフェイスカード(VIC)バージョン1225
- Red Hat Enterprise Linuxバージョン7.0
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
問題
Nexus 9000は、UCSサーバとの間でLACPポートチャネルを形成できません。 ポートチャネルにno lacp suspend-individualが設定されている場合は、I状態になります。設定されていない場合は、LACPデータユニット(LACPDU)がないため、ポートが中断されます。
Nexus 9000のLACPDUインターフェイスカウンタには、送信(Tx)カウンタは増加するが、受信(Rx)カウンタは増加しないことが示されています。
Nexus 9000でアクセスポートを設定し、LACP suspend-individualを無効にする方法を次に示します。
interface port-channel1019
switchport access vlan 4
no lacp suspend-individual
interface Ethernet1/19
description csm-b-ceph-001
switchport access vlan 4
spanning-tree port type edge
spanning-tree bpduguard enable
spanning-tree guard root
channel-group 1019 mode active
これはトランクエッジポートとしても設定できますが、動作は異なります。
Nexus9396X-2# show port-c sum
Flags: D - Down P - Up in port-channel (members)
I - Individual H - Hot-standby (LACP only)
s - Suspended r - Module-removed
S - Switched R - Routed
U - Up (port-channel)
M - Not in use. Min-links not met
--------------------------------------------------------------------------------
Group Port- Type Protocol Member Ports
Channel
--------------------------------------------------------------------------------
1019 Po1019(SD) Eth LACP Eth1/19(I) ----> Indicates No PDUs are being received
LACP suspend-individualが有効(デフォルトでは有効)な場合は、一時停止できます。ただし、その理由は、ピアからプロトコルデータユニット(PDU)を受信しない理由と同じである必要があります。
Nexus9396X-2# show lacp interface e1/19
Interface Ethernet1/19 is individual
Channel group is 1019 port channel is Po1019
PDUs sent: 63
PDUs rcvd: 0 ----> Indicates No PDUs are being received from UCS server.
Markers sent: 0
Markers rcvd: 0
Marker response sent: 0
Marker response rcvd: 0
Unknown packets rcvd: 0
Illegal packets rcvd: 0
Lag Id: [ [(0, 0-0-0-0-0-0, 0, 0, 0), (0, 0-0-0-0-0-0, 0, 0, 0)] ]
Operational as aggregated link since Thu Jan 1 00:00:00 1970
Local Port: Eth1/19 MAC Address= 7c-69-f6-10-59-d7
System Identifier=0x8000, Port Identifier=0x8000,0x113
Operational key=33787
LACP_Activity=active
LACP_Timeout=Long Timeout (30s)
Synchronization=IN_SYNC
Collecting=true
Distributing=true
Partner information refresh timeout=Long Timeout (90s)
Actor Admin State=125
Actor Oper State=125
Neighbor: 0x0
MAC Address= 0-0-0-0-0-0
System Identifier=0x0, Port Identifier=0x0,0x0
Operational key=0
LACP_Activity=unknown
LACP_Timeout=Long Timeout (30s)
Synchronization=NOT_IN_SYNC
Collecting=false
Distributing=false
Partner Admin State=0
Partner Oper State=0
Aggregate or Individual(True=1)= 1
また、EthanalyzerはピアデバイスからのPDUをキャプチャしません。ただし、サーバから取得されたtcpdumpは、PDUの送受信を行っていることを示します。
解決方法
ラボのセットアップでは、Nexus 9000でLACPDUがキャプチャされたとき、次に示すようにdot1qヘッダーを含むLACPDUを送信することがわかりました。
ただし、VLAN IDは0に設定されます。これで、仮想ネットワークインターフェイスカード(vNIC)の設定を確認すると、デフォルトでVLANがNoneに設定され、VLANモードがaccessに設定されていることがわかります。このモードでも、dot1qヘッダーを含むLACPDUが送信されます。ただし、Nexus 9000はVLAN 0を識別しないため、このパケットはドロップされます。 この動作は、『UCS CシリーズラックサーバのVIC接続オプション』に記載されています。
これを機能させるには、VLANモードをTrunkとして設定し、デフォルトのVLANをそのポートで許可されるVLANとして設定する必要があります。 これを変更するには、サーバのCIMC IPアドレスにログインします。
- 左側のペインでServerタブをクリックし、次にInventoryをクリックします。
- 右側のペインでCisco VIC adaptersをクリックし、次にvNICsをクリックします。
- インターフェイスを選択し、Propertiesをクリックします。次の場所で変更できます。
- 変更が完了したら、Saveをクリックして変更を保存します。変更を有効にするには、サーバーをリセットする必要があります。リセット後、ポートチャネルは正しく形成されます。
Nexus 9000バージョン6.1(2)I(3)4および7.0(3)I1(1)以降の新しいリリースでは、dot1qヘッダーが無視され、パケットがスーパーバイザ(SUP)に到達します。この動作は、Cisco Bug ID CSCur69668に記載されています。
したがって、新しいリリースではこの問題は発生しません。