我一直在做一些虚拟化,现在想知道在虚拟机中使用日志文件系统是否是个好主意。
当然,日志会使速度变慢一些,但是在发生电源故障的情况下,托管文件系统的日志是否能够保持存储在其中的图像磁盘的一致性?
答案1
这是一个相当合理的问题,但遗憾的是,它没有一个简单的答案。如果我理解正确的话,你的意思是:通过在具有自己的日志文件系统的主机上使用具有自己的日志文件系统的虚拟机,我们实际上不是做了两次工作吗?我们难道不能只使用一个日志文件系统(最合理的是主机的),从而在不损害安全性的情况下提高速度吗?
这个问题的答案并不完全清楚。让我给你参考一下这篇学术论文两位作者正是研究了这种效应。不过,我们直接跳到他们的结论,在第 2 页底部,第一栏:
通过实验,我们得出了以下有趣的结论:(1) 对于以写入为主的工作负载,主机文件系统中的日志记录可能会导致性能显著下降;(2) 对于以读取为主的工作负载,嵌套文件系统甚至可以提高性能;(3) 嵌套文件系统不适合对 I/O 延迟敏感的工作负载。我们认为,还需要开展更多工作来研究虚拟化环境中文件系统的性能影响。我们的工作朝这个方向迈出了第一步,我们希望这些发现可以帮助文件系统设计人员为虚拟化环境构建更具适应性的文件系统。
我从中得出的结论是,情况比你的论点要复杂得多,研究得也比预期的少得多。从好的方面来看,随着对不同文件系统嵌套的进一步研究和理解,我们可以期待性能得到明显的改善。