XFSパーティション上のHP DL380p Gen8(p420iコントローラー)I / Oの異常


14

6ディスクのRAID 1 + 0の上にあるLVMの上にXFSを使用するDL380p gen8サーバーでは、同一のワークロードにより、RHEL 5に比べてRHEL 6のディスク書き込みが10倍増加し、アプリケーションが使用できなくなります。

私はco6システムを可能な限り最適化するのではなく、co6の動作が大きく異なる理由を理解し、それを解決することに注目していることに注意してください。

vmstat / iostat

mysql 5.5を使用したMySQLレプリケーションのセットアップがあります。OSとしてRHEL 6を使用しているgen8サーバー上のMysqlスレーブはパフォーマンスが低下し、vmstatおよびiostatを使用した検査により、これらのサーバーがページアウトアクティビティの10倍とディスクサブシステムへの書き込みの10倍を行うことが示されています。blktraceは、これらの書き込みがmysqlではなくカーネルによって開始されることを示しています。

Centos 5:

[dkaarsemaker@co5 ~]$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0     12 252668 102684 10816864    0    0     8   124    0    0  9  1 90  0  0
 1  0     12 251580 102692 10817116    0    0    48  2495 3619 5268  6  1 93  0  0
 3  0     12 252168 102692 10817848    0    0    32  2103 4323 5956  6  1 94  0  0
 3  0     12 252260 102700 10818672    0    0   128  5212 5365 8142 10  1 89  0  0

[dkaarsemaker@co5 ~]$ iostat 1
Linux 2.6.18-308.el5 (bc290bprdb-01.lhr4.prod.booking.com)  02/28/2013

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           8.74    0.00    0.81    0.25    0.00   90.21

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      277.76       399.60      5952.53 2890574849 43058478233
cciss/c0d0p1      0.01         0.25         0.01    1802147      61862
cciss/c0d0p2      0.00         0.01         0.00     101334      32552
cciss/c0d0p3    277.75       399.34      5952.52 2888669185 43058383819
dm-0             32.50        15.00       256.41  108511602 1854809120
dm-1            270.24       322.97      5693.34 2336270565 41183532042

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           7.49    0.00    0.79    0.08    0.00   91.64

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      300.00        32.00      4026.00         32       4026
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    300.00        32.00      4026.00         32       4026
dm-0              0.00         0.00         0.00          0          0
dm-1            300.00        32.00      4026.00         32       4026

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           4.25    0.00    0.46    0.21    0.00   95.09

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      507.00       160.00     10370.00        160      10370
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    507.00       160.00     10370.00        160      10370
dm-0              0.00         0.00         0.00          0          0
dm-1            507.00       160.00     10370.00        160      10370

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.33    0.00    0.50    0.08    0.00   94.09

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0      318.00        64.00      4559.00         64       4559
cciss/c0d0p1      0.00         0.00         0.00          0          0
cciss/c0d0p2      0.00         0.00         0.00          0          0
cciss/c0d0p3    319.00        64.00      4561.00         64       4561
dm-0              0.00         0.00         0.00          0          0
dm-1            319.00        64.00      4561.00         64       4561

Centos 6では、ページアウトとディスク書き込みが10倍に増加しました。

[root@co6 ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 361044  52340 81965728    0    0    19  1804   36  110  1  1 98  0  0  
 0  0      0 358996  52340 81965808    0    0   272 57584 1211 3619  0  0 99  0  0  
 2  0      0 356176  52348 81966800    0    0   240 34128 2121 14017  1  0 98  0  0 
 0  1      0 351844  52364 81968848    0    0  1616 29128 3648 3985  1  1 97  1  0  
 0  0      0 353000  52364 81969296    0    0   480 44872 1441 3480  1  0 99  0  0  

[root@co6 ~]# iostat 1
Linux 2.6.32-279.22.1.el6.x86_64 (bc291bprdb-01.lhr4.prod.booking.com)  02/28/2013  _x86_64_    (32 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.08    0.00    0.67    0.27    0.00   97.98

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             373.48      1203.02    115203.05   11343270 1086250748
dm-0             63.63        74.92       493.63     706418    4654464
dm-1            356.48      1126.72    114709.47   10623848 1081596740

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.25    0.00    0.19    0.06    0.00   99.50

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             330.00        80.00     77976.00         80      77976
dm-0              0.00         0.00         0.00          0          0
dm-1            328.00        64.00     77456.00         64      77456

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.38    0.00    0.19    0.63    0.00   98.81

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             570.00      1664.00    128120.00       1664     128120
dm-0              0.00         0.00         0.00          0          0
dm-1            570.00      1664.00    128120.00       1664     128120

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.66    0.00    0.47    0.03    0.00   98.84

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             317.00       448.00     73048.00        448      73048
dm-0             34.00         0.00       272.00          0        272
dm-1            309.00       448.00     72776.00        448      72776

絞込み

RHEL 5を使用するGen 8サーバー、およびRHEL 5または6を使用するgen 7サーバーでは、この問題は発生しません。さらに、デフォルトのxfsの代わりにファイルシステムとしてext3を使用したRHEL 6では、問題は表示されません。問題は、XFS、gen8ハードウェア、centos 6の間のどこかにあるようです。RHEL6も問題を示しています。

編集29/04:qlogic HBAのG8マシンを追加しました。ファイバーチャネルストレージでXFSを使用しても、問題は表示されません。したがって、xfs / hpsa / p420iの相互作用のどこかに間違いなくあります。

XFS

rhel 8の新しいxfsは、基盤となるストライプ幅を検出できるようですが、ccsaを使用するp410iコントローラーではなく、hpsaドライバーを使用するp420iコントローラーでのみ検出できます。

xfs_infoの出力:

[root@co6 ~]# xfs_info /mysql/bp/
meta-data=/dev/mapper/sysvm-mysqlVol isize=256    agcount=16, agsize=4915136 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=78642176, imaxpct=25
         =                       sunit=64     swidth=192 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=38400, version=2
         =                       sectsz=512   sunit=64 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

上記のOKとしてマークされているすべてのセットアップで、sunit / swidthは両方とも0です。mkfsでも、noalignマウントオプションでも、これを変更できないようです。これが原因かどうかもわかりません。

巨大ページ

rhel 6でXFSの問題を抱えている他の人々は、hugepages、特に透過的なhugepagesを無効にすると有益だと言います。両方とも無効にしましたが、問題は解決しませんでした。

私たちはすでに多くのことを試し、観察しましたが、次のどれも助けにはなりませんでした。

  • numactlを使用してメモリ割り当てに影響を与えます。g7とg8は異なるnumaレイアウトを持っていることに気付きましたが、効果は見られませんでした
  • 新しいカーネル(3.6以降)はこれを解決していないようです。どちらもfedora 17を使用しませんでした。
  • iostatは、書き込みトランザクションの10倍の増加を報告せず、書き込まれたバイト数のみを報告します
  • 異なるI / Oスケジューラを使用しても効果はありません。
  • 関連するファイルシステムnoatime / nobarrier / nopdiratimeをマウントしても解決しませんでした
  • / proc / sys / vm / dirty_ratioを変更しても効果がありませんでした
  • これは、2640 CPUと2670 CPUに基づくシステムの両方で発生します
  • hpsa-3.2.0は問題を修正しません

XFS mkfs.xfsmountオプションを表示します。EL6はパーティションアラインメントに対応しています。HPSAはEL6の両方のSmartアレイコントローラータイプで使用されますが、EL5はCCISSを使用します。
ewwhite

mkfsオプション:なし。マウント行:/ dev / mapper / sysvm-mysqlVol / mysql / bp type xfs(rw、allocsize = 1m)。完全なxfs_info出力を投稿に追加します。
デニスカースメーカー

それで解決策は何でしたか?
ewwhite 14

回答:


7

XFSとEL6はい状態に陥りました...しばらくの間、Red Hatカーネルにスリップするいくつかのアップストリーム機能/変更のために、EL6システムでXFSを放棄しました...

これは驚きであり、パニックを引き起こしました:XFSファイルシステムが突然より多くのスペースとスパースファイルでいっぱいになるのはなぜですか?

2012年11月以降、カーネルで出荷されるXFSバージョン2.6.32-279.11.1.el6は、Red Hat Bugzilla 860787に起因する迷惑な負荷とパフォーマンスの問題を抱えています。それ以来、予測できないパフォーマンスと、平均よりも高い実行キューがありました。

新しいシステムでは、ZFSまたはext4を使用しています。古いシステムの場合、でそれらを凍結してい2.6.32-279.11.1.el6ます。

そのバージョンにロールバックしてみてください:

yum install kernel-2.6.32-279.11.1.el6.x86_64

上記に加えて、使用しているRAIDコントローラーのタイプにより、一般的な最適化は次のとおりです。

XFSファイルシステムをマウントしますnoatime。また、次のようなTunedフレームワークを活用する必要があります。

tuned-adm profile enterprise-storage

先読み、バリアなし、I / Oエレベーターを適切なベースラインに設定します。


編集:

XFSファイルシステムの最適化に関する多くの推奨事項があります。私は過去10年間ファイルシステムを独占的に使用してきましたが、オペレーティングシステムの根本的な変更が発生したときにパラメータを調整する必要がありました。あなたのような劇的なパフォーマンスの低下は経験していませんが、LVMも使用していません。

異なるカーネル生成、コンパイルされたデフォルト、スケジューラ、パッケージなどを考えると、EL5がEL6と同じように動作することを期待するのは不合理だと思います。

この時点で何しますか?

  • mkfs.xfsパラメーターと、システムの構築方法を調べます。インストール中にXFSパーティショニングを使用していますか、または事後にパーティションを作成していますか?メインOSのインストール後にXFSファイルシステムを作成します。これは、指定されたパラメーターの柔軟性が高いためです。

  • 私のmkfs.xfs作成パラメーターは単純です:mkfs.xfs -f -d agcount=32 -l size=128m,version=2 /dev/sdb1例えば。

  • 私のマウントオプションは次のとおりnoatime,logbufs=8,logbsize=256k,nobarrierです。XFSの動的な事前割り当てをネイティブに実行できるようにし、ここにあるような制約はしません。私のパフォーマンスはそれで改善しました。

  • だから私はLVMを使用しません。特にハードウェアRAIDの上... 特にデバイスにネイティブのLVMのような機能があるHP Smartアレイコントローラー。ただし、LVMを使用するとfdisk、rawパーティションを作成するためのアクセス権がありません。EL5からEL6に変更されたものの1つは、インストーラーでのパーティションのアライメントであり、シリンダー境界で開始セクターを設定するためにfdiskに変更されます。

  • 現在のリビジョンレベルでHP Smartアレイコントローラーとドライブを実行していることを確認してください。その時点で、サーバー全体最新のHP Service Pack for ProLiantファームウェアリビジョンに更新することは理にかなっています。これは、システムで検出されたすべてのコンポーネントをアップグレードする起動可能なDVDです。

  • RAIDコントローラの設定を確認します。の出力を貼り付けますhpacucli ctrl all show config detailこれが私の 書き込み対読み取りに偏ったキャッシュ比率が必要です。75:25が標準です。このアプリケーションでは、デフォルトのストリップサイズ256Kで十分です。

  • 私は潜在的にLVMなしでこれを試してみました。

  • あなたのsysctl.confパラメーターは何ですか?


残念ながら、古いカーネルでも同じ動作が見られます。
デニスカースメーカー

LVMなしでテストします。
ewwhite

1

同様の問題があり、XFSログバージョンの変更が原因であることがわかりました。バージョン2のログは、mkfs.xfsで使用されるストライプ幅セットを尊重します。多くのfsyncを実行すると、RAIDカードはこれらのログ書き込みを偽造できなくなります。swidth設定なしでパーティションをフォーマットすることでテストできます(RAID 1 + 0では違いはありません)。blktrace / seekwatcherを使用して、ログの更新が大量に含まれているかどうかを確認できます。


あなたのmkfs.xfsコマンド文字列は何ですか?
ewwhite 14年

私は最終的にそれを見つけたので、自分で答えを提供するつもりでした。あなたの答えは解決策の一部ですが、すべてではありません。
デニスカースメーカー14年

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