简介
本文档介绍如何将Catalyst 9800系列无线控制器(C9800 WLC)与Prime基础设施(3.x)集成。
先决条件
要求
Cisco 建议您了解以下主题:
- C9800 WLC
- Prime基础设施(PI)版本3.5
- 简单网络管理协议 (SNMP)
使用的组件
本文档中的信息基于以下软件和硬件版本:
- C9800 WLC
- 思科IOS XE Gibraltar 16.10.1至17.3
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
注意:Prime Infra 3.8仅支持17.x 9800 WLC。如果您尝试使用Prime Infra 3.8管理16.12 WLC,则客户端不会显示在Prime基础设施上。
配置
要使Prime基础设施能够配置、管理和监控Catalyst 9800系列无线局域网控制器,它需要能够通过CLI、SNMP和Netconf访问C9800。将C9800添加到Prime基础设施时,需要指定telnet/SSH凭证以及SNMP社区字符串、版本等。PI使用此信息验证可达性并清点C9800 WLC。它还使用SNMP推送配置模板,并支持接入点(AP)和客户端事件的陷阱。但是,为了让PI收集AP和客户端统计信息,需要使用Netconf。Netconf在C9800 WLC上默认为未启用,并且需要通过16.10.1版本上的CLI手动配置(16.11.1中提供GUI)。
使用的端口
C9800和Prime基础设施之间的通信使用不同的端口。
- Prime Infra中的所有可用配置和模板通过SNMP和CLI推送。这使用UDP端口161。
- C9800 WLC本身的运行数据通过SNMP获取。这使用UDP端口162。
- AP和客户端运行数据利用流遥测。
Prime基础设施到WLC:TCP端口830 - Prime Infra使用此功能将遥测配置推送到9800台设备(使用Netconf)。
WLC至Prime基础设施:TCP端口20828(适用于Cisco® IOS XE 16.10和16.11)或20830(适用于Cisco IOS XE 16.12、17.x和更高版本)。
注意:即使没有要报告的遥测数据,也会每5秒发送一次Keepalive数据包。
注意:如果Prime基础设施和C9800之间存在防火墙,请确保打开这些端口以建立通信。
Cat 9800 WLC上的SNMPv2配置
GUI:
步骤1:导航到 Administration > SNMP > Slide to Enable SNMP
。
第二步:点击Community Strings
并创建只读和读写社区名称。
CLI:
(config)#snmp-server community <snmpv2-community-name>
(optional)(config)# snmp-server location <site-location>
(optional)(config)# snmp-server contact <contact-number>
Cat 9800 WLC上的SNMPv3配置
GUI:
注意:从17.1 Cisco IOS XE开始,Web UI仅允许您创建只读v3用户。您需要运行CLI过程以创建读写v3用户。
CLI:
点击V3 users
并创建用户。选择authPriv
、SHA
和AES protocols
,然后选择长密码。MD5
和DES/3DES
是不安全的协议,虽然它们仍是9800中的一个选项,但决不能选择它们而且它们将不再接受完全测试。
注意:SNMPv3用户配置不会反映在运行配置中。仅可看到SNMPv3组配置。
CLI:
(config)#snmp-server view primeview iso included
(config)#snmp-server group <v3-group-name> v3 auth write primeview
(config)#snmp-server user <v3username> <v3-group-name> v3 auth {md5 | sha} <AUTHPASSWORD> priv {3des | aes | des} {optional for aes 128 | 192| 256} <PRIVACYPASSWORD>
9800#show snmp user
User name: Nico
Engine ID: 800000090300706D1535998C
storage-type: nonvolatile active
Authentication Protocol: SHA
Privacy Protocol: AES128
Group-name: SnmpAuthPrivGroup
Cat 9800 WLC上的Netconf配置
GUI(从16.11开始):
导航到Administration > HTTP/HTTPS/Netconf
。
CLI:
(config)#netconf-yang
注意:如果在C9800上启用aaa new-model,则还需要配置:
(config)#aaa authorization exec default <local or radius/tacacs group>
(config)#aaa authentication login default <local or radius/tacacs group>
C9800上的Netconf对aaa authentication login和aaa authorization exec都使用默认方法(并且不能更改此方法)。如果要为SSH连接定义不同的方法,可以在line vty
命令行下定义。Netconf继续使用默认方法。
注意:Prime基础设施在将9800控制器添加到其资产中时,会覆盖已配置的aaa authentication login default和aaa authorization exec default方法,并且仅在尚未在WLC上启用Netconf时将其指向本地身份验证。如果Prime基础设施能够使用Netconf登录,则不会更改配置。这意味着,如果您正在使用TACACS,则在将9800添加到Prime后您将无法访问CLI。您可以稍后恢复这些配置命令,并使其指向TACACS(如果这是您的首选项)。
注意:NETCONF使用的信任点当前仅支持RSA密钥。尚不支持EC(椭圆曲线)密钥,如果使用,它们会导致ncsshd进程崩溃。您可以验证执行“show logging process ncsshd internal start last 1 hours”命令的ncsshd进程使用的密钥 | 安全密钥名称”。已打开一个增强请求,用于在将来版本中添加对EC密钥的支持:Cisco Bug ID CSCwk02600
配置(Prime基础设施3.5及更高版本)
步骤1:捕获Catalyst 9800 WLC上配置的无线管理IP地址。
GUI:
导航到Configuration > Interface: Wireless
。
CLI:
# show wireless interface summary
第二步:捕获权限15用户凭证并启用密码。
GUI:
导航到Administration > User Administration
。
CLI:
# show run | inc username
# show run | inc enable
第三步:获取SNMPv2社区字符串和/或SNMPv3用户(如果适用)。
GUI:
对于SNMPv2,导航至Administration > SNMP > Community Strings
。
对于SNMPv3,导航至Administration > SNMP > V3 Users
。
CLI:
For SNMPv2 community strings
# show run | sec snmp
For SNMPv3 user
# show user
第四步:在Prime基础设施GUI中,导航至Configuration > Network: Network Devices
,点击+
旁边的下拉框并选择Add Device
。
第五步:在Add Device
弹出窗口中,输入用于与Prime基础设施建立通信的9800上的接口IP地址。
第六步:导航到SNMP
选项卡,并提供在C9800 WLC上配置的SNMPv2 Read-Only and Read-Write Community Strings
。
步骤 7.如果使用SNMPv3,请从下拉菜单中选择v3
并提供SNMPv3用户名。从Auth-Type
下拉列表匹配先前配置的身份验证类型(PAP),从Privacy Type
下拉列表选择在C9800 WLC上配置的加密方法(ENCRYPTION method)。
步骤 8导航到Add Device
的Telnet/SSH
选项卡,提供特权15用户名和密码以及启用密码。点击Verify Credentials
以确保CLI和SNMP凭证正常工作。然后点击Add
。
验证
验证遥测状态
步骤1:检验C9800上是否启用了Netconf。
#show run | inc netconf
netconf-yang
如果不存在,请输入“Cat 9800 WLC上的NETCONF配置”部分。
第二步:验证从C9800到Prime的遥测连接。
#show telemetry internal connection
Telemetry connection
Address Port Transport State Profile
------------------------------------------------------------------
x.x.x.x 20828 cntp-tcp Active
注意:x.x.x.x是Prime基础设施的IP地址,并且状态必须为Active。如果状态不是Active,请参阅故障排除部分。
在17.9中,必须使用稍有不同的命令:
9800-17-9-2#show telemetry connection all
Telemetry connections
Index Peer Address Port VRF Source Address State State Description
----- -------------------------- ----- --- -------------------------- ---------- --------------------
0 10.48.39.25 25103 0 10.48.39.228 Active Connection up
9800-17-9-2#
第三步:在Prime基础设施上,导航至Inventory > Network Devices > Device Type: Wireless Controller
。
第四步:要查看到Prime基础设施的遥测连接的详细信息,请运行以下命令:
#show telemetry internal protocol cntp-tcp manager x.x.x.x 20828
Telemetry protocol manager stats:
Con str : x.x.x.x:20828::
Sockfd : 79
Protocol : cntp-tcp
State : CNDP_STATE_CONNECTED
Table id : 0
Wait Mask :
Connection Retries : 0
Send Retries : 0
Pending events : 0
Source ip : <9800_IP_ADD>
Bytes Sent : 1540271694
Msgs Sent : 1296530
Msgs Received : 0
在17.9或更高版本中,您需要使用不同的命令,如下图所示。
#show telemetry connection all
Telemetry connections
Index Peer Address Port VRF Source Address State State Description
----- -------------------------- ----- --- -------------------------- ---------- --------------------
1 172.16.0.4 25103 0 172.16.2.44 Active Connection up
C9800-Classic#show telemetry internal connection <Index> detail
Telemetry protocol manager stats:
Con str : 172.16.0.4:25103:0:172.16.2.44
Sockfd : 116
Protocol : tls-native
State : CNDP_STATE_CONNECTED
Table id : 0
Profile : sdn-network-infra-iwan
Version : TLSv1.2
Wait Mask :
Connection Retries : 0
Send Retries : 0
Pending events : 0
Session requests : 1
Session replies : 1
Source ip : 172.16.2.44
Bytes Sent : 49098323
Msgs Sent : 49918
Msgs Received : 0
Creation time: : Mon Sep 30 16:18:19:535
Last connected time: : Mon Sep 30 16:18:19:587
Last disconnect time: :
Last error: :
Connection flaps: : 0
Last flap Reason: :
Keep Alive Timeouts: : 0
Last Transport Error : No Error
第五步:验证来自C9800的遥测订阅状态,以及它们显示为“有效”这一事实。
#show telemetry ietf subscription configured
Telemetry subscription brief
ID Type State Filter type
-----------------------------------------------------
68060586 Configured Valid transform-na
98468759 Configured Valid tdl-uri
520450489 Configured Valid transform-na
551293206 Configured Valid transform-na
657148953 Configured Valid transform-na
824003685 Configured Valid transform-na
996216912 Configured Valid transform-na
1072751042 Configured Valid tdl-uri
1183166899 Configured Valid transform-na
1516559804 Configured Valid transform-na
1944559252 Configured Valid transform-na
2006694178 Configured Valid transform-na
第6步:可以按订用ID查看订用统计信息,也可以使用以下信息查看所有订用:
#show telemetry internal subscription { all | id } stats
Telemetry subscription stats:
Subscription ID Connection Info Msgs Sent Msgs Drop Records Sent
------------------------------------------------------------------------------
865925973 x.x.x.x:20828:: 2 0 2
634673555 x.x.x.x:20828:: 0 0 0
538584704 x.x.x.x:20828:: 0 0 0
1649750869 x.x.x.x:20828:: 1 0 2
750608483 x.x.x.x:20828:: 10 0 10
129958638 x.x.x.x:20828:: 10 0 10
1050262948 x.x.x.x:20828:: 1369 0 1369
209286788 x.x.x.x:20828:: 15 0 15
1040991478 x.x.x.x:20828:: 0 0 0
1775678906 x.x.x.x:20828:: 2888 0 2889
1613608097 x.x.x.x:20828:: 6 0 6
1202853917 x.x.x.x:20828:: 99 0 99
1331436193 x.x.x.x:20828:: 743 0 743
1988797793 x.x.x.x:20828:: 0 0 0
1885346452 x.x.x.x:20828:: 0 0 0
163905892 x.x.x.x:20828:: 1668 0 1668
1252125139 x.x.x.x:20828:: 13764 0 13764
2078345366 x.x.x.x:20828:: 13764 0 13764
239168021 x.x.x.x:20828:: 1668 0 1668
373185515 x.x.x.x:20828:: 9012 0 9012
635732050 x.x.x.x:20828:: 7284 0 7284
1275999538 x.x.x.x:20828:: 1236 0 1236
825464779 x.x.x.x:20828:: 1225711 0 1225780
169050560 x.x.x.x:20828:: 0 0 0
229901535 x.x.x.x:20828:: 372 0 372
592451065 x.x.x.x:20828:: 8 0 8
2130768585 x.x.x.x:20828:: 0 0 0
故障排除
对Prime基础设施进行故障排除
- 检查Prime基础设施的第一件事是IP地址和接口。Prime基础设施不支持双宿,也不在其第二个端口上侦听遥测。
- 您在Prime基础设施中添加的WLC的IP地址必须是用作“无线管理接口”的IP地址。Prime基础设施IP地址必须可从控制器端的无线管理接口访问。
- 如果使用服务端口(设备上的gig0/0)进行发现,则WLC和AP会显示在资产中的“托管”状态,但WLC和相关无线接入点的遥测不起作用。
- 如果您在Prime基础设施上看到遥测状态为“成功”,但AP计数为0,则可能是Prime基础设施可通过端口830到达WLC,但控制器无法通过端口20830返回Prime基础设施。
对于任何SNMP问题或设备配置问题,请从Prime基础设施收集以下日志:
cd /opt/CSCOlumos/logs/
[root@prime-tdl logs]# ncs-0-0.log
Tdl.logs
对于遥测/珊瑚问题,第一件事是检查珊瑚状态:
shell
cd /opt/CSCOlumos/coralinstances/coral2/coral/bin
./coral version 1
./coral status 1
./coral stats 1
如果一切正常,请从prime coral logs文件夹收集这些日志。
注意:根据Prime基础设施版本及其支持的Cisco IOS XE版本数量,Prime基础设施上可以有几个Coral实例。有关详情,请查看版本说明,例如:https://www.cisco.com/c/en/us/td/docs/net_mgmt/prime/infrastructure/3-7/release/notes/bk_Cisco_Prime_Infrastructure_3_7_0_Release_Notes.html
步骤1:
cd /opt/CSCOlumos/coral/bin/
[root@prime-tdl bin]# ./coral attach 1
Attached to Coral instance 1 [pid=8511]
Coral-1#cd /tmp/rp/trace/
Coral-1#ls
Collect the “Prime_TDL_collector_R0-”* logs
Coral-1# cd /tmp/rp/trace/
Coral-1# btdecode P* > coralbtlog.txt
Coral-1# cat coralbtlog.txt
这些日志也可在以下目录中找到:
* 解码的跟踪文件在路径中可用/opt/CSCOlumos/coralinstances/coral2/coral/run/1/storage/harddisk
* ade# cd /opt/CSCOlumos/coralinstances/coral2/coral/run/1/storage/harddisk
* ade# cp coraltrace.txt /localdisk/defaultRepo
第二步:要在调试模式下启用Coral,需要在debug.conf
文件中设置调试级别。
从容器中执行以下任一操作:
echo "rp:0:0:tdlcold:-e BINOS_BTRACE_LEVEL=DEBUG;" > /harddisk/debug.conf
或者,在Prime 3.8上,可以使用以下功能在容器外重新启动Coral服务:
"sudo /opt/CSCOlumos/coralinstances/coral2/coral/bin/coral restart 1"
如果重新启动不起作用,可以使用这些命令来擦除珊瑚实例并顺利启动它:
sudo /opt/CSCOlumos/coralinstances/coral2/coral/bin/coral stop 1
sudo /opt/CSCOlumos/coralinstances/coral2/coral/bin/coral purge 1
sudo /opt/CSCOlumos/coralinstances/coral2/coral/bin/coral start 1
重新启动珊瑚,这是强制性的。如果键入“Exit”,则可以离开珊瑚实例,然后:
./coral/bin/coral restart 1
注意:在Prime 3.8上,可使用“sudo /opt/CSCOlumos/coralinstances/coral2/coral/bin/coral restart 1”在容器外部重新启动珊瑚服务
如果您需要解码Coral日志文件,可以使用以下内容在Coral容器中解码:
btdecode Prime_TDL_collector_*.bin
注意:启用Coral的调试级别后,必须重新启动Coral。
Catalyst 9800 WLC故障排除
要监控Prime Infra推送到C9800 WLC的配置,您可以运行EEM小程序。
#config terminal
#event manager applet catchall
#event cli pattern ".*" sync no skip no
#action 1 syslog msg "$_cli_msg"
从WLC配置中删除所有遥测订阅
有时您可能要取消配置WLC上配置的所有遥测订阅。可以使用以下命令完成此操作:
WLC#term shell
WLC#function removeall() {
for id in `sh run | grep telemetry | cut -f4 -d' '`
do
conf t
no telemetry ietf subscription $id
exit
done
}
WLC#removeall
要启用跟踪,请执行以下操作:
# debug netconf-yang level debug
要验证:
WLC#show platform software trace level mdt-pubd chassis active R0 | inc Debug
pubd Debug
WLC#show platform software trace level ndbman chassis active R0 | inc Debug
ndbmand Debug
要查看跟踪输出,请执行以下操作:
show platform software trace message mdt-pubd chassis active R0
show platform software trace message ndbman chassis active R0
检查AP信息的订用ID
点击DB Query
。导航tohttps://<Prime_IP>/webacs/ncsDiag.do。
*
从ewlcSubscription
中选择OWNINGENTITYID(如“%Controller_IP”和CLASSNAME='UnifiedAp')。
从WLC:
验证订阅ID正在发送信息,并且cntp计数器没有丢弃。
show tel int sub all stats
show telemetry internal protocol cntp-tcp connector counters drop
show telemetry internal protocol cntp-tcp connector counters queue
show telemetry internal protocol cntp-tcp connector counters rate
show telemetry internal protocol cntp-tcp connector counters sub-rate
show telemetry internal protocol cntp-tcp connector counters reset
注意:9800 WLC支持17.6之前的版本使用100个遥测订阅,17.6之后的版本使用最多128个订阅(因为Catalyst Center的最新版本可以使用100多个订阅。
从PI迁移到Cisco Catalyst Center
C9800不能同时由PI和Cisco Catalyst Center管理。如果计划迁移到Catalyst Center作为网络管理解决方案,则需要在将C9800添加到Catalyst Center之前将其从Prime基础设施中删除。从PI 3.5删除/删除C9800时,PI在清点时推送到C9800的所有配置不会回滚,需要从系统中手动删除这些配置。具体而言,为C9800 WLC建立的用于发布流遥测数据的订阅渠道不会删除。
要确定此特定配置,请执行以下操作:
#show run | sec telemetry
要删除此配置,请运行此命令的no
形式:
(config) # no telemetry ietf subscription <Subscription-Id>
Repeat this CLI to remove each of the subscription identifiers.
(config) # no telemetry transform <Transform-Name>
Repeat this CLI to remove each of the transform names
注意:如果同时使用Catalyst Center和Prime基础设施管理9800控制器,由于Prime管理,Catalyst Center库存合规性预计会失败。
在最新版本中,Prime基础设施和Catalyst Center都可能对WLC使用过多的遥测订阅,以使两台服务器同时管理9800。因此,您无法同时使用Catalyst Center和Prime基础设施管理9800,也无法使用遥测和统计数据。因此,从PI迁移到Catalyst Center的速度必须尽可能快,因为Prime基础设施管理9800控制器时,Catalyst Center就无法从9800获得遥测数据。