소개
이 문서에서는 호스트 관리 모드에서 인텔® 옵탄™ 영구 메모리(PMEM)를 사용하여 UCS(Unified Computing System) B 시리즈 서버에 ESXi를 구성하는 프로세스에 대해 설명합니다.
사전 요구 사항
요구 사항
다음 주제에 대한 지식을 보유하고 있으면 유용합니다.
- UCS B 시리즈
- 인텔® Optane™ 데이터 센터 영구 메모리 모듈(DCPMM) 개념
- VMware ESXi 및 vCenter Server 관리
이 설정을 시도하려면 먼저 이러한 요구 사항을 충족해야 합니다:
- B200/B480 M5 사양 가이드의 PMEM 지침을 참조하십시오.
- CPU가 2세대 Intel® Xeon® Scalable 프로세서인지 확인합니다.
- PMEM/DRAM(Dynamic Random Access Memory) 비율은 KB 67645에 따른 요구 사항을 충족합니다.
- ESXi는 6.7 U2 + Express 패치 10(ESXi670-201906002) 이상입니다. 6.7 이전 릴리스는 지원되지 않습니다.
- UCS Manager 및 서버는 4.0(4) 버전 이상입니다. 최신 권장 버전은 www.software.cisco.com/를 참조하십시오.
사용되는 구성 요소
이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.
- UCS B480 M5
- UCS Manager 4.1(2b)
이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우 모든 명령의 잠재적인 영향을 미리 숙지하시기 바랍니다.
배경 정보
App Direct 모드로 구성된 UCS 서버에서 VMware ESXi 가상 머신은 Optane DCPMM Persistent memory NVDIMM(Non-Volatile Dual In-Line Memory Module)에 액세스합니다.
Intel Optane DCPMM은 UEFI(Unified Extensible Firmware Interface) 셸이나 OS 유틸리티를 통해 IPMCTL 관리 유틸리티를 통해 구성할 수 있습니다. 이 도구는 다음 작업 중 일부를 수행하도록 설계되었습니다.
- 모듈 검색 및 관리
- 모듈 펌웨어 업데이트 및 구성
- 모니터 상태
- 목표, 지역 및 네임스페이스 프로비저닝 및 구성
- PMEM 디버깅 및 문제 해결
UCS는 사용 편의성을 위해 서비스 프로필에 연결된 영구 메모리 정책을 사용하여 구성할 수 있습니다.
오픈 소스 NDCTL(Non-Volatile Device Control) 유틸리티는 LIBNVDIMM Linux 커널 하위 시스템을 관리하는 데 사용됩니다. NDCTL 유틸리티를 사용하면 시스템이 OS에서 사용할 영역 및 네임스페이스로 컨피그레이션을 프로비저닝하고 수행할 수 있습니다.
ESXi 호스트에 추가된 영구 메모리는 호스트에서 탐지되고 포맷되어 로컬 PMem 데이터 저장소로 마운트됩니다. ESXi에서는 PMEM을 사용하기 위해 VMFS(Virtual Machine Flying System)-L 파일 시스템 형식을 사용하며 호스트당 하나의 로컬 PMEM 데이터 저장소만 지원됩니다.
다른 데이터 저장소와 달리 PMEM 데이터 저장소는 기존 데이터 저장소로서의 작업을 지원하지 않습니다. vmx 및 vmware.log 파일이 있는 VM 홈 디렉토리를 PMEM 데이터 저장소에 배치할 수 없습니다.
PMEM은 두 가지 모드로 VM에 표시될 수 있습니다. 직접 액세스 모드 및 가상 디스크 모드.
-
직접 접근 모드
PMEMregion을 NVDIMM 형식으로 표시하여 이 모드에 대해 VM을 구성할 수 있습니다. 이 모드를 사용하려면 VM 운영 체제가 PMem을 인식해야 합니다. NVDIMM이 바이트 주소 지정 가능한 메모리 역할을 하기 때문에 NVDIMM 모듈에 저장된 데이터는 전원 주기에 유지될 수 있습니다. PMEM을 포맷할 때 ESXi에서 생성한 PMem 데이터 저장소에 NVDIMM이 자동으로 저장됩니다.
-
가상 디스크 모드
하드웨어 버전을 지원하기 위해 VM에 상주하는 기존 및 레거시 OS를 위한 것입니다. VM OS는 PMEM을 인식할 필요가 없습니다. 이 모드에서는 VM OS에서 기존의 SCSI(Small Computer System Interface) 가상 디스크를 생성하여 사용할 수 있습니다.
이 문서에서는 직접 액세스 모드에서 가상 머신을 사용하도록 구성하는 방법에 대해 설명합니다.
구성
이 절차에서는 Intel Optane DCPMM을 사용하여 UCS Blade Series 서버에서 ESXi를 구성하는 방법을 설명합니다.
서비스 프로필 구성
1. UCS Manager GUI에서 Servers(서버) > Persistent Memory Policy(영구 메모리 정책)로 이동하고 이미지에 표시된 대로 Add(추가)를 클릭합니다.

