Red Hat Training

A Red Hat training course is available for RHEL 8

18.3. NVMe 장치에서 DM Multipath 활성화

네이티브 NVMe 멀티패스를 비활성화하여 연결된 NVMe 장치에서 DM Multipath를 활성화할 수 있습니다.

사전 요구 사항

절차

  1. 네이티브 NVMe 멀티패스가 비활성화되어 있는지 확인합니다.

    # cat /sys/module/nvme_core/parameters/multipath

    명령은 다음 중 하나를 표시합니다.

    N
    기본 NVMe 다중 경로가 비활성화되어 있습니다.
    Y
    네이티브 NVMe 다중 경로가 활성화되어 있습니다.
  2. 네이티브 NVMe 멀티패스를 활성화하면 다음 방법 중 하나를 사용하여 비활성화합니다.

    • 커널 옵션 사용:

      1. 커널 명령줄에서 nvme_core.multipath=Y 옵션을 제거합니다.

        # grubby --update-kernel=ALL --remove-args="nvme_core.multipath=Y"
      2. 64비트 IBM Z 아키텍처에서 부팅 메뉴를 업데이트합니다.

        # zipl
      3. 시스템을 재부팅합니다.
    • 커널 모듈 구성 파일 사용:

      1. /etc/modprobe.d/nvme_core.conf 파일에서 nvme_core multipath=Y 옵션 행을 제거합니다.
      2. initramfs 파일을 백업합니다.

        # cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname r).bak.$(date +%m%d-%H%M%S).img
      3. initramfs 를 다시 빌드합니다.

        # cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img
        # dracut --force --verbose
      4. 시스템을 재부팅합니다.
  3. DM Multipath를 활성화합니다.

    # systemctl enable --now multipathd.service
  4. 사용 가능한 모든 경로에 I/O를 배포합니다. /etc/multipath.conf 파일에 다음 내용을 추가합니다.

    devices {
            device {
                    vendor "NVME"
                    product ".*"
                    path_grouping_policy group_by_prio
            }
    }
    참고

    DM Multipath가 NVMe 장치를 관리할 때 /sys/class/nvme-subsys0/iopolicy 구성 파일은 I/O 배포에 영향을 미치지 않습니다.

  5. multipathd 서비스를 다시 로드하여 구성 변경 사항을 적용합니다.

    # multipath -r

검증

  • 네이티브 NVMe 멀티패스가 비활성화되어 있는지 확인합니다.

    # cat /sys/module/nvme_core/parameters/multipath
    N
  • DM 다중 경로가 nvme 장치를 인식하는지 확인합니다.

    # multipath -l
    
    eui.00007a8962ab241100a0980000d851c8 dm-6 NVME,NetApp E-Series
    size=20G features='0' hwhandler='0' wp=rw
    `-+- policy='service-time 0' prio=0 status=active
      |- 0:10:2:2 nvme0n2 259:3 active undef running
    `-+- policy='service-time 0' prio=0 status=enabled
      |- 4:11:2:2 nvme4n2 259:28 active undef running
    `-+- policy='service-time 0' prio=0 status=enabled
      |- 5:32778:2:2 nvme5n2 259:38 active undef running
    `-+- policy='service-time 0' prio=0 status=enabled
      |- 6:32779:2:2 nvme6n2 259:44 active undef running