我正在运行一个私有云(opennebula,KVM),其中我直接使用 LVM 逻辑卷运行虚拟机,并使用文件系统上的磁盘映像(一个更快,另一个更容易迁移),所有这些都在 raid5 之上。
我设法采购了一些可以放入服务器的 SSD,我想将它们用作缓存,最有可能使用 DM-cache(因为 bcache 需要磁盘重新格式化并且 flashcache 仍然不是主线)。
现在,由于我想缓存多个 LV,我可以为每个 LV 创建单独的元数据和缓存分区,或者我可以创建一个新的 LV,将 dm-cache 放在其上,然后将其用作 PV 并将之前的 LV 逐个移动到那里。
因此最终的分层将是:
md1
== sda+sdb+sdc+sddPV0
== md1LV0
<- PV0(我打算不缓存主机操作系统的卷)PV1
== LV0 + dmcache- (
LV1
,,,LV2
...LV3
)<-PV1
所以我的问题是:
- 这有意义吗?:)
- 额外的 LVM 层是否会对性能造成显著 (>5%) 的损失?
- 这个设置中是否存在我应该注意的固有不兼容问题?