Ploop 对于 OpenVZ 来说是不是一个坏主意?

Ploop 对于 OpenVZ 来说是不是一个坏主意?

我知道使用 Ploop 时,在容器中添加/删除文件时会丢失磁盘空间,并且您必须手动压缩容器,但我还读到,如果您重新启动或发生崩溃,容器将无法恢复。

有没有办法正确重启 OpenVZ 服务器以避免容器损坏?

答案1

即使不正常地关闭了 ploop 容器,通常也只需执行 fsck 即可。这与在写入操作期间关闭实际硬件没有太大区别。由于我猜您将在这些 ploop 上使用带有事务日志的文件系统,因此您不应该遇到更多问题。

正如 Brian 提到的,正确关闭主机节点将使您的容器保持清洁并且它们的 ploop 不会被安装。

如果您使用的基于目录的容器使用与主机节点相同的文件系统,那么您现在就有很小的损坏几率。我认为实际上没有太大区别,只是您可能需要考虑恢复时间。许多 ploop 可能需要比一个主机节点的文件系统更长的时间来 fsck,并且可能需要大量的手动交互。

另一方面,如果您的主机节点有一个非常大的文件系统,则 fsck 可能需要很长时间,并且会导致所有这些容器在 fsck 期间处于关闭状态。使用 ploop 的容器可以在主机节点恢复后以交错方式启动,前提是主机节点本身没有要 fsck 的内容。

您可以通过某种高可用性设置来缓解这种情况,其中主机节点从中央存储加载其容器数据并在发生故障时相互打开/关闭,但我认为这太过分了。

您考虑使用 ploop 的原因是什么?我们考虑过通过 NFS 提高性能,因为容器中的许多小文件确实会降低速度。但是既然您提到了文件系统损坏,那么这可能不是您的情况。

答案2

不,您必须等到每个 ploop 都正确停止。

必须启动 ploop 容器才能通过其根目录访问其文件。

simpfs 容器是类似于 chroot 的目录结构,因此无论开启/关闭都可以访问。

我管理着数千个容器,我不能浪费时间等待。每当我需要访问或进行迁移时,我必须等待 ploop 容器启动,或者等到它关闭,才能管理有 ploop 容器的主机。此外,如果 ploop 损坏,那么你必须从头开始,它就没了。由于我经历过这种损坏,不止一次,也不两次,所以我称它为不可靠的系统,无论它应该有多好。

相关内容