ホスティング会社から2台の専用サーバーを借りています。仕様は次のとおりです。
server1:
HP ProLiant DL165 G7
2x AMD Opteron 6164 HE 12-Core
40 GB RAM
HP Smart Array P410 RAID controller
2x Samsung 830 256 GB SSD
server2:
HP ProLiant DL120 G7
Intel Xeon E3-1270
16 GB RAM
HP Smart Array P410 RAID controller
2x Samsung 830 128 GB SSD
セットアップは両方のサーバーで同じです。
私は現在、これらのサーバーのディスクをシーケンシャルな読み取り/書き込みから最大限に活用する方法を見つけようとしています。これが私が現在見ている速度です:
Writes:
server1:~# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.05089 s, 213 MB/s
server2:~# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.09768 s, 262 MB/s
Reads:
server1:~# echo 3 > /proc/sys/vm/drop_caches
server1:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 4.14051 s, 259 MB/s
server2:~# echo 3 > /proc/sys/vm/drop_caches
server2:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 3.33901 s, 322 MB/s
まず第一に、誰かがこれらのサーバー間の大きな違いを説明できますか?
第二に、私はこれ以上を期待する必要がありますか?私が見たSamsung830 SSDについて読んだとき、 0 MB/sを超える書き込み速度と500MB/sを超える読み取り速度 同じベンチマーク方法(dd)を使用しています。ただし、RAIDコントローラーは必要ありません。 RAIDのペナルティはこれほど高いですか、それとも構成の問題ですか?
更新:
Ddの代わりにiozoneを使用していくつかのテストを実行しましたが、得られた結果ははるかに理にかなっています。 2つのサーバー間に大きな違いはなく(server1は少し速くなりました)、これらのドライブで評価されている速度にかなり近づいています。だから私はddを使うべきではなかったと思います。学んだ教訓!
まず、nr_requestsとread_ahead_kbをデフォルト(128と128)に設定してnoopを使用します。 read_ahead_kbを高く設定すると、server2でのランダム読み取りのパフォーマンスが大幅に低下するようです。使用パターンをより明確に把握できたときに、本番環境でサーバーをしばらく使用した後、これを再検討する時間ができれば幸いです。
ここでカバーすることがたくさんあります。
より高いパフォーマンスが必要な場合(影響が大きいものから小さいものの順に):
noatime
、ジャーナリングモード、書き込みバリアを削除するなど)、 [〜#〜] xfs [〜#〜] のような高性能のファイルシステムに移動します。またはext4ですら。dd
は、I/Oパフォーマンスを測定する適切な方法ではありません。 iozone 、 bonnie ++ などの専用アプリケーションを試して、目的の読み取り/書き込みパターンに調整します。互換性に関しては、HPRAIDコントローラーおよびサーバーで非HPディスクを頻繁に使用します。動作しない場合もありますが、SSDが接続されている場合、 適切な温度を報告します HPアレイ構成ユーティリティにエラーが表示されない場合は、問題ありません。
あなたはサーバー上でHP管理エージェントを使用していますね?
編集:
私は自分のシステムの1つで同じことを実行し、fourSATA SSD、調整されたXFS、期限付きエレベーターなどを備えた同じコントローラーを備えています。
[root@Kitteh /data/tmp]# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 3.1985 s, 336 MB/s
[root@Kitteh /data/tmp]# echo 3 > /proc/sys/vm/drop_caches
[root@Kitteh /data/tmp]# ll
total 1048576
-rw-r--r-- 1 root root 1073741824 Sep 24 14:01 tempfile
[root@Kitteh /data/tmp]# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.60432 s, 669 MB/s
HP SmartArrayコントローラーでHP以外のドライブを使用する場合、特定のパフォーマンスを期待したり、動作することを期待したりする必要はありません。 HPは、SAコントローラーがHP以外のドライブで動作する場合、それは完全に意図的ではなく、サポートされていないことを十分に明らかにしています。これらのドライブから優れたパフォーマンスが必要な場合は、それらをサポートするHBAを入手してください(実際にHPのSAコントローラーを作成しているLSIとAdaptecは、優れた選択肢になる傾向があります)。
まず、AdaptecはSmartarrayを製造していませんが、HPがSmararrayでadaptecのSCSIチップセットを使用している場合があります。
次に、これを読み、SSDを使用したsmartarrayチューニングに関する重要な情報を含めます。