云中的 Linux VM(如 Azure)- 是否使用 LVM?

云中的 Linux VM(如 Azure)- 是否使用 LVM?

我们的最终目标是在未来的任何时候轻松增加分区上的磁盘空间。无论是系统驱动器需要更多空间,还是 /var 之类的东西

在研究最适合用于磁盘分区的方法时,我发现了这篇文章: https://docs.microsoft.com/en-us/azure/virtual-machines/linux/configure-lvm

其中表示,“虽然可以在连接到虚拟机的任何磁盘上配置 LVM,但默认情况下,大多数云映像不会在操作系统磁盘上配置 LVM。这是为了防止在操作系统磁盘曾经被占用时出现重复卷组的问题。连接到相同分布和类型的另一个虚拟机,即在恢复场景期间,因此建议仅在数据磁盘上使用 LVM。”

但即使在系统(非数据磁盘)上,如果您不使用 LVM,那么如果需要,您将如何扩展此磁盘分区,因为我们无法访问 VM 控制台?

例如,最近在我们的内部环境(不是在 Azure 中),我们有一个根本不使用 LVM 的 VM,并且需要扩展一个中间分区。我们找到的唯一解决方案是从启动磁盘启动虚拟机并使用 GPARTED。 Azure 中没有此选项。

如果出现相同情况,如何处理或建议在 Azure VM 中处理? (如果中间的分区需要额外的空间,则在非 LVM 磁盘上)主要是尝试规划我们应该如何构建 Linux VM 以避免将来出现此类问题。

答案1

如果出现相同情况,如何处理或建议在 Azure VM 中处理? (如果中间的分区需要额外空间,则在非 LVM 磁盘上)

查看搜索结果,我会说 Azure 建议您不要这样做。

提供的云映像出现将根分区放在磁盘的末尾。我认为这个想法是将数据分区放在单独的磁盘上。

例如,此链接显示了来自 Azure 市场的这种格式的 CentOS 映像,并且还表明使用 Ubuntu 映像测试了相同的过程。它还说明您可以fdisk在正在运行的系统上删除操作系统分区并重新创建它以反映新的可用空间。即,这不需要启动到 GPARTED 磁盘。然后,您必须重新启动,然后才能调整分区内的文件系统的大小。可能还有其他方法可以做到这一点。

https://blogs.msdn.microsoft.com/cloud_solution_architect/2016/05/24/step-by-step-how-to-resize-a-linux-vm-os-disk-in-azure-arm/

答案2

LVM 带来的使用损失可以忽略不计,并且在某些情况下可能值得使用,特别是大型数据库分区。

尽管如此,在操作系统分区中,我完全同意您可能不需要它。

另请注意,如果您使用的文件系统允许在线增长,则在其他情况下您可能会摆脱困境并且不需要再次使用 LVM。

例如,xfs 文件系统,以及 @sourcejedi 正确指出的,ext4 和 btrfs。

至于蔚蓝,如果您确实需要从侧面启动,只需要一点计划。安装时在 VM 中设置一个 200-500MB 的超小型恢复/启动分区,并包含救援映像。

相关内容