4.2. 네이티브 NVMe 다중 경로 활성화
이 절차에서는 네이티브 NVMe 다중 경로 솔루션을 사용하여 연결된 NVMe 장치에서 멀티패스를 활성화합니다.
사전 요구 사항
NVMe 장치가 시스템에 연결되어 있습니다.
패브릭 전송에 NVMe를 연결하는 방법에 대한 자세한 내용은 패브릭 장치보다 NVMe 개요 를 참조하십시오.
절차
커널에서 기본 NVMe 다중 경로가 활성화되어 있는지 확인합니다.
# cat /sys/module/nvme_core/parameters/multipath
명령은 다음 중 하나를 표시합니다.
N
- 기본 NVMe 다중 경로가 비활성화되어 있습니다.
Y
- 네이티브 NVMe 다중 경로가 활성화되어 있습니다.
네이티브 NVMe 멀티패스가 비활성화된 경우 다음 방법 중 하나를 사용하여 활성화합니다.
커널 옵션 사용:
커널 명령줄에
nvme_core.multipath=Y
옵션을 추가합니다.# grubby --update-kernel=ALL --args="nvme_core.multipath=Y"
64비트 IBM Z 아키텍처에서 부팅 메뉴를 업데이트합니다.
# zipl
- 시스템을 재부팅합니다.
커널 모듈 구성 파일 사용:
다음 콘텐츠를 사용하여
/etc/modprobe.d/nvme_core.conf
구성 파일을 만듭니다.options nvme_core multipath=Y
initramfs
파일 시스템을 백업합니다.# cp /boot/initramfs-$(uname -r).img \ /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img
initramfs
파일 시스템을 다시 빌드합니다.# dracut --force --verbose
- 시스템을 재부팅합니다.
선택 사항: 실행 중인 시스템에서 NVMe 장치의 I/O 정책을 변경하여 사용 가능한 모든 경로에서 I/O를 배포합니다.
# echo "round-robin" > /sys/class/nvme-subsystem/nvme-subsys0/iopolicy
선택 사항:
udev
규칙을 사용하여 I/O 정책을 영구적으로 설정합니다. 다음 콘텐츠를 사용하여/etc/udev/rules.d/71-nvme-io-policy.rules
파일을 생성합니다.ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin"
검증
시스템이 NVMe 장치를 인식하는지 확인합니다.
# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 a34c4f3a0d6f5cec Linux 1 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2 /dev/nvme0n2 a34c4f3a0d6f5cec Linux 2 250.06 GB / 250.06 GB 512 B + 0 B 4.18.0-2
연결된 모든 NVMe 하위 시스템을 나열합니다.
# nvme list-subsys nvme-subsys0 - NQN=testnqn \ +- nvme0 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme1 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1dd:pn-0x10000090fac7e1dd live +- nvme2 fc traddr=nn-0x20000090fadd5979:pn-0x10000090fadd5979 host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live +- nvme3 fc traddr=nn-0x20000090fadd597a:pn-0x10000090fadd597a host_traddr=nn-0x20000090fac7e1de:pn-0x10000090fac7e1de live
활성 전송 유형을 확인합니다. 예를 들어
nvme0 fc
는 장치가 파이버 채널 전송을 통해 연결되어 있음을 나타내며nvme tcp
는 장치가 TCP를 통해 연결되어 있음을 나타냅니다.커널 옵션을 편집한 경우 커널 명령줄에서 네이티브 NVMe 다중 경로가 활성화되어 있는지 확인합니다.
# cat /proc/cmdline BOOT_IMAGE=[...] nvme_core.multipath=Y
DM Multipath가 NVMe 네임스페이스(예:
nvme0c0n1
~nvme0c3n1)를 nvme
로 보고하는 지 확인합니다.0c3n1
~nvme3n1
# multipath -e -ll | grep -i nvme uuid.8ef20f70-f7d3-4f67-8d84-1bb16b2bfe03 [nvme]:nvme0n1 NVMe,Linux,4.18.0-2 | `- 0:0:1 nvme0c0n1 0:0 n/a optimized live | `- 0:1:1 nvme0c1n1 0:0 n/a optimized live | `- 0:2:1 nvme0c2n1 0:0 n/a optimized live `- 0:3:1 nvme0c3n1 0:0 n/a optimized live uuid.44c782b4-4e72-4d9e-bc39-c7be0a409f22 [nvme]:nvme0n2 NVMe,Linux,4.18.0-2 | `- 0:0:1 nvme0c0n1 0:0 n/a optimized live | `- 0:1:1 nvme0c1n1 0:0 n/a optimized live | `- 0:2:1 nvme0c2n1 0:0 n/a optimized live `- 0:3:1 nvme0c3n1 0:0 n/a optimized live
I/O 정책을 변경한 경우
round-robin
이 NVMe 장치의 활성 I/O 정책인지 확인합니다.# cat /sys/class/nvme-subsystem/nvme-subsys0/iopolicy round-robin
추가 리소스