SSDディスクと10 GbeネットワークでのiSCSIパフォーマンスの低下


10

iSCSIターゲット

Ubuntu 14.04(Trusty Tahr)。16GB RAMと16コアCPUをLVMでサポートし、3つのSamsung SSDディスクを使用するiSCSIターゲットとして、それぞれオンボードキャッシュを備えたLSI 6 Gbit / sコントローラーを使用して65k IOPSを実行できます。

ターゲットのSSDディスクのベンチマーク:

fio --filename=/dev/sdd --direct=1 --sync=1 --rw=write --bs=4k --numjobs=10 --iodepth=1 --runtime=60 --time_based --group_reporting --name=ssd-max

iops=65514

どこsddハードウェアで構成されたRAID 0 3台のサムスン850 EVO SSDを使用しました。

イニシエータ

32 GB RAMと8コアCPUを搭載したUbuntu 14.04クライアントに500G LUNをエクスポートしました。

エクスポートされたLUNのベンチマーク

fio --filename=/dev/sdg --direct=1 --sync=1 --rw=write --bs=4k --numjobs=10 --iodepth=1 --runtime=60 --time_based --group_reporting --name=client-max

iops=2400

DASを実行するとネットワーク経由でパフォーマンスが大幅に低下します。少なくとも10k IOPSを期待していました。

ターゲットとイニシエーター間の通信は1ミリ秒未満であり、iperfは9.2ギガビット/秒のネットワークスループットを示しています。

各データはディスクに書き込まれる前にイニシエーターとターゲットの両方のネットワークスタックを経由する必要があるため、4k書き込みのパフォーマンスに影響があることを理解していますが、これは65kから2kへの許容できない低下です。

問題はどこにありますか?私が持っている10ギガビット/秒イーサネットターゲットとイニシエータ間のNICを。何か案は?


2
十分な情報に近いところはなく、私たちの水晶玉は高額すぎて無料の顧客にそれらを浪費することはできません。ヘルプが必要な場合は、物事を特定するのに役立つ意味のある情報を提供してください。
TomTom 2015年

私は私の質問を編集しました、もし時間があればあなたはあなたの提案で私を助けることができます。
Kevin Parker

NICとCPUは、ソフトウェアiSCSIセットアップのボトルネックになる可能性が高いので、それらについて説明することをお勧めします。
rakslice 2015年

回答:


20

短い答え:これは、ネットワーク遅延の結果である(あなたが使用することによって課さとしてシリアル作業負荷direct=1sync=1およびiodepth=1)。

長い答え:使用してdirect=1sync=1そしてiodepth=1前の書き込みがコミットされる前に新しい書き込みがキューに入れることができないよう、あなたは、シリアルワークロードを作成し、確認しました。つまり、書き込みの送信率はネットワークのレイテンシに厳密に依存します。ping2つのマシン間の単純なものは0.2msを超える場合があり、TCP(およびその上にiSCSI)としてより高いレベルのプロトコルを使用する場合はさらに多くなります。合計ネットワークレイテンシが約0.33ミリ秒であると想定すると、最大IOPS値は約3000になります。これには、他のレイテンシソース(es:ディスク自体)を考慮しないため、記録した内容と一致します。

これを試してください。最初のベンチマークをなし--direct=1 --sync=1で実行し、別のベンチマークをこれらのオプションを使用して実行しますが、iodepthリクエストを32に増やします。次に、ここで結果を報告します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.