/
/
现场针对ADDC网络扩容,在8月23进行新增一台leaf S6800的操作,上线后发现leaf的上行口识别为computer,上线失败,后续在9月6日再尝试上线一台leaf S5560X-EI,故障现象一样。
明细现象如下:
8月23日新增扩容一台leaf(S6800-54QF),大约20:00leaf上线完成后,leaf的5/0/49下发了正确的配置(连的是spine2),但1/0/49被识别为了下行口(连的是spine1),下发了错误的配置。查看自动化上线的日志,发现1/0/49口将对方spine1的角色识别为了computer:
2011-01-01 08:03:35,923 topo.py[line:87] DEBUG [topology]--Notified--topology change {'FortyGigE1/0/49': {'add': [{'PeerIP': None, 'sysName': 'HTT003_SDN_SP_01', 'sysdesc': 'h3c', 'Loopback1IP': '0.0.0.0', 'mac': '7057-bff7-ee00', 'PeerIntf': 'FortyGigE1/3/0/6', 'role': 'computer', 'LoopbackIP': '12.99.254.254'}], 'del': [], 'mod': []}}
后续在9月6日再尝试上线一台leaf S5560X-EI,故障现象一样:
interface Ten-GigabitEthernet5/0/49
port link-mode bridge
port link-type trunk
port trunk permit vlan 1
lldp compliance admin-status cdp txrx
vtep access port
#
interface Ten-GigabitEthernet1/0/49
port link-mode bridge
根据反馈的fabric.log日志,发现leaf侧对spine1的角色识别始终是错误的,但是对于spine2的识别就是正确的,因此初步怀疑是spine1的相关进程出现了异常,未能委托lldp帮忙发送相关信息,peerIP和role始终为无效值可以进一步佐证:
2011-01-01 08:03:35,923 topo.py[line:87] DEBUG [topology]--Notified--topology change {'FortyGigE1/0/49': {'add': [{'PeerIP': None, 'sysName': 'HTT003_SDN_SP_01', 'sysdesc': 'h3c', 'Loopback1IP': '0.0.0.0', 'mac': '7057-bff7-ee00', 'PeerIntf': 'FortyGigE1/3/0/6', 'role': 'computer', 'LoopbackIP': '12.99.254.254'}], 'del': [], 'mod': []}}
通过现场抓包,对比Spine和leaf的发包,进一步证实了Spine1设备无法委托lldp发送tlv信息:
故障spine1的抓包(无code 200的tlv字段):
正常leaf的抓包(包含code 200的tlv字段):
进一步远程登录设备确认设备进程状态,发现是lldp的1框3槽位进程在之前打补丁的时候重启过,存在低概率的先后时序问题,导致vcf不感知,接口的代理注册信息丢失,没有办法能获取到了,从而导致委托发送携带信息失败。
整个问题逻辑如下:
设备角色的识别功能是基于VCF委托LLDP报文发送的时候在TLV字段携带角色信息,这个委托发送功能的实现是基于VCF要到LLDP进程注册。
打H37补丁时会涉及所有板的lldp进程重启:
1、Vcf在主控委托lldp代理,当lldp进程重启后,感知主控lldp本地lipc服务端口down,up,会重新下发注册。
2、LLDP收到委托代理后,会在lib侧将该消息发送到接口所在板。
3、委托lldp发送额外字段打印,无错误打印代表委托成功。委托过程调用的是lldp的接口,此时接口板lldp进程还未重启,注册成功了。
2022-08-17 20:13:53,444 topo_collect.py[line:778] DEBUG lldp_commit FortyGigE1/3/0/6
4、 再此之后,lldp的1框3进程重启,此时vcf不感知,接口的代理注册信息丢失,没有办法能获取到了,从而导致委托发送携带信息失败。
进一步在实验室模拟复现,低概率复现了该问题。只有打补丁过程中符合了上面进程重启的时序才会复现问题。
综上,Spine设备在打H37补丁时,存在低概率时序问题,业务板的lldp进程重启晚于主控板,因此业务板VCF委托LLDP报文失败,无法携带TLV字段携带角色信息,导致上行口识别错误,现场通过重启LLDP进程已恢复,后续计划发布R2713H3701补丁解决。
现场通过重启LLDP进程已恢复,后续计划发布R2713H3701补丁解决。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作