PowerFlex SDSでネットワークの問題なくソケットが閉じられる
Summary: SDSは、ネットワーク イベントやネットワークの問題を示す証拠がないまま、ソケットが閉じられたことを報告します。
Symptoms
シナリオ
SDSレポートでは、リモート プロセス(SDC、SDS、MDM)によってソケットが閉じられており、NICダウン イベント、フレームのドロップ、パケット損失は観測されていません。
症状
イベント ログは、SDS接続の切断(分離または再接続のいずれか)を報告します。
2017-11-11 16:52:12.101 SDS_RECONNECTED INFO SDS: xyz_d35 (ID 67211111110089) reconnected 2017-11-11 16:52:13.690 MDM_DATA_FAILED CRITICAL The system is now in DATA FAILURE state. Some data is unavailable. 2017-11-11 16:52:15.791 MDM_DATA_DEGRADED ERROR The system is now in DEGRADED state.
その前に、SDSトレースに次のようなエラーが表示されます。
SDSは送信を試みましたが、応答に >1秒かかりました。
11/11 16:52:04.527408 0x7ff0b19eaeb0:contNet_OscillationNotif:01720: Con 672cb111110099 - Oscillation of type 5 (RPC_LINGERED_1SEC) reported
ピアを持つソケットは、送信側の下位レベルのキープアライブを受信していないため、もう一方の側から閉じられました。
11/11 16:52:06.241105 0x7ff0b19e1eb0:contNet_OscillationNotif:01720: Con a71d2b5d00000078 - Oscillation of type 1 (SOCKET_DOWN) reported
これの別の例は、次のようになります。
11/11 16:52:06.241224 0x7ff0b19e1eb0:contNet_OscillationNotif:01720: Con a71d2b3c00000057 - Oscillation of type 2 (IO_ERROR) reported
その他のインジケーター:
Iterations
ScaleIOの下位レベルのネットワーキング キープアライブ タイマーは、100ミリ秒の長さの反復で測定されます。
MDM->SDSタイムアウトは20反復(2秒)ですが、MDM-MDMキープアライブ タイムアウトは3反復(300ミリ秒)です。
20回の反復回数を超えました。
11/11 16:52:11.685281 0x7ff752d1beb0:netPath_IsKaNeeded:01858: :: Connected Live CLIENT path 0x7ff6e2192a00 of portal 0x7ff6e2192900 net 0x7ff7480e1110 socket 210 inflights 0 didn't receive message for 20 iterations from 10.124.162.109:7072. Marking as down
ソケット ダウン これらのトレースの出力は、ソケットがいつダウンしたかを示します。
11/11 16:52:09.787793 0x7ff752cf7eb0:tgtMgr_TgtOscCB:07696: Con 672cba7400000089 Network address 10.124.130.109 - Oscillation of type SOCKET_DOWN reported 11/11 16:52:11.685290 0x7ff752d1beb0:tgtMgr_TgtOscCB:07696: Con 672cba7400000089 Network address 10.124.162.109 - Oscillation of type RCV_KA_DISCONNECT reported 11/11 16:52:11.685308 0x7ff752cf7eb0:tgtMgr_TgtOscCB:07696: Con 672cba7400000089 Network address 10.124.162.109 - Oscillation of type SOCKET_DOWN reported
この出力は、SDSへの最後のソケットがダウンし、SDSが切断されたと見なされるポイントであることを意味します。
11/11 16:52:11.685319 0x7ff752cf7eb0:tgtMgr_TgtDisconnectCB:07818: Tgt: 672cba7400000089 ConId: 672cba7400000089
MDMはaddmdmコマンドを発行して、SDSを再接続させます。
IO Fault Blocked
MDMに到達できないためにSDSがIOを拒否した場合にIO_FAULT_BLOCKEDが発生することはわかっていますが、この情報は不完全です。
SDSは1秒ごとにキープアライブをMDMに送信し、MDMがこれを5秒間取得しなかった場合、SDSはタイムアウトしたと見なされ、分離済みとしてマークされます。
MDMは、1秒ごとにSDSに「作業を続ける」メッセージを送信します。SDSが5秒間このメッセージを受信しなかった場合、IO_FAULT_BLOCKEDでIOを拒否します。
11/11 16:52:12.007045 0x7ff0b0cdfeb0:ioh_NewRequest:05490: Write to comb f778038007f - Done rc is IO_FAULT_BLOCKED (Lba 6721528 8), volume 6e1a2f4a0000075d (dit) 11/11 16:52:12.008825 0x7ff0b0ec5eb0:ioh_NewRequest:05490: Write to comb f78803903fc - Done rc is IO_FAULT_BLOCKED (Lba 5031040 6), volume 6e1a2f4c0000075f (dit) 11/11 16:52:12.017262 0x7ff0b26daeb0:ioh_NewRequest:05490: Write to comb f768037003e - Done rc is IO_FAULT_BLOCKED (Lba 15106144 16), volume 6e1a2f490000075c (dit)
問題
SDS接続の喪失
data_degraded状態またはインスタント メンテナンス モードでは、DUが発生する可能性があります。
Cause
この例でのIO障害の原因は、(5秒)のSDSリースの有効期限が切れていないが、(2秒)低レベルのネットワーク タイムアウトが期限切れになっていることでした。
根本原因は、次の理由の 1 つ以上です。
1- TCP/ネットワークの問題
A:これは、ハードウェア/構成の問題を示すTCP再送信で明らかになる可能性があります。(ケーブル、NIC、スイッチの問題など)の出力に見られるように、
sar -n ETCP 1
次のように出力されます。
Linux 3.10.0-693.5.2.el7.x86_64 (SIO-DCOE-96O-3) 12/13/2017 _x86_64_ (48 CPU) 04:33:44 PM atmptf/s estres/s retrans/s isegerr/s orsts/s 04:33:45 PM 0.00 0.00 50.00 0.00 0.00 04:33:46 PM 2.00 0.00 75.00 0.00 0.00 04:33:47 PM 0.00 0.00 223.00 0.00 0.00 04:33:48 PM 0.00 0.00 106.00 0.00 0.00 04:33:49 PM 2.00 0.00 58.00 0.00 0.00 04:33:50 PM 0.00 0.00 5.00 0.00 0.00 04:33:51 PM 0.00 0.00 7.00 0.00 0.00 04:33:52 PM 2.00 0.00 2.00 0.00 0.00 04:33:53 PM 0.00 0.00 1.00 0.00 0.00 ^C 04:33:53 PM 0.00 0.00 0.00 0.00 0.00 Average: 0.65 0.00 99.00 0.00 0.00
参照資料:
- 緑=1桁/秒
- 黄色 = 最大 50/s の 2 桁台後半
- 赤 = >50/s
B:SVM上のSusE 11 SP3などの古いLinuxディストリビューションの場合、次のコマンドを使用してネットワークの再送信を監視できます。
watch -d -n 2 "netstat -s |grep retrans"
次のように出力され、最後の間隔で更新された文字が強調表示されます。
Every 2.0s: netstat -s |grep retrans Wed Dec 13 09:55:10 2017
1244070 segments retransmited
2- CPUの問題、プロセスの枯渇。
これは、すべての SIO コンポーネントのトレースで同時に一時停止し、再開時にトレースの最初の行として多くのソケットが閉じます。
LIA、SDS、MDM/TB、SDC/メッセージ ファイルにギャップが表示されます。
たとえば、LIAトレースは、3秒(30回の反復 x 100ミリ秒)のタイムアウト後にLIA→SDSソケットが閉じることを示しています。
11/11 16:52:11.597227 0x7f44c41c6eb0:netPath_IsKaNeeded:01858: :: Connected Live SERVER path 0x7f44c4195690 of portal 0x7f44c4192bb0 net 0x83b040 socket 8 inflights 0 didn't receive message for 30 iterations from 127.0.0.1:43228. Marking as down 11/11 16:52:12.031195 0x7f44c419eeb0:liaNet_DisconnectedNotif:01553: Con aed disconnected 11/11 16:52:12.158383 0x7f44c419eeb0:liaNet_ConnectedNotif:01483: Con aed connected
3-SIOのどこかにバグがある可能性があります。ネットワーク以外のスレッドがCPUを保持していて、他のスレッドの実行を許可していない可能性があります。
Resolution
対策
一般的な回避策はありません
問題が発生するバージョン
すべて
修正バージョン
なし