我应该对磁盘进行 LVM 分区吗?

我应该对磁盘进行 LVM 分区吗?

我有几台服务器(Ubuntu 16),我的前任配置和使用 LVM 很乱(对我来说,可能不是)。我必须安装新服务器(Ubuntu 18),但我不会像现在这样弄得一团糟。所以我开始寻找最佳实践和这样做的理由,很难找到答案。

我现在的想法是,将数据和操作系统分开(只有一个驱动器用于 /boot,不要问我为什么)。现在我可以添加磁盘并将其添加到用于操作系统或数据的卷组中。如果驱动器坏了,只有一个卷组会丢失,对吗?

                                                      mount on /
                                                  with the swap file            mount on /data
                                                          ^                             ^
                                                          |                             |
                                                          |                             |
                                              +-----------+----------+      +-----------+----------+
                                              |                      |      |                      |
                                              |    LV: vg_1_lv_1     |      |    LV: vg_2_lv_2     |
                                              |                      |      |                      |
                                              +----------+-----------+      +----------+-----------+
                                                         |                             |
                                                         |                             |
                                              +----------+-----------+      +----------+-----------+
                        mount on /boot        |                      |      |                      |
                               ^              |       VG: vg_1       |      |       VG: vg_2       |
                               |              |                      |      |                      |
                               |              +----------+-----------+      +----------+-----------+
                               |                         |                             |
+-------------+      +---------+-------+      +----------+-----------+      +----------+-----------+
|  /dev/sda1  |      |   /dev/sda2     |      |                      |      |                      |
|  BIOS boot  |      | Linux filesystem|      |    PV: /dev/sdb      |      |    PV: /dev/sdc      |
+------+------+      |      ext4       |      |                      |      |                      |
       |             +---------+-------+      +----------+-----------+      +----------+-----------+
       |                       |                         |                             |
+------+-----------------------+-------+      +----------+----------+       +----------+----------+
|               /dev/sda               |      |      /dev/sdb       |       |      /dev/sdc       |
+--------------------------------------+      +---------------------+       +---------------------+

我有几个问题:

  • 在 LVM 实例中使用磁盘之前,是否需要对其进行分区?
    有人回答“是”来源并在文献中红帽它说“不”来源

  • 如果我需要对磁盘进行分区,我选择哪种类型?
    我的意思是长分区类型列表

  • 使用整个磁盘不好吗?为什么?
    第二点,TLDP LVM 如何操作不建议使用整个磁盘作为 PV,并解释一下,但在 RedHat Doc(上文)中,他们没有对此发出警告。实际上,我相当滥用这种用法。

答案1

由于我忽略了问题的链接,我认为这是一个重复的问题,让我们研究一个更新的答案,因为链接的问题没有被接受并且有点过时。

总结给出的答案:为什么我们要对 LVM 使用普通块设备而不是创建分区?

优点:

  • 块对齐不再需要分区,LVM 完全有能力自行完成此操作
  • 调整磁盘/卷大小时的灵活性,否则在特定情况下需要重新启动。在虚拟化场景中尤其令人烦恼。
  • 不需要 parted、fdisk、kpartx 等工具来管理此类卷/磁盘

缺点:

  • 新手的困惑(LVM 信息泄露到虚拟机管理程序中,在故障排除时存在潜在危险)

从纯技术角度来看,没有理由添加分区,并且可以通过适当的配置(过滤 LVM 设备)和对新员工的培训来缓解谨慎的态度。

不添加分区可以使更改更容易,而不会中断服务,但另一种选择更加危险且容易出错。

如果有帮助,我的建议是使用小磁盘进行启动,并使用 LVM 进行其余操作 - 我通常对 CentOS VM 模板的设置是:

512M Disk, EFI/MBR boot volume. Hosts /boot|/boot/efi respectively.
14G Disk, Template LVM PV disk
6G root (/) volume
5G /var volume
1G /var/tmp
Rest /var/log

克隆后,使用 pvresize、lvresize、resize2fs/xfs_growfs 调整大小以满足您的需要。

答案2

不,不要费心对 LVM PV 进行分区

整个磁盘设备(又称 LUN)上的 Linux LVM PV 工作正常,并允许跳过分区步骤。需要谨慎的唯一原因是工具或人员会假设分区并意外重新格式化。

是的,您需要所有 PV 才能访问 VG。(例外情况包括冗余卷类型,如镜像或 raid。)每个 VG 简单的一个 PV 就可以了,因为通常可以在线扩展磁盘。

磁盘布局取决于个人喜好。例如,通过在 LVM 上安装带有根文件系统的发行版,可以轻松实现一个小型操作系统磁盘。安装程序可能会默认对根 VG 的 PV 进行分区,这没问题。稍后,在单独的磁盘上创建数据 VG,并在其中存储数据和应用程序的挂载点。

相关内容