优化 Centos 6.6 上的 SSD 存储 - KVM

优化 Centos 6.6 上的 SSD 存储 - KVM

我有一台 Dell R610,其硬件为:

  • H700突袭卡
  • 4xMicron MX100 512GB -> 配置 raid 10

我已经在此服务器上安装了Centos 6.6并配置:

  • KVM 虚拟化
  • raid 10 阵列的卷组
  • 每个来宾虚拟机使用卷组中的逻辑卷

我有一些疑问:

  • 我是否需要启用 dicard (TRIM) LVM(KVM 主机)和客户 VM 文件系统 (vda)?如果是,那么该怎么做?
  • 如何监控 SSD 耐用性
  • 我该如何优化性能

答案1

TRIM 在文件系统级别工作,因此当您为 KVM 域提供原始块设备时,您需要在域内启用 TRIM;您的主机无法在不检查域文件系统使用率的情况下知道域文件系统的使用情况。要启用此功能,您需要确保discard='unmap'在域的 XML 中的磁盘定义中添加了一个属性,这在以下位置有记录https://libvirt.org/formatdomain.html#elementsDisks

/etc/lvm/lvm.conf 中的设置issue_discards = 1意味着如果任何逻辑卷减少或删除,LVM 将向底层 PV 发出 TRIM。这对于正常的文件系统 TRIM 操作不是必需的。

要启动实际的 TRIM 操作,通常建议使用fstrim实用程序而不是添加discard挂载选项。定期从 cron 或类似程序运行此程序。手动运行它还会显示您是否已正确设置了所有内容。

为了监控你的SSD,我认为SMART工具就足够了,看一下输出smartctl -a /dev/sdX

优化通常涉及确保所有分区都正确对齐,并与普通磁盘相同;在必要时尽量减少写入。添加挂载选项,例如noatimenodiratime等。

答案2

如何监控 SSD 耐久性?

安装 fe SMARTmontools,SMART 是专为监控硬盘而设计的,现在它可以监控 SSD 参数(制造商决定的),还可以搜索写入周期、通电时间、通电计数。

找出您的 SSD 中有哪些闪存芯片,找到该芯片的规格,并获取平均写入周期。

根据我的经验,SSD 只会在控制器问题上出现故障,而不会在写入周期上出现故障,此时过度配置应该接管并用备件替换损坏的 SSD。

我该如何优化性能?

将其与芯片的“扇区”大小对齐,您可以通过 SSD 的规格找到它。

此外(虽然对于较旧的驱动器来说可能不再需要),只要您有其他选择,您就不应该完全写入 SSD。

这样垃圾收集就可以更好地进行。

我觉得http://www.storagesearch.com/ssd.html有很多您可能需要阅读的信息,以便更好地了解 SSD 的优点/缺点。

答案3

调整 Linux I/O 调度程序。我通常对 VM 或 SSD 服务器使用 NOOP,默认调度程序是 CFQ。您可以在此处阅读更多信息:

http://dev.nuodb.com/techblog/tuning-linux-io-scheduler-ssds

相关内容