2. 목표를 생성하고 메모리 모드가 이미지에 표시된 대로 0%인지 확인합니다.

3. 원하는 서비스 프로필에 PMEM 정책을 추가합니다.
Service Profile(서비스 프로파일) > Policies(정책) > Persistent Memory Policy(영구 메모리 정책)로 이동하고 생성된 정책을 연결합니다.
4. 해당 지역의 상태를 확인합니다.
선택한 Server(서버) > Inventory(인벤토리) > Persistent Memory(영구 메모리) > Regions(영역)로 이동합니다. AppDirect 유형이 표시됩니다. 이 방법은 CPU 소켓당 하나의 영역을 생성합니다.

ESXi 확인
1. 웹 콘솔에 사용 가능한 총 PMEM이 표시됩니다.

2. ESXi는 이미지에 표시된 대로 PMEM의 총량으로 구성된 특수 데이터 저장소를 표시합니다.

가상 머신 NVDIMM 구성
1. ESXi에서 가상 시스템은 NVDIMM으로 Optane DCPMM PMEM에 액세스합니다. 가상 시스템에 NVMDIMM을 할당하려면 vCenter를 통해 가상 시스템에 액세스한 후 Actions(작업) > Edit Settings(설정 수정)로 이동하고 ADD NEW DEVICE(새 디바이스 추가)를 클릭한 후 이미지에 표시된 대로 NVDIMM을 선택합니다.

참고: 가상 머신을 생성할 때 OS 호환성이 인텔® 옵탄™ 영구 메모리를 지원하는 최소 필수 버전을 충족하는지 확인하십시오. 그렇지 않으면 선택 가능한 항목에 NVDIMM 옵션이 나타나지 않습니다.
2. 이미지에 표시된 대로 NVDIMM의 크기를 설정합니다.

가상 컴퓨터에서 네임스페이스 구성
1. NDCTL 유틸리티는 PMEM 또는 NVDIMM을 관리하고 구성하는 데 사용됩니다.
이 예에서는 Red Hat 8이 컨피그레이션에 사용됩니다. Microsoft에는 영구 메모리 네임스페이스 관리를 위한 PowerShell cmdlet이 있습니다.
Linux 배포판에 따라 사용 가능한 도구를 사용하여 NDCTL 유틸리티를 다운로드합니다
예를 들면 다음과 같습니다.
# yum install ndctl
# zypper install ndctl
# apt-get install ndctl
2 . ESXi에서 기본적으로 생성한 NVDIMM 영역 및 네임스페이스를 확인합니다. NVDIMM이 가상 시스템에 할당되면 공간이 컨피그레이션과 일치하는지 확인합니다. ESXi에서 네임스페이스를 만들었음을 의미하는 네임스페이스의 모드가 raw로 설정되어 있는지 확인합니다. 확인하려면 다음 명령을 사용합니다.
# ndctl list -RuN

