搜索

第 6 章 在红帽高可用性集群中配置主动/被动模式的 NFS 服务器

download PDF

红帽高可用性附加组件为在使用共享存储的 Red Hat Enterprise Linux High Availability Add-On 集群上运行高可用的主动/被动 NFS 服务器提供支持。在以下示例中,您要配置一个双节点集群,其中客户端通过浮动 IP 地址访问 NFS 文件系统。NFS 服务器运行在集群的两个节点之一上。如果运行 NFS 服务器的节点出现问题,则 NFS 服务器会在集群的第二个节点上再次启动,以实现服务中断的最小化。

这个用例需要您的系统包括以下组件:

  • 一个双节点 Red Hat High Availability 集群,为每个节点配置了电源隔离功能。我们建议使用专用网络,但这不是必须的。此流程使用 使用 Pacemaker 创建红帽高可用性集群 中提供的集群示例。
  • NFS 服务器需要的一个公共虚拟 IP 地址。
  • 集群中节点的共享存储,使用 iSCSI、光纤或其他共享网络块设备。

在现有双节点 Red Hat Enterprise Linux High Availability 集群中配置高可用性的主动/被动 NFS 服务器需要执行以下步骤:

  1. 在共享存储上的 LVM 逻辑卷中为集群中的节点配置文件系统。
  2. 在 LVM 逻辑卷的共享存储中配置 NFS 共享。
  3. 创建集群资源。
  4. 测试您配置的 NFS 服务器。

6.1. 在 Pacemaker 集群中使用 XFS 文件系统配置一个 LVM 卷

使用以下流程在集群节点之间共享的存储上创建一个 LVM 逻辑卷。

注意

LVM 卷以及集群节点使用的对应分区和设备必须只能连接到集群节点。

下面的流程创建了一个 LVM 逻辑卷,然后在该卷上创建一个 XFS 文件系统,以便在 Pacemaker 集群中使用。在这个示例中,使用共享分区 /dev/sdb1 来存储从中创建 LVM 逻辑卷的 LVM 物理卷。

流程

  1. 在集群的两个节点上,执行以下步骤将 LVM 系统 ID 的值设置为系统的 uname 标识符值。LVM 系统 ID 将用于确保只有集群可以激活卷组。

    1. /etc/lvm/lvm.conf 配置文件中的 system_id_source 配置选项设置为 uname

      # Configuration option global/system_id_source.
      system_id_source = "uname"
    2. 验证节点上的 LVM 系统 ID 是否与节点的 uname 匹配。

      # lvm systemid
        system ID: z1.example.com
      # uname -n
        z1.example.com
  2. 创建 LVM 卷并在该卷上创建一个 XFS 文件系统。由于 /dev/sdb1 分区是共享的存储,因此您仅在一个节点上执行这一部分的步骤。

    注意

    如果您的 LVM 卷组包含一个或多个远程块存储上的物理卷,如 iSCSI 目标,红帽建议您确保服务在 Pacemaker 启动之前启动。有关为 Pacemaker 集群使用的远程物理卷配置启动顺序的详情,请参考 为不由 Pacemaker 管理的资源依赖项配置启动顺序

    1. 在分区 /dev/sdb1 上创建一个 LVM 物理卷。

      [root@z1 ~]# pvcreate /dev/sdb1
        Physical volume "/dev/sdb1" successfully created
      注意

      如果您的 LVM 卷组包含一个或多个远程块存储上的物理卷,如 iSCSI 目标,红帽建议您确保服务在 Pacemaker 启动之前启动。有关为 Pacemaker 集群使用的远程物理卷配置启动顺序的详情,请参考 为不由 Pacemaker 管理的资源依赖项配置启动顺序

    2. 创建由物理卷 /dev/sdb1 组成的卷组 my_vg

      对于 RHEL 8.5 及之后的版本,指定 --setautoactivation n 标志来确保集群中由 Pacemaker 管理的卷组在启动时不会自动激活。如果您要为正在创建的 LVM 卷使用现有卷组,您可以使用 vgchange --setautoactivation n 命令为卷组重置此标记。

      [root@z1 ~]# vgcreate --setautoactivation n my_vg /dev/sdb1
        Volume group "my_vg" successfully created

      对于 RHEL 8.4 及更早版本,使用以下命令创建卷组:

      [root@z1 ~]# vgcreate my_vg /dev/sdb1
        Volume group "my_vg" successfully created

      有关确保集群中 Pacemaker 管理的卷组不会在启动 RHEL 8.4 及更早版本时自动激活的信息,请参阅 确保卷组在多个集群节点上不被激活

    3. 确认新卷组带有您要运行的节点的系统 ID,并从这个节点中创建卷组。

      [root@z1 ~]# vgs -o+systemid
        VG    #PV #LV #SN Attr   VSize  VFree  System ID
        my_vg   1   0   0 wz--n- <1.82t <1.82t z1.example.com
    4. 使用卷组 my_vg 创建逻辑卷。

      [root@z1 ~]# lvcreate -L450 -n my_lv my_vg
        Rounding up size to full physical extent 452.00 MiB
        Logical volume "my_lv" created

      您可以使用 lvs 命令显示逻辑卷。

      [root@z1 ~]# lvs
        LV      VG      Attr      LSize   Pool Origin Data%  Move Log Copy%  Convert
        my_lv   my_vg   -wi-a---- 452.00m
        ...
    5. 在逻辑卷 my_lv 上创建一个 XFS 文件系统。

      [root@z1 ~]# mkfs.xfs /dev/my_vg/my_lv
      meta-data=/dev/my_vg/my_lv       isize=512    agcount=4, agsize=28928 blks
               =                       sectsz=512   attr=2, projid32bit=1
      ...
  3. (RHEL 8.5 及更高版本)如果您通过在 lvm.conf 文件中设置 use_devicesfile = 1 来启用设备文件的使用,请将共享设备添加到集群中第二个节点上的设备文件中。默认情况下,不启用设备文件的使用。

    [root@z2 ~]# lvmdevices --adddev /dev/sdb1
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.