jhf*_*ntz 8 performance filesystems lvm
我们有一个使用 LVM 拆分的大驱动器。我们将一个段分配给根文件系统,将其他几个段分配给其他文件系统。然后我们想给根文件系统增加更多的空间,所以我们在未分配的一端雕刻出另一个段并添加它(意味着根文件系统由两个不相交的段组成)。
最近我们遇到了一些 I/O 性能问题,我们认为不连续的根卷可能是罪魁祸首。我们正在考虑移动事物以使根卷成为一个(连续)段,以期提高性能(认为这将使访问事物变得更容易)。
另一个流派是 LVM 已经解决了所有这些问题,并且不会产生任何区别(除了使驱动器布局的图形更紧凑一些)。
我们为两段式的数量可能付出的代价是什么?
将不连续的 PE 块分配给同一个 LV 应该不会对性能造成明显影响,除非您正在做一些非常古怪的事情,例如使 LV 增量非常小并且多次增大 LV(同时对许多 LV 进行相同的操作)相同的 VG)——这会导致大量碎片。
也就是说,任何卷管理系统(包括 LVM)都可以使读取片段成为可能,否则这些读取可能是顺序的,但我认为这里的情况并非如此。如果您的文件系统位于仅由两个不连续的范围分配组成的 LV 上,而这两个范围在其他方面是连续的,那么它绝对不会导致可察觉的(甚至可能无法测量的)问题。
不能保证您对该 LV 的两次分配是连续的,但除非您的 VG 的未分配 PE 存在一些碎片,否则它们将是连续的。(只有在频繁添加和删除 LV 到同一个 VG 时才会发生这种情况)
如果这样做成本低廉,那么您可以考虑通过进行文件级备份并从 PV 上重建底层 VG 来对 LV 进行碎片整理。