6.7. NVDIMM에 장치 DAX 네임스페이스 생성
직접 액세스 기능을 사용하여 문자 스토리지를 지원하도록 시스템에 연결된 NVDIMM 장치를 장치 DAX 모드에서 구성합니다.
다음 옵션을 고려하십시오.
- 장치 DAX 모드로 기존 네임스페이스를 재구성합니다.
- 사용 가능한 공간이 있는 경우 새 장치 DAX 네임스페이스를 만듭니다.Create a new device DAX namespace, if there is space available.
6.7.1. 장치 직접 액세스 모드의 NVDIMM 링크 복사링크가 클립보드에 복사되었습니다!
장치 직접 액세스(device DAX, devdax
)는 애플리케이션이 파일 시스템을 사용하지 않고 스토리지에 직접 액세스할 수 있는 수단을 제공합니다. 장치 DAX의 이점은 ndctl
유틸리티의 --align
옵션을 사용하여 구성할 수 있는 보장된 내결함성을 제공하는 것입니다.
Intel 64 및 AMD64 아키텍처의 경우 다음과 같은 오류 세분화가 지원됩니다.
- 4 KiB
- 2 MiB
- 1GiB
장치 DAX 노드는 다음 시스템 호출만 지원합니다.
-
open()
-
close()
-
mmap()
ndctl list --human --capabilities
명령을 사용하여 NVDIMM 장치의 지원되는 정렬을 볼 수 있습니다. 예를 들어 region0 장치에 대해 보려면 ndctl list --human --capabilities -r region0
명령을 사용합니다.
장치 DAX 사용 사례가 SNIA 비Volatile 메모리 프로그래밍 모델에 연결되어 있기 때문에 read()
및 write()
시스템 호출이 지원되지 않습니다.
6.7.2. 기존 NVDIMM 네임스페이스를 장치 DAX 모드로 재구성 링크 복사링크가 클립보드에 복사되었습니다!
기존 NVMe(Non-Volatile Dual In-line Memory Modules) 네임스페이스를 장치 DAX 모드로 재구성할 수 있습니다.
네임스페이스를 다시 구성하면 네임스페이스에 이전에 저장된 데이터가 삭제됩니다.
사전 요구 사항
-
The
ndctl
유틸리티가 설치되어 있습니다. 자세한 내용은 Installing ndctl 을 참조하십시오.
절차
시스템의 모든 네임스페이스를 나열합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 네임스페이스를 재구성합니다.
ndctl create-namespace --force --mode=devdax --reconfig=namespace-ID
# ndctl create-namespace --force --mode=devdax --reconfig=namespace-ID
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 6.3. 네임스페이스를 장치 DAX로 재구성
다음 명령은 DAX를 지원하는 데이터 저장을 위해
namespace0.1
을 재구성합니다. 운영 체제가 한 번에 2MiB 페이지에 오류가 있는지 확인하기 위해 2MiB 오류 세분에 맞게 조정됩니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제
/dev/dax0.1
경로에서 네임스페이스를 사용할 수 있습니다.
검증
시스템의 기존 네임스페이스가 재구성되었는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.7.3. 장치 DAX 모드에서 새 NVDIMM 네임스페이스 생성 링크 복사링크가 클립보드에 복사되었습니다!
지역에 사용 가능한 공간이 있는 경우 NVMe(Non-Volatile Dual In-line Memory Modules) 장치에서 새 장치 DAX 네임스페이스를 만들 수 있습니다.
사전 요구 사항
-
The
ndctl
유틸리티가 설치되어 있습니다. 자세한 내용은 Installing ndctl 을 참조하십시오. NVDIMM 장치는 라벨을 지원하여 하나의 리전에 여러 네임스페이스를 생성합니다. 다음 명령을 사용하여 확인할 수 있습니다.
ndctl read-labels nmem0 >/dev/null
# ndctl read-labels nmem0 >/dev/null read 1 nmem
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이는 하나의 NVDIMM 장치의 라벨을 읽을 수 있음을 나타냅니다. 값이
0
인 경우 장치에서 레이블을 지원하지 않음을 나타냅니다.
절차
사용 가능한 공간이 있는 시스템의
pmem
지역을 나열합니다. 다음 예제에서는 region1 및 region0 리전에서 공간을 사용할 수 있습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용 가능한 리전 중 하나에 하나 이상의 네임스페이스를 할당합니다.
ndctl create-namespace --mode=devdax --region=regionN --size=namespace-size
# ndctl create-namespace --mode=devdax --region=regionN --size=namespace-size
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 6.4. 리전에서 네임스페이스 생성
다음 명령은 region0에 36-GiB 장치 DAX 네임스페이스를 생성합니다. 운영 체제가 한 번에 2MiB 페이지에 오류가 있는지 확인하기 위해 2MiB 오류 세분에 맞게 조정됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이제 네임스페이스를
/dev/dax0.2
로 사용할 수 있습니다.
검증
장치 DAX 모드에서 새 네임스페이스가 생성되었는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow