AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 518329
Accepted
eTiMaGo
eTiMaGo
Asked: 2013-06-26 03:25:06 +0800 CST2013-06-26 03:25:06 +0800 CST 2013-06-26 03:25:06 +0800 CST

XFS 在 LVM'ed RAID 上的性能较慢,在 RAW 或非 LVM 时更快

  • 772

我正在设置的服务器有一个奇怪的问题。它适用于文件共享类型的网站,因此需要快速的 IO 和充足的容量。操作系统是 CentOS 6.4 64 位

有问题的服务器是 HP DL360p,具有 18 个驱动器托架,在 RAID50 中装有 2TB SAS 驱动器

还有一个 HP StorageWorks SAS 扩展托架,另外还有 12x2TB,也在 RAID50 中

RAID 是使用服务器的 BIOS 配置实用程序配置的,使用的控制器非常好,带有备用电池和 2GB FWBC。

现在,最初我们将它们设置为单独的卷,但由于我们软件的特殊性,使用单个大卷会更好。

因此,我设置了一个组合这两个卷的 LVM 卷,然后使用 XFS 格式化逻辑卷

问题是,由此产生的速度令人失望。运行 hdparm -tT 可获得 300MB/s 的最佳读取速度

所以我做了一些测试并得到了这个:

两者都没有 LVM,XFS:两个卷的读取速度都在 700MB/s 左右

使用 LVM,但未安装卷:1000-1100MB/s

在条带模式下使用 LVM,未安装卷:1100-1300MB/s

所以不知何故,XFS 似乎限制了速度……我在格式化和挂载时尝试了一些更高级的选项,例如 -l internal,启用惰性计数,nobarrier,但这并没有带来任何改进。

我发现唯一可能是个问题,RAID 卷的条带大小不匹配(一个设置为 512KB,另一个设置为 256KB),所以我重新配置它们以匹配,这需要几个小时更多的。我还用 su=512k,sw=28 重新格式化了卷(sw=28 只是一个猜测,因为总共有 28 个活动 HDD... 或者我应该将 RAID 卷设置为 2?)

我很想干掉整个事情并尝试 ZFS,这似乎很有希望,但我认为配置它会远远超出我的技能水平......

因此,如果有人对此有任何经验或建议,将不胜感激!

centos
  • 1 1 个回答
  • 9364 Views

1 个回答

  • Voted
  1. Best Answer
    ewwhite
    2013-06-26T05:06:44+08:002013-06-26T05:06:44+08:00

    您的应用程序的读/写吞吐量和 IOPS 要求是什么?存储性能并不总是与阵列吞吐量或原始带宽有关。顺序读/写只是 I/O 活动的一部分。

    更准确的测试是针对已挂载的文件系统运行bonnie++或iozone ... 甚至运行您的应用程序并测量实际工作负载。


    如果我是你,我会转储内部和外部控制器并整合到HP Smart Array P822 控制器- 部件 #615418-B21。

    这将允许您在一个阵列中处理您的内部磁盘和外部机箱。P822 还默认启用智能阵列高级功能集 (SAAP) 。此时,您可以使用正确的 RAID 级别(可能是 RAID 1+0)以及为设置分配一个或多个全局热备件的能力来正确划分阵列。控制器还将利用双路径连接到您的外部存储。您还可以安排在内部和外部存储之间条带化或镜像驱动器对。很大的灵活性。

    不过,此设置的最大优势在于附带的HP SmartCache SSD 缓存功能。这类似于LSI 的 Cachecade。配备一两个 SSD,您可以将热数据保存在延迟较低的 SSD 上,而不必转至旋转磁盘。

    不过,这只是硬件方面...


    对于 XFS 卷,尤其是在 HP 设备上,我不使用 LVM(不过有些人会这样做)。对于 HP 控制器,块设备表示是抽象的,因此我使用了一个非常基本的文件系统格式化字符串:

    mkfs.xfs -f -d agcount=32 -l size=128m,version=2 /dev/sdX`
    

    fstab 有几个挂载选项:

    UUID=4a0e1757 /data   xfs     noatime,logbufs=8,logbsize=256k 1 2
    

    但是对于 RHEL6,您还应该考虑一些调度和性能调整功能。主要的是调整框架。

    yum install tuned tuned-utils
    tuned-adm profile enterprise-storage 
    

    这将根据下面的时间表即时设置 I/O 升降机、禁用写入屏障并设置其他一些注重性能的选项。

    在此处输入图像描述


    此设置上的 ZFS 不会帮助您。您必须完全转储 Smart Array 控制器并转至SAS HBA 或失去所有 ZFS RAID 功能并使用一个大型块设备(这将受益于我上面建议的 Smart Array P822)。两者都需要某种形式的写缓存(ZIL),我认为它不能解决可管理性问题。ZFS 需要更多的预先计划。

    • 3

相关问题

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 使用 crontab 和 /etc/cron.hourly,daily,weekly 的区别

  • 持续监控许多服务器运行状况的简单方法?

  • Hudson 无法在 tomcat5 中启动

  • CentOS 的依赖挑战

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve