目錄

簡介

背景資訊

Pod策略概述

Pod策略

日期和時間策略

故障排除工作流

BGP路由反射器策略

故障排除工作流

SNMP

故障排除工作流

簡介

本文檔介紹瞭解ACI Pod策略並對其進行故障排除的步驟。

背景資訊

本文中的資料摘自 思科以應用為中心的基礎設施第二版故障排除 書，尤其是管理和核心服務 — POD策略 — BGP RR/日期和時間/SNMP 章節。

Pod策略概述

使用Pod策略組在系統上應用BGP RR、日期和時間以及SNMP等管理服務。Pod策略組管理一組與ACI交換矩陣的基本功能相關的Pod策略。這些Pod策略與以下元件相關，其中很多元件預設在ACI交換矩陣中調配。

Pod策略

Pod策略

需要手動配置

日期和時間

是

BGP路由反射器

是

SNMP（伺服器網路管理通訊協定）

是

ISIS

否

COOP

否

管理訪問

否

MAC安全

是

即使在單個ACI交換矩陣中，也需要配置Pod策略組和Pod配置檔案。這並非特定於多Pod甚至多站點部署。該要求適用於所有ACI部署型別。

本章重點介紹這些基本的Pod策略以及如何驗證它們是否正確應用。

日期和時間策略

時間同步在ACI交換矩陣中扮演著重要角色。從驗證證書到保持APIC和交換機中的日誌時間戳一致，最好的做法是使用NTP將ACI交換矩陣中的節點同步到一個或多個可靠的時間源。

為了正確地將節點同步到NTP伺服器提供程式，需要依賴關係為節點分配管理地址。這可以在管理租戶下使用靜態節點管理地址或管理節點連線組完成。

故障排除工作流

1.驗證是否已將節點管理地址分配給所有節點

管理租戶 — 節點管理地址

2.驗證NTP伺服器是否已配置為NTP提供程式

如果有多個NTP提供程式，則使用「首選」覈取方塊將其中至少一個提供程式標籤為首選時間源，如下圖所示。

日期和時間Pod策略下的NTP提供商/伺服器

3.在「系統設定」下驗證日期和時間格式

下圖顯示了一個示例，其中日期和時間格式已設定為UTC。

「系統設定」下的「日期和時間」設定

4.驗證所有節點的NTP提供程式的運行同步狀態

如下圖所示，「同步狀態」列應顯示「已同步到遠端NTP伺服器」。 請注意，「同步狀態」可能需要幾分鐘才能正確收斂到.Synced to Remote NTP Server。狀態.

NTP提供程式/伺服器同步狀態

或者，也可以在APIC和交換機上使用CLI方法驗證與NTP伺服器的正確時間同步。

APIC - NX-OS CLI

下面的「refId」列根據層級顯示下次的NTP伺服器源。

apic1# show ntpq

nodeid     remote                          refid                       st        t   when      poll      reach     auth  delay     offset    jitter

------  -  ------------------------------  --------------------------  --------  --  --------  --------  --------  ----  --------  --------  --------

1       *  10.48.37.151                    192.168.1.115               2         u   25        64        377       none  0.214     -0.118    0.025

2       *  10.48.37.151                    192.168.1.115               2         u   62        64        377       none  0.207     -0.085    0.043

3       *  10.48.37.151                    192.168.1.115               2         u   43        64        377       none  0.109     -0.072    0.030

apic1# show clock

Time : 17:38:05.814 UTC Wed Oct 02 2019

APIC - Bash

apic1# bash

admin@apic1:~> date

Wed Oct  2 17:38:45 UTC 2019

交換器

使用「show ntp peers」命令確保NTP提供程式配置已正確推送到交換機。

leaf1# show ntp peers

-----------------------------------------------------------------------------

Peer IP Address                         Serv/Peer Prefer KeyId   Vrf

-----------------------------------------------------------------------------

10.48.37.151                            Server    yes    None    management

leaf1# show ntp peer-status

Total peers : 1

* - selected for sync, + - peer mode(active),

- - peer mode(passive), = - polled in client mode

remote                               local           st poll reach delay vrf

