VxRail:vCenterに「High pnic rx generic error rate detected」または「High pNic error rate detected」という警告が表示される
Summary: vCenterに次のような警告メッセージが表示されます。「Warning: High pnic rx generic error rate detected on vmnicX」;「High pNic error rate detected, Check the host's vSAN performance view for details」
Symptoms
このメッセージには2つの異なる問題があり、異なる方法で処理する必要があります。
問題1:
vCenter Webクライアントでは、複数のホストに対して次のメッセージが表示されます。警告のvmnicは、ホストがネットワークに接続している任意のvmnicである可能性があります。
**これは、問題2(以下に記載)とは異なります。問題2のアラームのvmnicは、vSANのアクティブおよび(または)スタンバイvmnicのみです。**
Warning: High pnic rx generic error rate detected on vmnicX.
ESXiホストで次のコマンドを実行すると、多くのrx(受信)長エラーが表示され、エラーは大きくなり続けます。これにより、警告がトリガーされます
(「X」を正しいvmnic番号に置き換えます)。
esxcli network nic stats get -n vmnicX vmnic0 Packets received: 2611289 Receive length errors: 279662 Multicast packets received: 529478 Broadcast packets received: 512315 vmnic1 packets received: 5812398 Receive length errors: 279518 Multicast packets received: 538956 Broadcast packets received: 427913
ホスト内のすべてのvmnicの "Receive length error" のカウントはほぼ同じです。これは、次のことを意味します。 "Multicast packets received" または "Broadcast packets received" が、次のエラーを引き起こしています。 "Receive length errors."
**マルチキャスト パケットは、通常はブロードキャスト パケットと同様に、同じVLANでフラッディングされます。
受信長エラーとブロードキャスト パケットの比率、または受信長エラーとマルチキャスト パケットの比率を計算できます。次に、それらを他のノードと比較します。
異なるノードでも、マルチキャストまたはブロードキャストによって引き起こされる受信長エラーの割合はほぼ同じです。**
問題1をトラブルシューティングするには、vmnicでパケットをキャプチャします。
- ノードにSSH接続します。
- 次のコマンドを実行します(「
vmnicX」を、受信長エラーが表示された「vmnic」に置き換えます)。pktcap-uw --uplink vmnicX --dir 2 -o /tmp/lengtherror.pcap
- エラー アップリンク パケットをキャプチャし、ctrl+cで停止します。
- .pcapファイルをローカル デスクトップにダウンロードし、Wiresharkで開きます。
- ブロードキャスト パケット フィルターの場合:
ip.addr == 255.255.255.255 - マルチキャスト パケット フィルターの場合:
eth.dst == ff:ff:ff:ff:ff:ff - フィルターの結果から「Malformed Packet」を見つけてみてください。
- このフィルターが機能する場合があります(Wireshark 4.0.12のみ)。
((eth.len != frame.len - 14) || eth.len != frame.len - 18)

