17.8. NVDIMM에서 파일 시스템 DAX 네임스페이스 생성
직접 액세스 기능을 갖춘 파일 시스템을 지원하도록 파일 시스템 DAX 모드에서 NVMe(Non-Volatile Dual In-line Memory Modules) 장치를 구성할 수 있습니다.
다음 중 하나를 수행할 수 있습니다.
- 기존 네임스페이스를 파일 시스템 DAX 모드로 재구성하거나
- 사용 가능한 공간이 있는 경우 새 파일 시스템 DAX 네임스페이스를 만듭니다.
파일 시스템 DAX 기술은 기술 프리뷰로만 제공되며 Red Hat에서 지원되지 않습니다.
사전 요구 사항
- NVDIMM 장치가 시스템에 연결되어 있습니다.
17.8.1. 파일 시스템의 직접 액세스 모드 NVDIMM 링크 복사링크가 클립보드에 복사되었습니다!
NVDIMM 장치가 파일 시스템 직접 액세스(파일 시스템 DAX, fsdax) 모드로 구성된 경우 파일 시스템을 그 위에 만들 수 있습니다. 이 파일 시스템의 파일에서 mmap() 작업을 수행하는 모든 애플리케이션은 스토리지에 직접 액세스할 수 있습니다. 이를 통해 NVDIMM에서 직접 액세스 프로그래밍 모델을 사용할 수 있습니다.
Red Hat Enterprise Linux 8에서 다음과 같은 새로운 -o dax 옵션을 사용할 수 있으며 필요한 경우 파일 속성을 통해 직접 액세스 동작을 제어할 수 있습니다.
-O dax=inode이는 파일 시스템을 마운트하는 동안 dax 옵션을 지정하지 않는 경우 기본 옵션입니다. 이 옵션을 사용하면 dax 모드를 활성화할 수 있는지 제어하도록 파일에 속성 플래그를 설정할 수 있습니다. 필요한 경우 이 플래그를 개별 파일에 설정할 수 있습니다.
이 플래그를 디렉토리에 설정하고 해당 디렉터리의 모든 파일은 동일한 플래그를 사용하여 생성할 수도 있습니다. 이 속성 플래그는
xfs_io -c 'chattr +x'directory-name 명령을 사용하여 설정할 수 있습니다.-o dax=never-
이 옵션을 사용하면 dax 플래그가
inode모드로 설정된 경우에도 dax 모드가 활성화되지 않습니다. 즉, per-inode dax 특성 플래그가 무시되고 이 플래그를 사용하여 설정된 파일은 직접 액세스할 수 없습니다. -O dax=always이 옵션은 이전
-o dax동작과 동일합니다. 이 옵션을 사용하면 dax 특성 플래그와 관계없이 파일 시스템의 모든 파일에 대해 직접 액세스 모드를 활성화할 수 있습니다.주의추가 릴리스에서는
-o dax가 지원되지 않을 수 있으며 필요한 경우-o dax=always를 대신 사용할 수 있습니다. 이 모드에서는 모든 파일이 직접 액세스 모드에 있을 수 있습니다.- 페이지별 메타데이터 할당
이 모드에서는 시스템ECDHE 또는 NVDIMM 장치 자체에 페이지당 메타데이터를 할당해야 합니다. 이 데이터 구조의 오버헤드는 각 4KiB 페이지당 64바이트입니다.
- 작은 장치에서는 오버헤드의 양이 문제 없이ECDHE에 들어갈 수 있을 만큼 작아집니다. 예를 들어 16GiB 네임스페이스는 페이지 구조에는 256MiB만 있으면 됩니다. NVDIMM 장치는 일반적으로 작고 비용이 많이 들기 때문에ECDHE에 추적 데이터 구조를 저장하는 것이 좋습니다.
크기가 테라바이트 이상인 NVDIMM 장치의 경우 페이지 추적 데이터 구조를 저장하는 데 필요한 메모리 양이 시스템의ECDHE 양을 초과할 수 있습니다. NVDIMM의 TiB 1개에는 페이지 구조에 16GiB가 필요합니다. 결과적으로 이러한 경우 데이터 구조를 NVDIMM 자체에 저장하는 것이 좋습니다.
네임스페이스를 구성할 때
--map옵션을 사용하여 per-page 메타데이터가 저장되는 위치를 구성할 수 있습니다.-
시스템 RAM에 할당하려면
--map=mem을 사용합니다. -
NVDIMM에 할당하려면
--map=dev를 사용합니다.