Red Hat Training

A Red Hat training course is available for RHEL 8

6장. Red Hat High Availability 클러스터에서 액티브/패시브 NFS 서버 구성

Red Hat High Availability Add-On은 공유 스토리지를 사용하여 Red Hat Enterprise Linux High Availability Add-On 클러스터에서 고가용성 NFS 서버를 실행할 수 있도록 지원합니다. 다음 예제에서는 클라이언트가 유동 IP 주소를 통해 NFS 파일 시스템에 액세스하는 2-노드 클러스터를 구성하고 있습니다. NFS 서버는 클러스터의 두 노드 중 하나에서 실행됩니다. NFS 서버가 실행 중인 노드가 작동 상태가 되면 최소 서비스 중단으로 클러스터의 두 번째 노드에서 NFS 서버가 다시 시작됩니다.

이 사용 사례에서는 시스템에 다음 구성 요소가 포함되어야 합니다.

  • 각 노드에 대해 전원 펜싱이 구성된 2-노드 Red Hat High Availability 클러스터. 사설 네트워크가 필요하지는 않지만 사용하지 않는 것이 좋습니다. 이 절차에서는 Pacemaker를 사용하여 Red Hat High-Availability 클러스터를 생성하는 데 제공된 클러스터 예제를 사용합니다.
  • NFS 서버에 필요한 공용 가상 IP 주소입니다.
  • iSCSI, 파이버 채널 또는 기타 공유 네트워크 블록 장치를 사용하여 클러스터의 노드의 공유 스토리지입니다.

기존 2-노드 Red Hat Enterprise Linux High Availability 클러스터에서 고가용성/수동 NFS 서버를 구성하려면 다음 단계를 수행해야 합니다.

  1. 클러스터의 노드의 공유 스토리지에 있는 LVM 논리 볼륨에 파일 시스템을 구성합니다.
  2. LVM 논리 볼륨의 공유 스토리지에 NFS 공유를 구성합니다.
  3. 클러스터 리소스를 생성합니다.
  4. 구성한 NFS 서버를 테스트합니다.

6.1. Pacemaker 클러스터에서 XFS 파일 시스템을 사용하여 LVM 볼륨 구성

다음 절차에 따라 클러스터 노드 간에 공유되는 LVM 논리 볼륨을 스토리지에 생성합니다.

참고

클러스터 노드에서 사용하는 LVM 볼륨 및 해당 파티션과 장치는 클러스터 노드에만 연결되어야 합니다.

다음 절차에서는 LVM 논리 볼륨을 생성한 다음 Pacemaker 클러스터에서 사용할 해당 볼륨에 XFS 파일 시스템을 생성합니다. 이 예에서 공유 파티션 /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 이상의 경우 클러스터에서 Pacemaker에서 관리하는 볼륨 그룹이 시작할 때 자동으로 활성화되지 않도록 --setautoactivation n 플래그를 지정합니다. 생성 중인 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

      RHEL 8.4 및 이전 버전의 시작 시 클러스터의 Pacemaker에서 관리하는 볼륨 그룹이 자동으로 활성화되지 않도록 하는 방법에 대한 자세한 내용은 여러 클러스터 노드에서 볼륨 그룹 활성화를 참조하십시오.

    3. 새 볼륨 그룹에 실행 중인 노드의 시스템 ID와 볼륨 그룹을 생성한 노드의 시스템 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