32.5. 固态磁盘调优注意事项

固态磁盘 (SSD) 使用 NAND 闪存芯片而不是轮转磁盘来存储持久数据。SSD 为它们的完整逻辑块范围提供数据的持续访问时间,而且不会像轮转相对应的项一样实现可测量的查找成本。它们每 GB 存储空间的成本更大,且存储密度较低,但其延迟比 HDD 更高的吞吐量。

通常,性能会降级为 SSD 上使用的块,对磁盘的容量造成影响。降级程度因供应商而异,但所有设备在这种情形中都降级。启用丢弃行为有助于减少此降级。如需更多信息,请参阅丢弃未使用块的类型

默认的 I/O 调度程序和虚拟内存选项适合与 SSD 一起使用。在配置可影响 SSD 性能的设置时,请考虑以下因素:

I/O 调度程序

任何 I/O 调度程序都应该能与大多数 SSD 一起正常工作。但是,与任何其他存储类型一样,红帽建议采用基准测试来确定给定工作负载的最佳配置。在使用 SSD 时,红帽建议仅针对特定工作负载更改 I/O 调度程序。有关如何在 I/O 调度程序间切换的步骤,请参阅 /usr/share/doc/kernel-version/Documentation/block/switching-sched.txt 文件。

对于单队列 HBA,默认的 I/O 调度程序为 deadline。对于多队列 HBA,默认的 I/O 调度程序为 none。有关如何设置 I/O 调度程序的详情,请参考 设置磁盘调度程序

虚拟内存
与 I/O 调度程序一样,虚拟内存 (VM) 子系统不需要特殊的调优。由于 SSD 上的 I/O 的快速性质,尝试关闭 vm_dirty_background_ratiovm_dirty_ratio 设置,因为增加了 write-out 活动通常对磁盘其他操作的延迟造成负面影响。但是,这个调整可以生成更多整体 I/O,因此通常不建议在不进行特定工作负载测试的情况下使用。
交换
SSD 也可以用作交换设备,并且可能会生成良好的页面和页面性能。