我读到在镜像逻辑卷时使用某种日志来保持文件同步。您可以设置它以便此日志位于单独的物理卷或内存中。我还读到,如果日志在内存中,系统必须重新同步卷。
使用内存中的日志会影响性能吗?例如,启动机器需要更长的时间吗?重新同步时数据是否存在风险?
在这种情况下,我正在使用 Ubuntu 10.04。我相信它是lvm2。我找到的最清晰的文档是这里的 CentOS 文档。我也在看这个描述。
您可以添加您引用的链接吗?因为仅仅镜像是不需要日志的。当您使用日志文件系统时,通常会涉及日志(在相同或额外的设备上) - 如果您在下面的层(即块层)上使用或不使用镜像。
更新:好的,有了链接,现在事情就更清楚了。LVM镜像似乎与linux md(RAID 1)镜像有很大不同。
引用lvcreate 手册页:
指定可选参数“--corelog”将创建带有内存日志而不是基于磁盘(持久)日志的镜像。虽然这消除了对额外日志设备的需要并且可能稍微快一些,但它要求在每次实例化(例如重新启动)时重新同步整个镜像。
因此,使用基于内存的日志,您会在启动时受到显着的性能影响,并且当日志物理卷位于同一硬件磁盘上时,性能也会受到影响。
谷歌搜索了一下,使用 Linux 进行镜像mdadm似乎是 ATM 更好的方法。(您可以使用 md 设备作为某些 lvm 设置的物理设备。)
首先,它不需要额外的日志(并且不会在每次启动时进行昂贵的重新同步)。
其次,lvm镜像似乎不支持并行读取,即md镜像应该有更好的读取性能:
https://serverfault.com/questions/97845/lvm-mirroring-vs-raid1
https://serverfault.com/questions/126851/linux-lvm-mirror-vs-md-mirror