--------------------------------------------------------------------------------

*10.48.37.151                            0.0.0.0         2  64   377   0.000  management

此處的「*」字元至關重要，因為它控制NTP伺服器是否實際用於同步。

在下面的命令中驗證傳送/接收的資料包數量，以確保ACI節點能夠連線到NTP伺服器。

leaf1# show ntp statistics peer ipaddr 10.48.37.151

...

packets sent:         256

packets received:     256

...

BGP路由反射器策略

ACI交換矩陣在枝葉和主幹節點之間使用多協定BGP(MP-BGP)，更具體地說，使用iBGP VPNv4，交換從外部路由器（連線到L3Outs）接收的租戶路由。 為了避免全網狀iBGP對等拓撲，主幹節點將從枝葉節點接收的VPNv4字首反映到交換矩陣中的其他枝葉節點。

如果沒有BGP路由反射器(BGP RR)策略，則不會在交換機上建立BGP例項，並且不會建立BGP VPNv4會話。在多Pod部署中，每個Pod至少需要一個配置為BGP RR的主幹，並且實際上需要多個主幹以實現冗餘。

因此，BGP RR策略是每個ACI交換矩陣中一個必不可少的配置。BGP RR策略還包含ACI交換矩陣用於每台交換機上BGP進程的ASN。

故障排除工作流

1.驗證BGP RR策略是否配置了ASN和至少一個骨幹

以下示例涉及單個Pod部署。

系統設定下的BGP路由反射器策略

2.驗證BGP RR策略是否在Pod策略組下應用

在Pod策略組下應用預設BGP RR策略。即使條目為空，預設BGP RR策略也將作為Pod策略組的一部分應用。

在Pod策略組下應用的BGP路由反射器策略

3.驗證Pod策略組是否應用在Pod配置檔案下

在Pod配置檔案下應用的Pod策略組

4.登入到主幹，並驗證BGP進程是否正在運行已建立的VPN4對等會話

spine1# show bgp process vrf overlay-1

BGP Process Information

BGP Process ID                 : 26660

BGP Protocol Started, reason:  : configuration

BGP Protocol Tag               : 65001

BGP Protocol State             : Running

BGP Memory State               : OK

BGP asformat                   : asplain

Fabric SOO                     : SOO:65001:33554415

Multisite SOO                  : SOO:65001:16777199

Pod SOO                        : SOO:1:1

...

Information for address family VPNv4 Unicast in VRF overlay-1

Table Id                   : 4

Table state                : UP

Table refcount             : 9

Peers      Active-peers    Routes     Paths      Networks   Aggregates

7          6               0          0          0          0

Redistribution

None

Wait for IGP convergence is not configured

Additional Paths Selection route-map interleak_rtmap_golf_rtmap_path_advertise_all

Is a Route-reflector

Nexthop trigger-delay

critical 500 ms

non-critical 5000 ms

Information for address family VPNv6 Unicast in VRF overlay-1

Table Id                   : 80000004

Table state                : UP

Table refcount             : 9

Peers      Active-peers    Routes     Paths      Networks   Aggregates

7          6               0          0          0          0

Redistribution

None

Wait for IGP convergence is not configured

Additional Paths Selection route-map interleak_rtmap_golf_rtmap_path_advertise_all

Is a Route-reflector

Nexthop trigger-delay

critical 500 ms

non-critical 5000 ms

...

Wait for IGP convergence is not configured

Is a Route-reflector

Nexthop trigger-delay

critical 500 ms

non-critical 5000 ms

如上所述，枝葉和主幹節點之間的MP-BGP僅承載VPNv4和VPNv6地址系列。IPv4地址系列僅用於枝葉節點上的MP-BGP。

使用下列命令還可以輕鬆觀察主幹和枝葉節點之間的BGP VPNv4和VPNv6會話。

spine1# show bgp vpnv4 unicast summary vrf overlay-1

BGP summary information for VRF overlay-1, address family VPNv4 Unicast

BGP router identifier 10.0.136.65, local AS number 65001

BGP table version is 15, VPNv4 Unicast config peers 7, capable peers 6