問題2:
アラームには名前が付けられています。
High pNic error rate detected Check the host's vSAN performance view for details.
ユーザーがホストのvSANパフォーマンス ビューを確認すると、アラームに記載されているvmnicが常にvSANトラフィックのアクティブまたは(および)スタンバイvmnicであることがわかります
ほとんどの場合、vmnicはvSANのスタンバイです。
このアラームは、vSphere 7.0U2以降で発生します。
参照先:https://knowledge.broadcom.com/external/article/312096/alarm-about-high-pnic-error-rate-being-d.html
次の表は、監視対象のvSANに使用されるpNICのメトリックとそのアラームしきい値を示しています。
これらのタイプのエラーは、vSANのパフォーマンスに影響を与える可能性があります。
Cause
問題1:
この例では、パケット キャプチャはCiscoアクセス ポイント(AP)コントローラーがCAPWAP-Controlパケットを送信していることを示しています。
Wiresharkは、それらを「Malformed Packet」としてマークします。
ESXiは通常、この種のパッケージも処理できません。
Wiresharkは、分析中にプロトコルの予期される構造に準拠しないパケットを検出すると、そのパケットを「Malformed」としてマークします。これは通常、パケットが送信中に破損している可能性があるか、プロトコルの実装が異常または不適切であることを示します。
次のフィルターは、別の種類の出力を提供する場合があり(フレーム長がサポートされていないため)、また、次のエラーを引き起こす場合があります。 "received length error."
ただし、これは正確ではないため、お客様にレポートを送信する前に、このフィルターの出力に対してさらに分析を行う必要があります。((eth.len != frame.len - 14) || eth.len != frame.len - 18)
問題2:
VMwareは、vSANのパフォーマンスに影響を与える可能性のあるエラーを監視するために、このアラームを導入しました。
エラーの発生率が特定の値に達したとき。vSANのパフォーマンスに注意を払う必要があることをユーザーに通知するアラームがトリガーされます。
ただし、アラーム トリガーのアルゴリズムに問題がある可能性が確認されています。エラー パケット比を計算する際には、短期的なデータ パケット数とエラー パケットの総数が使用されます。
そのため、ほとんどの場合、エラーが発生するvmnicは常にvSANのスタンバイvmnicです。これは、vmnic上のトラフィックが少ないためです。
Resolution
問題1:
- 問題1のインスタンスでは、送信元IPアドレスはVLAN 1に接続されたCisco APコントローラーでした。
- VxRail ClusterのvDS設定をチェックして、VLAN 1を使用するトラフィックがないことを確認します。
- VxRailホストに接続されているTORスイッチ ポートからVLAN 1を削除します。
- VLAN 1にない場合は、同じ手順に従ってスイッチ ポートからVLANを削除します。
- VLANがクラスター トラフィックを伝送する場合、スイッチ ポートからVLANを削除することはできません。受信長エラーの原因となったトラフィックをVxRail Clusterから分離するために、ネットワーク設計の変更が必要になる場合があります。
問題2:
このタイプの問題を処理するには、いくつかのシナリオがあります。
- vmnicレポート エラーはvSANのスタンバイvmnicであり、エラー パケットの増加が遅いです。
これはアルゴリズムによって引き起こされる誤ったアラームであり、vSANのパフォーマンスには影響しません。このアラームは時々表示されますが、このアラームを無視することをお勧めします。
- vmnicレポート エラーは、vSANまたはスタンバイvmincのアクティブなvmnicですが、エラー パケットは増加し続けています。
エラーの種類によって解決方法は異なりますが、CRCエラー、受信長エラー、および停止フレームの受信によって引き起こされるアラームによく遭遇します。
-
vmnicでCRCエラーを受信した場合。
通常、ハードウェアの問題がCRCエラーの原因となります。主に、ノード側とスイッチ側の両方のケーブル、SFP、ネットワーク アダプターに関連しています。
ハードウェアのトラブルシューティング プロセスに従って問題を特定してください。 -
vmnicで受信長エラーが表示された場合。
根本的な原因は問題1と同じです。このシナリオでは、問題1のトラブルシューティングに従うことができます。
-
vmnicで停止フレームを受信した場合。
停止フレームは、ネットワーク フロー制御に使用されます。
フロー制御を有効にする:ネットワークの不安定性や輻輳は、VxRailのパフォーマンス低下の原因となり、vSAN I-Oデータストアの操作に悪影響を及ぼします。
フロー制御は、データ転送速度を管理してバッファー オーバーランを回避するのに役立つスイッチ機能です。
VxRailでは、フロー制御を次のように推奨しています。"receive on" and "transmit off."
https://www.delltechnologies.com/asset/en-us/products/converged-infrastructure/technical-support/h15300-vxrail-network-guide.pdf(88ページ)を参照してください。
スイッチでフロー制御が有効になっているかどうかを確認するには、どうすればよいですか?
Dellスイッチを例に取ってみます。
Run the command "show interface ethernet 1/1/1," replacing the switch interface number with the interface connecting the node
Vxrail-S5048-01# show interface ethernet 1/1/1 Ethernet 1/1/1 is up, line protocol is down Pluggable media present, SFP28 type is SFP28 25GBASE-SR-NOF Wavelength is 850 Interface index is 15 Internet address is not set Mode of IPv4 Address Assignment: not set Interface IPv6 oper status: Disabled MTU 1532 bytes, IP MTU 1500 bytes LineSpeed 0, Auto-Negotiation off Configured FEC is cl108-rs, Negotiated FEC is cl108-rs Flowcontrol rx on tx on ----- tx on means that the flow control is transmit on
フロー制御送信を無効にするにはどうすればよいですか?
Vxrail-S5048-01# configure terminal vxrail-S5048-01(config)# interface e1/1/1 ----replace the switch interface number Vxrail-S5048-01(conf-if-eth1/1/1)# flowcontrol transmit off
vSAN vmnicsに接続されているすべてのスイッチ インターフェイスを送信オフとして設定します。
アラームを緑色にリセットし、アラームが再発するかどうかを監視します。