2つの同一サーバーでアプリケーションのベンチマークを行っています。1つはCentos5.8で、もう1つはCentos6.2です。私のアプリケーションは、Centos 6.2マシンで実行速度がはるかに遅くなります(50%以下)。
問題の診断を試みる際に、ベンチマークの実行全体を通じてCPU、RAM、およびIO)を追跡しています。iostatで測定した場合、Centos6.2ボックスのディスク読み取り値が大幅に高いことがわかります。
両方のシステムは、ベンチマークが実行されているXFSを実行しています。どちらも、RAID10を実行する8x 300GB SAS)の512MBキャッシングRAIDコントローラーを備えたHPサーバーです。
それぞれのxfs_infoの出力は次のとおりです。
centos5
meta-data=/dev/cciss/c0d0p5 isize=256 agcount=32, agsize=8034208 blks
= sectsz=512 attr=0
data = bsize=4096 blocks=257094144, imaxpct=25
= sunit=32 swidth=128 blks, unwritten=1
naming =version 2 bsize=4096
log =internal bsize=4096 blocks=32768, version=1
= sectsz=512 sunit=0 blks, lazy-count=0
realtime =none extsz=4096 blocks=0, rtextents=0
centos6
meta-data=/dev/sda5 isize=256 agcount=4, agsize=57873856 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=231495424, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal bsize=4096 blocks=113034, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
より多くの情報で投稿を更新していただきありがとうございます。
ProLiantシステムで実行しているため、 コントローラーとI/Oの状況を最適化する にはある程度の作業が必要です。また、XFSマウントはデフォルトのオプションを使用しています。これらのオペレーティングシステム間で異なるドライバを使用していることを忘れないでください。 EL5サーバーにはcciss
があり、EL6システムはhpsa
モジュールを使用しています。そこに 違いがあります 、しかし、あなたが経験している問題はおそらくオペレーティングシステムの違いに関連しています。だからここに私がチェックするものがあります:
noatime
を含め、 書き込みバリアを無効にする にnobarrier
を追加します。これが 私がよく使うサンプルマウント文字列 です。deadline
またはnoop
I/Oエレベータを試してください。 echo deadline > /sys/block/cciss\!c0d0/queue/scheduler
を使用するか、grubブートエントリにelevator=deadline
を追加することで、その場で変更できます。編集:
CentOS5およびCentOS6システムのxfs_info出力を見ています。 XFSパーティションをさまざまなパラメーターでフォーマットしました!
EL5システムには32個のXFS割り当てグループがありますが、EL6システムには4個しかありません。 割り当てグループ XFSが同時ファイルシステム操作を並列化できるようにします。
使用可能なスペースの量とサーバーのCPU仕様を考えると、既存のEL6セットアップは低いagcount
によって制約されます。これについては Red Hatのメモ を参照してください。このようなハードウェアでは、ストレージがマルチテラバイトの範囲にない場合、通常は パーティションスペース4GBあたりの割り当てグループ を指定します。少なくとも、32に移動してEL5サーバーと一致させてください... EL6パーティションをこれらのパラメーターで再フォーマットして、パフォーマンスの違いがあるかどうかを確認してください...
Iotopを実行すると、6.2ボックスでディスクの読み取りは何をしますか?
また、読み取り元のデバイスでのマウントオプションは何ですか?あなたはnoatimeとrelatimeを調べたいと思うかもしれません