0 network entries and 0 paths using 0 bytes of memory

BGP attribute entries [0/0], BGP AS path entries [0/0]

BGP community entries [0/0], BGP clusterlist entries [0/0]

Neighbor        V      AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.0.136.64     4   65001     162     156       15    0    0 02:26:00 0

10.0.136.67     4   65001     154     154       15    0    0 02:26:01 0

10.0.136.68     4   65001     152     154       15    0    0 02:26:00 0

10.0.136.69     4   65001     154     154       15    0    0 02:26:01 0

10.0.136.70     4   65001     154     154       15    0    0 02:26:00 0

10.0.136.71     4   65001     154     154       15    0    0 02:26:01 0

spine1# show bgp vpnv6 unicast summary vrf overlay-1

BGP summary information for VRF overlay-1, address family VPNv6 Unicast

BGP router identifier 10.0.136.65, local AS number 65001

BGP table version is 15, VPNv6 Unicast config peers 7, capable peers 6

0 network entries and 0 paths using 0 bytes of memory

BGP attribute entries [0/0], BGP AS path entries [0/0]

BGP community entries [0/0], BGP clusterlist entries [0/0]

Neighbor        V      AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.0.136.64     4   65001     162     156       15    0    0 02:26:11 0

10.0.136.67     4   65001     155     155       15    0    0 02:26:12 0

10.0.136.68     4   65001     153     155       15    0    0 02:26:11 0

10.0.136.69     4   65001     155     155       15    0    0 02:26:12 0

10.0.136.70     4   65001     155     155       15    0    0 02:26:11 0

10.0.136.71     4   65001     155     155       15    0    0 02:26:12 0

注意上述輸出中的「Up/Down」列。它應列出一個持續時間，該持續時間表示BGP會話已建立的時間。另請注意，在示例中，「PfxRcd」列顯示每個BGP VPNv4/VPNv6對等點的0，因為此ACI交換矩陣尚未配置L3Outs，因此枝葉和主幹節點之間沒有交換外部路由/字首。

5.登入到枝葉，並驗證BGP進程是否正在運行已建立的VPN4對等會話

leaf1# show bgp process vrf overlay-1

BGP Process Information

BGP Process ID                 : 43242

BGP Protocol Started, reason:  : configuration

BGP Protocol Tag               : 65001

BGP Protocol State             : Running

...

leaf1#  show bgp vpnv4 unicast summary vrf overlay-1

BGP summary information for VRF overlay-1, address family VPNv4 Unicast

BGP router identifier 10.0.136.64, local AS number 65001

BGP table version is 7, VPNv4 Unicast config peers 2, capable peers 2

0 network entries and 0 paths using 0 bytes of memory

BGP attribute entries [0/0], BGP AS path entries [0/0]

BGP community entries [0/0], BGP clusterlist entries [0/0]

Neighbor        V      AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.0.136.65     4   65001     165     171        7    0    0 02:35:52 0

10.0.136.66     4   65001     167     171        7    0    0 02:35:53 0

上面的命令輸出顯示的BGP VPNv4會話數量等於ACI交換矩陣中存在的脊柱節點數量。這與主幹節點不同，因為它們會建立到每個枝葉和其他路由反射器主幹節點的會話。

SNMP

必須從頭開始闡明本節介紹的SNMP功能的特定子集。ACI交換矩陣中的SNMP功能與SNMP Walk功能或SNMP Trap功能相關。這裡的重要區別是SNMP Walk管理UDP埠161上的輸入 SNMP流量，而SNMP Trap管理傳出SNMP流量，SNMP Trap伺服器在UDP埠162上偵聽。

ACI節點上的入口管理流量需要節點管理EPG（帶內或帶外）提供必要的合約，以允許流量流動。因此，這也適用於輸入SNMP流量流。

本節將介紹進入ACI節點（APIC和交換機）的輸入SNMP流量（SNMP漫遊）。 它將不包括出口SNMP流量流（SNMP陷阱），因為這會將本部分的範圍擴展到監控策略和監控策略依賴關係（例如，監控策略範圍、監控包等）。

