portwd 标识符 SFF 无效错误
问题
以下日志消息不断出现在 /var/log/syslog
中
2017-03-16T00:39:30.292349+00:00 hostname portwd: Port 49, invalid SFF identifier: 0x0c
2017-03-16T00:39:30.298340+00:00 hostname portwd: Port 50, invalid SFF identifier: 0x0c
2017-03-16T00:39:30.300035+00:00 hostname portwd: Port 50, invalid SFF identifier: 0x0c
2017-03-16T00:39:30.301740+00:00 hostname portwd: Port 50, invalid SFF identifier: 0x0c
2017-03-16T00:39:30.303486+00:00 hostname portwd: Port 50, invalid SFF identifier: 0x0c
2017-03-16T00:39:30.309608+00:00 hostname portwd: Port 51, invalid SFF identifier: 0x0c
环境
- Cumulus Linux 3.y.z
原因
出现此问题的原因是 portwd
无法正确识别光模块。这通常是因为光模块未正确识别其功能。
以下是 ethtool
输出的示例,显示了正确识别的光模块
cumulus@switch:~$ sudo ethtool -m swp1
Identifier : 0x0d (QSFP+)
Extended identifier : 0x00 (1.5W max. Power consumption, No CDR in TX, No CDR in RX)
Connector : 0x0c (MPO Parallel Optic)
Transceiver codes : 0x04 0x00 0x00 0x00 0x40 0x40 0x02 0x00
Transceiver type : 40G Ethernet: 40G Base-SR4
Transceiver type : FC: short distance (S)
Transceiver type : FC: Shortwave laser w/o OFC (SN)
Transceiver type : FC: Multimode, 50um (OM3)
以下是 ethtool
输出的示例,显示了未识别其功能的光模块
cumulus@switch:~$ sudo ethtool -m swp29
Identifier : 0x0d (QSFP+)
Extended identifier : 0xdc (3.5W max. Power consumption, CDR present in TX, CDR present in RX)
Connector : 0x07 (LC)
Transceiver codes : 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Encoding : 0x05 (64B/66B)
解决方法
如果您遇到此消息,并且认为光模块的行为不符合预期,请联系 NVIDIA Cumulus 支持团队。
抑制日志消息
“无效 SFF 标识符”日志消息不断在您的 /var/log/syslog
中生成,使其更难以解释其他日志消息。您可以通过在 rsyslog
配置中添加以下行来阻止此消息的日志记录
:msg, contains, "invalid SFF identifier:" ~
您需要在系统定义 /var/log/syslog
文件之前添加此配置。最简单的方法是创建一个名为 /etc/rsyslogd.d/1-suppress.conf
的文件,并将条目放在此文件中
创建文件
cumulus@switch:~$ sudo vi /etc/rsyslog.d/1-suppress.conf
将以下行添加到文件
:msg, contains, "invalid SFF identifier:" ~
重启
rsyslogd
cumulus@switch:~$ sudo systemctl restart rsyslog.service