3 . (선택 사항) 네임스페이스가 아직 만들어지지 않은 경우 다음 명령을 사용하여 네임스페이스를 만들 수 있습니다.
# ndctl create-namespace
ndctl create-namespace 명령은 기본적으로 fsdax 모드에서 새 네임스페이스를 만들고 새 /dev/pmem([x].[y]) 디바이스를 만듭니다. 네임스페이스가 이미 만들어진 경우 이 단계를 건너뛸 수 있습니다.
4. PMEM 액세스 모드를 선택합니다. 구성에 사용할 수 있는 모드는 다음과 같습니다.
- 섹터 모드:
스토리지를 빠른 블록 디바이스로 표시하므로 영구 메모리를 사용할 수 없는 기존 애플리케이션에 유용합니다.
- Fsdax 모드:
영구 메모리 디바이스가 NVDIMM에 직접 액세스할 수 있도록 허용합니다. 파일 시스템 직접 액세스는 직접 액세스 프로그래밍 모델의 사용을 활성화하기 위해 fsdax 모드를 사용해야 합니다. 이 모드에서는 NVDIMM 위에 파일 시스템을 생성할 수 있습니다.
- Devdax 모드:
DAX 문자 장치를 사용하여 영구 메모리에 대한 원시 액세스를 제공합니다. devdax 모드를 사용하는 디바이스에서는 파일 시스템을 만들 수 없습니다.
- 원시 모드:
이 모드는 몇 가지 제한이 있으며 영구 메모리를 사용하는 경우에는 권장되지 않습니다.
모드를 fsdax 모드로 변경하려면 다음 명령을 사용합니다.
ndctl create-namespace -f -e --mode fsdax
이미 생성된 dev가 있으면 dev 네임스페이스를 사용하여 모드를 fsdax로 포맷하고 수정합니다.

참고: 이 명령에서는 계정에 루트 권한이 있어야 합니다. sudo 명령이 필요할 수 있습니다.
5. 디렉토리 및 파일 시스템을 생성합니다.
Direct Access 또는 DAX는 애플리케이션이 기존 I/O 스택을 우회하여 CPU에서(로드와 저장소를 통해) 영구 미디어에 직접 액세스할 수 있도록 하는 메커니즘입니다. DAX 지원 영구 메모리 파일 시스템에는 ext4, XFS 및 Windows NTFS가 포함됩니다.
생성 및 마운트된 XFS 파일 시스템의 예:
sudo mkdir < directory route (e.g./mnt/pmem) >
sudo mkfs.xfs < /dev/devicename (e.g. pmem0) >

6. 파일 시스템을 마운트하고 성공했는지 확인합니다.
sudo mount < directory >
df -h < directory >

VM에서 PMEM을 사용할 준비가 되었습니다.
문제 해결
일반적으로 오류가 발견되면 -o dax 마운트 옵션을 사용하여 이 DAX 지원 파일 시스템을 마운트하는 것이 좋습니다.

파일 시스템 복구는 무결성을 보장하기 위해 실행됩니다.

이를 해결하려면 -o dax 옵션 없이 마운트를 마운트할 수 있습니다.
참고: xfsprogs 버전 5.1에서 기본값은 reflink 옵션이 활성화된 XFS 파일 시스템을 만드는 것입니다. 이전에는 기본적으로 비활성화되어 있었습니다. reflink 옵션과 dax 옵션은 함께 사용할 수 없으므로 마운트에 실패합니다.
"DAX와 reflink는 함께 사용할 수 없습니다!" mount 명령이 실패할 때 dmesg에서 오류를 확인할 수 있습니다.

해결 방법으로 -o dax 옵션을 제거합니다.

ext4 FS로 마운트합니다.
EXT4 파일 시스템은 reflink 기능을 구현하지 않고 DAX를 지원하기 때문에 대안으로 사용할 수 있습니다.

관련 정보