本部分也不涵蓋ACI支援哪些SNMP MIB。該資訊可通過思科CCO網站中的以下連結獲得：https://www.cisco.com/c/dam/en/us/td/docs/switches/datacenter/aci/apic/sw/1-x/mib/list/mib-support.html

故障排除工作流

1. SNMP Pod策略 — 驗證是否配置了客戶端組策略

確保至少有一個SNMP客戶端配置為客戶端組策略的一部分，如下面的螢幕截圖所示。

Pod策略 — SNMP策略 — 客戶端組策略

Pod策略 — SNMP策略 — 客戶端組策略

2. SNMP Pod策略 — 驗證是否至少配置了一個社群策略

Pod策略 — SNMP策略 — 社群策略

3. SNMP Pod策略 — 驗證管理狀態是否設定為「已啟用」

4.管理租戶 — 驗證OOB EPG是否提供允許UDP埠161的OOB合約

OOB EPG管理到APIC和交換機OOB管理埠的連線。因此，它會影響所有進入OOB埠的流量。

確保此處提供的合約包括所有必要的管理服務，而不僅僅是SNMP。例如：它還需要至少包括SSH（TCP埠22）。 否則，無法使用SSH登入交換機。請注意，這不適用於APIC，因為它們具有允許SSH、HTTP和HTTPS的機制來防止使用者完全鎖定。

5.管理租戶 — 驗證OOB合約是否存在，並且其篩選器允許UDP埠161

管理租戶 — OOB EPG — 提供的OOB合約

在下圖中，並非只允許UDP埠161是強制性的。具有允許以任何方式使用UDP埠161的過濾器的合約是正確的。這甚至可以是具有公共租戶預設篩選器的合約主題。在我們的示例中，為清楚起見，僅針對UDP埠161配置了特定過濾器。

6.管理租戶 — 驗證外部管理網路例項配置檔案是否存在使用OOB合約的有效子網

外部管理網路例項配置檔案(ExtMgmtNetInstP)表示需要使用通過OOB EPG可訪問的服務的「子網」定義的外部源。因此，ExtMgmtNetInstP使用由OOB EPG提供的同一OOB合約。這是允許UDP埠161的合約。此外，ExtMgmtNetInstP還指定了可能使用OOB EPG提供的服務的允許的子網範圍。

管理租戶 — ExtMgmtNetInstP，使用已使用的OOB合約和子網

如上圖所示，需要基於CIDR的子網表示法。圖中顯示了特定的/24子網。要求子網條目包括SNMP Pod策略中配置的SNMP客戶端條目（請參閱圖Pod策略 — SNMP策略 — 客戶端組策略）。

如前所述，請小心包括所有所需的外部子網，以防止其他必要的管理服務被鎖定。

7.登入到交換機並執行tcpdump以觀察是否觀察到了SNMP Walk資料包 — UDP埠161

如果SNMP Walk資料包通過OOB埠進入交換機，這意味著所有必要的SNMP和OOB策略/引數都已正確配置。因此，這是一種正確的驗證方法。

枝葉節點上的Tcpdump利用其Linux shell和Linux netdevice。因此，必須按照以下示例在介面「eth0」上捕獲資料包。在本示例中，SNMP客戶端正在對OID .1.0.8802.1.1.2.1.1.1.0執行SNMP Get請求。

leaf1# ip addr show eth0

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000

link/ether f4:cf:e2:28:fc:ac brd ff:ff:ff:ff:ff:ff

inet 10.48.22.77/24 brd 10.48.22.255 scope global eth0

valid_lft forever preferred_lft forever

inet6 fe80::f6cf:e2ff:fe28:fcac/64 scope link

valid_lft forever preferred_lft forever

leaf1# tcpdump -i eth0 udp port 161

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes

22:18:10.204011 IP 10.155.0.153.63392 > 10.48.22.77.snmp:  C=my-snmp-community GetNextRequest(28)  .iso.0.8802.1.1.2.1.1.1.0

22:18:10.204558 IP 10.48.22.77.snmp > 10.155.0.153.63392:  C=my-snmp-community GetResponse(29)  .iso.0.8802.1.1.2.1.1.2.0=4