rhel6将一对SSD作为条带化LVM的kickstartconfiguration作为/ data

我正在做这样的事情,格式化文件系统需要很长时间,所以我猜我有什么问题。

sda正在旋转,sdb,sdc和sdd是SSD。

clearpart --drives=sda,sdb,sdc,sdd --initlabel part swap --recommended --ondisk=sda part / --size=4096 --grow --ondisk=sda part pv.11 --size=100 --grow --ondisk=sdb part pv.12 --size=100 --grow --ondisk=sdc part pv.13 --size=100 --grow --ondisk=sdd volgroup datavg --pesize=4096 pv.11 pv.12 pv.13 logvol /data --fstype=ext4 --name=datalv --vgname=datavg --size=100 --grow --percent=100 raid.11 raid.12 raid.13 

问题:

  1. 我应该通过ext4选项?
  2. 我的4M条纹是否正确?
  3. 我应该在LVM中调整其他任何东西吗?

目标:

  1. 将三个SSD磁盘一起分条以在Cassandra负载下进行性能testing。
  2. 支持TRIM
  3. 正确使用驱动器延长使用寿命

谢谢!

艾伦

如果通过“条纹”来表示你的体型,我们在这里谈论两个不同的东西。 物理范围只是您可以扩展逻辑卷的一大块存储的大小。 条纹是分成多个存储设备的一大块存储。 物理范围没有这样的要求。

我认为会发生什么,将是你的LV跨越所有三个磁盘,但以一种方式,将先填满磁盘sdb,然后sdc,最后sdd。

我不确定LVM是否是最合乎逻辑的方法。 就个人而言,我会去与mdadm软件RAID设置。 这将使一个实际的RAID设置,而不是一个跨越三个磁盘的LV。

除此之外:没有更多信息,无法判断您的4MiB条纹是否合适。 条带的最佳大小取决于平均请求大小的大小,平均请求大小是来自磁盘集的读取请求的平均大小。 您需要做的是在该机器上运行典型的负载,并使用SAR或类似的东西来衡量您的平均请求大小。 然后,重新安装机器(或重新格式化RAID组),并使用平均请求大小除以2(!)a作为数据块的大小。 第三个磁盘将保存您的奇偶校验块(假设您正在构buildRAID 5集)。 您的条带大小将会是(avg req size / 2)* 3,带有2个数据块和一个奇偶校验块,所有大小(avg req size / 2)。

我希望我说的是正确的:)我累了。 我明天再去看看,如果我有任何意义:)

通常,平均请求的大小应该是千字节的,而不是兆字节,但是没有测量​​就无法知道你的具体情况。

也就是说,我几乎没有将LVM用于类似RAID的scheme的经验。

我最终做了这样的事情:

 # Partition clearing information clearpart --drives=sda,sdb,sdc,sdd --initlabel part swap --recommended --ondisk=sda part / --size=4096 --grow --ondisk=sda # create the ssd partitions part pv.11 --size=100 --grow --ondisk=sdb part pv.12 --size=100 --grow --ondisk=sdc part pv.13 --size=100 --grow --ondisk=sdd %post vgcreate cassvg /dev/sdb1 /dev/sdc1 /dev/sdd1 lvcreate -l 100%FREE --stripes 3 --stripesize 4096 --name casslv cassvg mkfs.ext4 -b 4096 -E stride=128,stripe-width=128 /dev/cassvg/casslv mkdir -p /cache/cassandra/storage echo "/dev/mapper/cassvg-casslv /cache/cassandra/storage ext4 discard, noatime,nodiratime 1 2" >> /etc/fstab 

我将卷和逻辑创build移到了%post部分,以避免在centos6.2中使用更新的initramfs kickstart环境。 在%post步骤中创build卷和逻辑,使用正确的主机名创build它们,以便在运行时正确安装。

有一些复杂的方法可以解决initramfs问题,但是当我将这些应用程序数据卷移动到%post时,它看起来像是一个漏洞。