CentOS 6比CentOS 5做更多的IO


10

我正在对两个相同服务器上的应用程序进行基准测试,一个是Centos 5.8,另一个是Centos 6.2。我的应用程序在Centos 6.2机器上的运行速度要慢得多(50%或更少)。

在尝试诊断问题时,我在整个基准测试运行期间跟踪CPU,RAM和IO。我看到,使用iostat进行测量,Centos 6.2盒上的磁盘读取量明显更高。

两个系统都在运行基准测试的XFS上运行。两者都是带有512MB高速缓存RAID控制器的HP服务器,并带有运行RAID 10的8 x 300GB SAS。

这是每个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

你到底是什么问题?
蒂姆·布里格姆

您可以显示XFS挂载和文件系统创建选项吗?您能否更详细地描述硬件和磁盘布局?
ewwhite 2012年

追求的是所有条件都是平等的,至少我可以看到,Centos 6.2在我的应用程序中基准了Centos 5.8的50%。我目前可以测量的另一个差异是读取量要高得多。
tmcallaghan 2012年

Answers:


10

感谢您使用更多信息更新帖子。

您正在ProLiant系统上运行,因此需要做一些工作来优化控制器和I / O情况。另外,您的XFS挂载使用默认选项。请记住,您在这些操作系统之间使用了不同的驱动程序。EL5服务器具有cciss,而EL6系统正在使用该hpsa模块。有是有区别的,但是,这个问题你的经验可能与操作系统的差异。所以这是我要检查的内容:

  • 更改XFS坐骑包括noatime禁用写障碍nobarrier。这是我经常使用样本安装字符串
  • 在您的Linux版本之间,I / O升降机行为有所不同。尝试deadlinenoop在CentOS 6的服务器I / O电梯。您可以通过echo deadline > /sys/block/cciss\!c0d0/queue/scheduler或通过elevator=deadline在grub引导项中附加来即时更改它。
  • 确保您的读/写缓存最适合您的工作负载。我通常写75%,读25%。
  • 更新服务器组件上的固件。Smart Array RAID控制器固件的每个修订版都倾向于带来新功能。这听起来像是HP Smart Array P410控制器,所以请确保您使用的是5.14版

编辑
我正在查看您的CentOS 5和CentOS 6系统的xfs_info输出。您使用不同的参数格式化了XFS分区!

EL5系统具有32个XFS分配组,而EL6系统只有4个。分配组允许XFS并行化并发文件系统操作。

给定可用空间量和服务器的CPU规格,您现有的EL6设置受到的限制agcount。请参阅Red Hat的注释。在这样的硬件上,其中存储空间不在多TB范围内,我通常每4GB分区空间指定一个分配组。至少要转到32以匹配您的EL5服务器...尝试使用这些参数重新格式化EL6分区,以查看是否存在性能差异...


对以上所有4种进行了尝试,但没有一个对我的基准测试性能产生可衡量的影响。
tmcallaghan 2012年

请参阅上面的编辑。EL5和EL6上的两个XFS分区的格式已大大不同。
ewwhite 2012年

感谢您一直以来的协助,我将重新格式化XFS,看看是否有帮助。
tmcallaghan 2012年

请发布结果。
ewwhite

3
我们发现透明大页面是问题所在。通过关闭它,我们的Centos6服务器的性能类似于Centos5。命令为“ $ echo never> / sys / kernel / mm / redhad_transparent_hugepage / enabled”。其他发行版则通过/ sys / kernel / mm / transparent_hugepage / enabled来实现”
tmcallaghan 2012年

0

当您运行iotop时,磁盘6.2上的内容在做什么?

另外,要读取的设备上的安装选项是什么?您可能需要研究noatime和relatime


我正在对MySQL应用程序进行基准测试,而不使用直接IO。
tmcallaghan 2012年

两台机器上的安装都是相同的,“ / dev / cciss / c0d0p5 / data xfs默认值为0 0”
tmcallaghan 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.