VxRail:MTU 检查(采用大型数据包大小执行 ping 命令)(英文版)
Summary: 本文介绍当 MTU 检查(具有较大数据包大小的 ping)显示“警告”时的故障处理步骤。
Symptoms
从群集 -> 显示器 -> vSAN
Cause
MTU 检查(带有较大数据包的 ping)警告可能来自交换机与 vSphere 环境之间的不匹配 MTU。
可能导致故障的原因在于,如果 vmknic 的 MTU 为 9000,则物理交换机将强制执行 MTU 为 1500。这是因为源不会对数据包进行分段,物理交换机会丢弃数据包。
已知有故障的网络硬件(节点 sfp、网卡、线缆、交换机端口/sfp)也会触发 MTU 检查(带有较大数据包大小的 ping)警告。
Resolution
故障处理步骤:
-
检查架顶式交换机和所有 vSphere 组件上的 MTU 大小;DVS、vmks、vmnics。
如果未发现 MTU 大小问题,请转至步骤 2。 -
检查交换机端口、esxi 或两个主机是否存在 crc 错误。
有关此运行状况检查测试的更多信息,请参阅 https://kb.vmware.com/kb/2108285。
检查 MTU 设置:
根据交换机供应商文档检查架顶式交换机 MTU 设置。
检查 vSphere MTU 设置:
检查 MTU 警告消息中引用的节点/端口组的 MTU 设置:
[vxrail@vxnode03:~] esxcfg-vmknic -l | grep vmk2 vmk2 16384 IPv4 192.168.121.3 255.255.255.0 192.168.121.255 00:50:56:6f:e3:c9 1500 65535 true STATIC defaultTcpipStack vmk2 16384 IPv6 fe80::250:56ff:fe6f:e3c9 64 00:50:56:6f:e3:c9 1500 65535 true STATIC, PREFERRED defaultTcpipStack
检查 DVS 的 MTU 设置:
[vxrail@vxnode03:~] esxcfg-vswitch -l DVS Name Num Ports Used Ports Configured Ports MTU Uplinks VMware HCIA Distributed Switch 4352 9 512 1500 vmnic1,vmnic0 DVPort ID In Use Client 0 1 vmnic0 1 1 vmnic1 2 0 3 0 4101 1 vmk1 8205 1 vmk0 16400 1 vmk2 8208 1 vmk3
检查 vmnic 上的 MTU:
[vxrail@vxnode03:~] esxcfg-nics -l Name PCI Driver Link Speed Duplex MAC Address MTU Description vmnic0 0000:01:00.0 ixgbe Up 10000Mbps Full 2c:60:0c:af:ee:de 1500 Intel Corporation Ethernet Controller X540-AT2 vmnic1 0000:01:00.1 ixgbe Up 10000Mbps Full 2c:60:0c:af:ee:df 1500 Intel Corporation Ethernet Controller X540-AT2
检查是否存在 crc 错误:
如果 MTU 配置看起来正常,请检查 crc 错误。
要检查交换机上的 CRC 错误,请参阅相应命令的交换机供应商文档。
例如,对于 Brocade:
sw0# show int stats detail int Ten 2/0/34 Interface TenGigabitEthernet 2/0/34 statistics (ifindex 8993701921) RX TX Packets 7165702349 4603884761 Bytes 8633656075975 2910244530614 Unicasts 7154910149 4565459180 Multicasts 10782937 24109494 Broadcasts 9263 14316087 Errors 0 0 Discards 691 643 Overruns 0 Underruns 0 Runts 0 Jabbers 0 CRC 0 64-byte pkts 0 Over 64-byte pkts 932783488 Over 127-byte pkts 587058087 Over 255-byte pkts 19035776 Over 511-byte pkts 93628206 Over 1023-byte pkts 631386310 Over 1518-byte pkts 4901810482 Mbits/Sec 0.000000 0.000456 Packet/Sec 0 0 Line-rate 0.00% 0.00%
检查 ESX 主机上是否存在 CRC 错误:
[vxrail@vxnode03:~] esxcli network nic stats get -n vmnic1 NIC statistics for vmnic1 Packets received: 135817879 Packets sent: 82253912 Bytes received: 156239259329 Bytes sent: 53856798358 Receive packets dropped: 0 Transmit packets dropped: 0 Multicast packets received: 637031 Broadcast packets received: 0 Multicast packets sent: 0 Broadcast packets sent: 0 Total receive errors: 32614 Receive length errors: 1866 Receive over errors: 0 Receive CRC errors: 32596 Receive frame errors: 0 Receive FIFO errors: 0 Receive missed errors: 0 Total transmit errors: 0 Transmit aborted errors: 0 Transmit carrier errors: 0 Transmit FIFO errors: 0 Transmit heartbeat errors: 0 Transmit window errors: 0
如果发现 crc 错误,请每隔几秒钟刷新(重新运行)命令,以查看 crc 错误是否在递增。
如果是,请转至对网络硬件(节点 sfp、网线、交换机 sfp/端口等)进行故障处理,以将问题隔离到特定组件并更换故障组件。
更换故障组件后,每隔几秒钟运行上述命令,以确认 crc 错误不再递增。
重新启动会清除 esx 上的 crc 错误计数器,因此,尽管现有错误可能仍然存在,但重要的是它们会停止递增。
问题解决后,重新运行 vSAN 运行状况检查测试,以确认 MTU 检查(带有大数据包大小的 ping)警告不再存在。