はじめに
このドキュメントでは、ACI PBRマルチポッド環境を使用して、リモートPOD上のIP SLAトラッキング対象デバイスを特定し、トラブルシューティングする手順について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- マルチポッドソリューション
- PBRを使用したサービスグラフ
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- Cisco ACIバージョン4.2(7l)
- CiscoリーフスイッチN9K-C93180YC-EX
- CiscoスパインスイッチN9K-C9336PQ
- Nexus 7kバージョン8.2(2)
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
Network Topology
トポロジ
背景説明
Cisco ACIは、サービスグラフを使用して、セキュリティゾーン間のトラフィックをファイアウォールまたはロードバランサにリダイレクトできます。ファイアウォールまたはロードバランサがサーバのデフォルトゲートウェイである必要はありません。
PBRセットアップのIP SLA機能により、ACIファブリックは環境内のサービスノード(L4-L7デバイス)を監視でき、到達不能な場合は、ファブリックは送信元と宛先の間のトラフィックをダウンしているサービスノードにリダイレクトしません。
注:ACI IPSLAはファブリックシステムGIPO(マルチキャストアドレス239.255.255.240/28)に依存してプローブを送信し、トラッキングステータスを配信します。
シナリオ
この例では、POD-1の送信元エンドポイント192.168.150.1からPOD-2の宛先サーバ192.168.151.1へのEast-West接続を完了できません。トラフィックは、POD-1のサービスリーフ103からPBRノード172.16.1.1にリダイレクトされます。PBRはIP SLAモニタリングとリダイレクトヘルスグループポリシーを使用しています。
トラブルシューティングの手順
ステップ 1:IP SLAステータスの特定
- APIC UIで、Tenants > Your_Tenant > Faultsの順に移動します。
- 障害F2911、F2833、F2992を探します。
IP SLA障害
ステップ 2:ダウン状態のヘルスグループを持つノードIDの識別
- APIC CLIで、障害F2911、F2833、F2992のいずれかを使用してmoqueryコマンドを実行します。
- POD-2のリーフ202に対してヘルスグループlb1::lb-healthGrpがダウンしていることがわかります。
MXS2-AP002# moquery -c faultInst -f 'fault.Inst.code == "F2911"'
# fault.Inst
code : F2911
ack : no
alert : no
annotation :
cause : svcredir-healthgrp-down
changeSet : operSt (New: disabled), operStQual (New: healthgrp-service-down)
childAction :
created : 2024-01-31T19:07:31.505-06:00
delegated : yes
descr : PBR service health grp lb1::lb-healthGrp on nodeid 202 fabric hostname MXS2-LF202 is in failed state, reason Health grp service is down.
dn : topology/pod-2/node-202/sys/svcredir/inst/healthgrp-lb1::lb-healthGrp/fault-F2911 <<<
domain : infra
extMngdBy : undefined
highestSeverity : major
ステップ 3:PBRデバイスがエンドポイントとして学習され、サービスリーフから到達可能であることを検証します。
MXS2-LF103# show system internal epm endpoint ip 172.16.1.1
MAC : 40ce.2490.5743 ::: Num IPs : 1
IP# 0 : 172.16.1.1 ::: IP# 0 flags : ::: l3-sw-hit: No
Vlan id : 22 ::: Vlan vnid : 13192 ::: VRF name : lb1:vrf1
BD vnid : 15958043 ::: VRF vnid : 2162693
Phy If : 0x1a00b000 ::: Tunnel If : 0
Interface : Ethernet1/12
Flags : 0x80004c04 ::: sclass : 16391 ::: Ref count : 5
EP Create Timestamp : 02/01/2024 00:36:23.229262
EP Update Timestamp : 02/02/2024 01:43:38.767306
EP Flags : local|IP|MAC|sclass|timer|
MXS2-LF103# iping 172.16.1.1 -V lb1:vrf1
PING 172.16.1.1 (172.16.1.1) from 172.16.1.254: 56 data bytes
64 bytes from 172.16.1.1: icmp_seq=0 ttl=255 time=1.046 ms
64 bytes from 172.16.1.1: icmp_seq=1 ttl=255 time=1.074 ms
64 bytes from 172.16.1.1: icmp_seq=2 ttl=255 time=1.024 ms
64 bytes from 172.16.1.1: icmp_seq=3 ttl=255 time=0.842 ms
64 bytes from 172.16.1.1: icmp_seq=4 ttl=255 time=1.189 ms
--- 172.16.1.1 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0.842/1.034/1.189 ms
ステップ 4:ローカルPODとリモートPODでPBRのヘルスグループを確認します
注:ローカルPODは、PBRデバイスを設定する対象であるとします。
リーフ103は、POD-1のサービスリーフです。したがって、POD-1をローカルPODと見なし、POD-2をリモートPODと見なします。
ヘルスグループは、送信元と宛先のEPGコントラクトがその展開を要求するリーフスイッチでのみプログラムされます。
1. 送信元EPGはリーフノード102 POD-1にあります。PBRデバイスがサービスリーフ103 POD-1からUPとして追跡されていることがわかります。
MXS2-LF102# show service redir info health-group lb1::lb-healthGrp
=======================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency
=======================================================================================================================================
HG-Name HG-OperSt HG-Dest HG-Dest-OperSt
======= ========= ======= ==============
lb1::lb-healthGrp enabled dest-[172.16.1.1]-[vxlan-2162693]] up
2. 宛先EPGはリーフノード202 POD-2にあります。PBRデバイスがサービスリーフ103 POD-1からダウンとして追跡されていることがわかります。
MXS2-LF202# show service redir info health-group lb1::lb-healthGrp
=======================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency
=======================================================================================================================================
HG-Name HG-OperSt HG-Dest HG-Dest-OperSt
======= ========= ======= ==============
lb1::lb-healthGrp disabled dest-[172.16.1.1]-[vxlan-2162693]] down <<<<< Health Group is down.
ステップ 5:ELAMツールを使用したIP SLAプローブのキャプチャ
注:組み込みのキャプチャツールであるEmbedded Logic Analyzer Module(ELAM)を使用して、着信パケットをキャプチャできます。ELAM構文は、ハードウェアのタイプによって異なります。もう1つのアプローチは、ELAM Assistantアプリケーションを使用する方法です。
IP SLAプローブをキャプチャするには、ELAM構文でこれらの値を使用して、パケットが到達またはドロップされる場所を理解する必要があります。
ELAM内部L2ヘッダー
送信元MAC = 00-00-00-00-00-01
宛先MAC = 01-00-00-00-00-00
注:送信元MACと宛先MAC(前の図を参照)は、IP SLAパケットの内側のヘッダーの固定値です。
ELAM外部L3ヘッダー
送信元IP =サービスリーフからのTEP(ラボ内のリーフ103 TEP = 172.30.200.64)
宛先IP = 239.255.255.240(ファブリックシステムのGIPOは常に同じである必要があります)
trigger reset
trigger init in-select 14 out-select 0
set inner l2 dst_mac 01-00-00-00-00-00 src_mac 00-00-00-00-00-01
set outer ipv4 src_ip 172.30.200.64 dst_ip 239.255.255.240
start
stat
ereport
...
------------------------------------------------------------------------------------------------------------------------------------------------------
Inner L2 Header
------------------------------------------------------------------------------------------------------------------------------------------------------
Inner Destination MAC : 0100.0000.0000
Source MAC : 0000.0000.0001
802.1Q tag is valid : no
CoS : 0
Access Encap VLAN : 0
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer L3 Header
------------------------------------------------------------------------------------------------------------------------------------------------------
L3 Type : IPv4
DSCP : 0
Don't Fragment Bit : 0x0
TTL : 27
IP Protocol Number : UDP
Destination IP : 239.255.255.240
Source IP : 172.30.200.64
手順 6:ローカルスパインとリモートスパインでファブリックシステムGIPO( 239.255.255.240 )がプログラムされていることを確認します。
注:各GIPOでは、マルチキャストフレームを転送し、IPNにIGMP加入を送信する権限を持つデバイスとして、各PODから1つのスパインノードだけが選択されます。
1. スパイン1001 POD-1は、マルチキャストフレームを転送し、IPNにIGMP加入を送信する権威スイッチです。
インターフェイスEth1/3はN7K IPNに面しています。
MXS2-SP1001# show isis internal mcast routes gipo | more
IS-IS process: isis_infra
VRF : default
GIPo Routes
====================================
System GIPo - Configured: 0.0.0.0
Operational: 239.255.255.240
====================================
<OUTPUT CUT> ...
GIPo: 239.255.255.240 [LOCAL]
OIF List:
Ethernet1/35.36
Ethernet1/3.3(External) <<< Interface must point out to IPN on elected Spine
Ethernet1/16.40
Ethernet1/17.45
Ethernet1/2.37
Ethernet1/36.42
Ethernet1/1.43
MXS2-SP1001# show ip igmp gipo joins | grep 239.255.255.240
239.255.255.240 0.0.0.0 Join Eth1/3.3 43 Enabled
2. スパイン2001 POD-2は、マルチキャストフレームを転送し、IPNにIGMP加入を送信する権威スイッチです。
インターフェイスEth1/36はN7K IPNに面しています。
MXS2-SP2001# show isis internal mcast routes gipo | more
IS-IS process: isis_infra
VRF : default
GIPo Routes
====================================
System GIPo - Configured: 0.0.0.0
Operational: 239.255.255.240
====================================
<OUTPUT CUT> ...
GIPo: 239.255.255.240 [LOCAL]
OIF List:
Ethernet1/2.40
Ethernet1/1.44
Ethernet1/36.36(External) <<< Interface must point out to IPN on elected Spine
MXS2-SP2001# show ip igmp gipo joins | grep 239.255.255.240
239.255.255.240 0.0.0.0 Join Eth1/36.36 76 Enabled
3. outgoing-interface-list gipoが両方のスパインのVSHから空でないことを確認します。
MXS2-SP1001# vsh
MXS2-SP1001# show forwarding distribution multicast outgoing-interface-list gipo | more
....
Outgoing Interface List Index: 1
Reference Count: 1
Number of Outgoing Interfaces: 5
Ethernet1/35.36
Ethernet1/3.3
Ethernet1/2.37
Ethernet1/36.42
Ethernet1/1.43
External GIPO OIFList
Ext OIFL: 8001
Ref Count: 393
No OIFs: 1
Ethernet1/3.3
手順 7:IPNでGIPO( 239.255.255.240 )が設定されていることを確認します。
1. IPN設定でGIPO 239.255.255.240が欠落している。
N7K-ACI_ADMIN-VDC-ACI-IPN-MPOD# show run pim
...
ip pim rp-address 192.168.100.2 group-list 225.0.0.0/15 bidir
ip pim ssm range 232.0.0.0/8
N7K-ACI_ADMIN-VDC-ACI-IPN-MPOD# show ip mroute 239.255.255.240
IP Multicast Routing Table for VRF "default"
(*, 239.255.255.240/32), uptime: 1d01h, igmp ip pim
Incoming interface: Null, RPF nbr: 0.0.0.0 <<< Incoming interface and RPF are MISSING
Outgoing interface list: (count: 2)
Ethernet3/3.4, uptime: 1d01h, igmp
Ethernet3/1.4, uptime: 1d01h, igmp
2. GIPO 239.255.255.240がIPNで設定されました。
N7K-ACI_ADMIN-VDC-ACI-IPN-MPOD# show run pim
...
ip pim rp-address 192.168.100.2 group-list 225.0.0.0/15 bidir
ip pim rp-address 192.168.100.2 group-list 239.255.255.240/28 bidir <<< GIPO is configured
ip pim ssm range 232.0.0.0/8
N7K-ACI_ADMIN-VDC-ACI-IPN-MPOD# show ip mroute 225.0.42.16
IP Multicast Routing Table for VRF "default"
(*, 225.0.42.16/32), bidir, uptime: 1w6d, ip pim igmp
Incoming interface: loopback1, RPF nbr: 192.168.100.2
Outgoing interface list: (count: 2)
Ethernet3/1.4, uptime: 1d02h, igmp
loopback1, uptime: 1d03h, pim, (RPF)
ステップ 8:リモートPODでIP SLAトラッキングが有効になっていることを確認します。
MXS2-LF202# show service redir info health-group lb1::lb-healthGrp
=======================================================================================================================================
LEGEND
TL: Threshold(Low) | TH: Threshold(High) | HP: HashProfile | HG: HealthGrp | BAC: Backup-Dest | TRA: Tracking | RES: Resiliency
=======================================================================================================================================
HG-Name HG-OperSt HG-Dest HG-Dest-OperSt
======= ========= ======= ==============
lb1::lb-healthGrp enabled dest-[172.16.1.1]-[vxlan-2162693]] up
関連情報
Cisco Bug ID |
バグタイトル |
修正バージョン |
Cisco Bug ID CSCwi75331 |
|
修正済みバージョンはありません。回避策を使用します。 |