NVMe 스토리지에 대한 ESXi 환경을 준비하는 방법을 알아봅니다. 구성 요구 사항은 사용하는 NVMe 전송 유형에 따라 변경될 수 있습니다. NVMe over RDMA(RoCE v2)를 사용하는 경우 일반적인 요구 사항 외에 무손실 이더넷 네트워크도 구성해야 합니다.
NVMe over PCIe에 대한 요구 사항
ESXi 스토리지 환경에는 다음 구성 요소가 포함되어야 합니다.
- 로컬 NVMe 스토리지 디바이스.
- 호환되는 ESXi 호스트.
- 하드웨어 NVMe over PCIe 어댑터 어댑터를 설치하면 ESXi 호스트가 이를 감지하여 vSphere Client에 프로토콜이 PCIe로 표시된 스토리지 어댑터(vmhba)로 표시합니다. 어댑터는 구성할 필요가 없습니다.
NVMe over RDMA(RoCE v2)에 대한 요구 사항
- NVMe over RDMA(RoCE v2) 전송을 지원하는 NVMe 스토리지 어레이.
- 호환되는 ESXi 호스트.
- 무손실 네트워크를 지원하는 이더넷 스위치.
- RoCE(RDMA over Converged Ethernet) v2를 지원하는 네트워크 어댑터. 어댑터를 구성하려면 ESXi에서 NVMe over RDMA(RoCE v2) 구성 항목을 참조하십시오.
- 소프트웨어 NVMe over RDMA 어댑터. 이 소프트웨어 구성 요소는 ESXi 호스트에서 사용하도록 설정되고 적절한 네트워크 RDMA 어댑터에 연결되어 있어야 합니다. 자세한 내용은 소프트웨어 NVMe over RDMA 또는 NVMe over TCP 어댑터 추가 항목을 참조하십시오.
- NVMe 컨트롤러. 소프트웨어 NVMe over RDMA 어댑터를 구성한 후에 컨트롤러를 추가해야 합니다. NVMe over Fabrics용 컨트롤러 추가의 내용을 참조하십시오.
- 무손실 이더넷. NVMe over RDMA에 대한 무손실 이더넷 구성의 내용을 참조하십시오.
NVMe over Fibre Channel에 대한 요구 사항
- NVMe를 지원하는 파이버 채널 스토리지 어레이. 자세한 내용은 Fibre Channel SAN과 함께 ESXi 사용 항목을 참조하십시오.
- 호환되는 ESXi 호스트.
- 하드웨어 NVMe 어댑터. 일반적으로, NVMe를 지원하는 파이버 채널 HBA입니다. 어댑터를 설치하면 ESXi 호스트가 이를 감지하여 vSphere Client에 스토리지 프로토콜이 NVMe로 표시된 표준 파이버 채널 어댑터(vmhba)로 표시합니다. 하드웨어 NVMe 어댑터는 별도로 구성하지 않고 곧바로 사용할 수 있습니다.
- NVMe 컨트롤러. 컨트롤러를 구성할 필요가 없습니다. 필요한 하드웨어 NVMe 어댑터를 설치하면 현재 연결할 수 있는 모든 대상 및 컨트롤러에 자동으로 연결됩니다. 나중에 컨트롤러 연결을 해제하거나 호스트 부팅 중에 사용할 수 없었던 다른 컨트롤러를 연결할 수 있습니다. NVMe over Fabrics용 컨트롤러 추가의 내용을 참조하십시오.
NVMe over TCP에 대한 요구 사항
- NVMe over TCP 전송을 지원하는 NVMe 스토리지 어레이.
- 호환되는 ESXi 호스트.
- 이더넷 어댑터. 어댑터를 구성하려면 ESXi에서 NVMe over TCP 구성 항목을 참조하십시오.
- 소프트웨어 NVMe over TCP 어댑터. 이 소프트웨어 구성 요소는 ESXi 호스트에서 사용하도록 설정되고 적절한 네트워크 어댑터에 연결되어 있어야 합니다. 자세한 내용은 소프트웨어 NVMe over RDMA 또는 NVMe over TCP 어댑터 추가의 내용을 참조하십시오.
- NVMe 컨트롤러. 소프트웨어 NVMe over TCP 어댑터를 구성한 후에 컨트롤러를 추가해야 합니다. NVMe over Fabrics용 컨트롤러 추가의 내용을 참조하십시오.
VMware NVMe over Fabrics 공유 스토리지 지원
ESXi 환경에서 NVMe 스토리지 디바이스는 SCSI 스토리지 디바이스와 유사하게 나타나며 공유 스토리지로 사용될 수 있습니다. NVMe-oF 스토리지를 사용하는 경우 다음 규칙을 따르십시오.
- 동일한 네임스페이스에 액세스하기 위해 전송 유형을 혼합하지 마십시오.
- 호스트에 활성 경로가 표시되는지 확인합니다. 활성 경로가 검색될 때까지 네임스페이스를 등록할 수 없습니다.
공유 스토리지 기능 | SCSI over Fabric 스토리지 | NVMe over Fabric 스토리지 |
---|---|---|
RDM | 지원 | 지원되지 않음 |
코어 덤프 | 지원 | 지원 |
SCSI-2 예약 | 지원 | 지원되지 않음 |
클러스터된 VMDK | 지원 | 지원 |
다중 작성기 플래그가 있는 공유 VMDK | 지원 | 지원 vSphere 7.0 업데이트 1 이상. 자세한 내용은 기술 자료 문서를 참조하십시오. |
Virtual Volumes | 지원 | 지원 vSphere 8.0 이상. 자세한 내용은 vSphere의 Virtual Volumes 및 NVMe의 내용을 참조하십시오. |
VAAI 플러그인을 통한 하드웨어 가속 | 지원 | 지원되지 않음 |
기본 MPP | NMP | HPP(NVMe-oF 대상이 NMP에 의해 할당될 수 없음) |
NVMe over RDMA에 대한 무손실 이더넷 구성
ESXi에서 NVMe over RDMA를 사용하려면 무손실 이더넷 네트워크가 필요합니다.
무손실 네트워크를 설정하려면 사용 가능한 QoS 설정 중 하나를 선택하면 됩니다.
글로벌 일시 중지 흐름 제어 사용
이 네트워크 구성에서는 네트워크 스위치 포트에서 글로벌 일시 중지 흐름 제어가 사용되도록 설정되어 있는지 확인합니다. 또한 호스트의 RDMA 지원 NIC가 올바른 흐름 제어에 자동 협상되는지 확인합니다.
흐름 제어를 확인하려면 다음 명령을 실행합니다.
#esxcli network nic get -n vmnicX Pause RX: true Pause TX: true
위 명령 옵션이 true로 설정되지 않은 경우, 다음 명령을 실행합니다.
#esxcli network nic pauseParams set -r true -t true -n vmnicX
우선 순위 흐름 제어 사용
RoCE 트래픽이 무손실이 되려면, 물리적 스위치 및 호스트에서 PFC 우선 순위 값을 3으로 구성해야 합니다. PFC는
ESXi 호스트에서 다음 두 가지 방법으로 구성할 수 있습니다.
- 자동 구성입니다. RNIC 드라이버가 DCB 및 DCBx를 지원하는 경우 호스트 RNIC에서 DCB PFC 구성을 자동으로 적용합니다.
다음 명령을 실행하여 현재 DCB 설정을 확인할 수 있습니다.
#esxcli network nic dcb status get -n vmnicX
- 수동 구성입니다. 경우에 따라 RNIC 드라이버는 드라이버 관련 매개 변수를 사용하여 DCB PFC를 수동으로 구성하는 방법을 제공합니다. 이 방법을 사용하려면 벤더 관련 드라이버 설명서를 참조하십시오. 예를 들어 Mellanox ConnectX-4/5 드라이버에서는 다음 명령을 실행하고 호스트를 재부팅하여 PFC 우선 순위 값을 3으로 설정할 수 있습니다.
#esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08"
DSCP 기반 PFC 사용
DSCP 기반 PFC는 무손실 네트워크를 구성하는 또 다른 방법입니다. 물리적 스위치 및 호스트에서 DSCP 값을 26으로 설정해야 합니다. 이 옵션을 사용하려면 벤더 관련 드라이버 설명서를 참조하십시오. 예를 들어 Mellanox ConnectX-4/5 드라이버에서는 다음 명령을 실행하여 DSCP 태그 값을 26으로 설정할 수 있습니다.
- PFC 및 DSCP 신뢰 모드를 사용하도록 설정합니다.
#esxcli system module parameters set -m nmlx5_core -p "pfctx=0x08 pfcrx=0x08 trust_state=2"
- DSCP 값을 26으로 설정합니다.
#esxcli system module parameters set -m nmlx5_rdma -p "dscp_force=26"
- 매개 변수를 확인하여 설정이 올바른지 그리고 설정이 완료되었는지 확인합니다.
esxcli system module parameters list -m nmlx5_core | grep 'trust_state\|pfcrx\|pfctx'
- 호스트를 재부팅합니다.