Datacenter > Storage 메뉴에서 ZFS 스토리지를 선택하고 Edit 단추를 클릭하면 그림과 같은 대화상자가 나타납니다.
각 항목들의 기능은 다음과 같습니다.
Content
Content는 스토리지가 어떤 유형의 데이터를 저장할 수 있게 할 것인지 지정합니다. ZFS 스토리지는 기본적으로 Disk Image, Container 등 두 가지 유형만 선택해서 지정할 수 있습니다.
Thin provision
호스트 1대에서 로칼 디스크로 ZFS 풀을 만들고, VM에서 Hard disk를 만들면 Zvol 형태로 생성됩니다. 그래서 이 옵션이 설정한다고 해도 Thin provision이 적용되지 않습니다.
다음 예는 VM의 Hard disk가 volume 유형으로 생성된 것과 전체 용량이 할당된 것을 확인한 것입니다.
root@pve-01:/dev/zvol/RAIDZ# zfs get type RAIDZ/vm-105-disk-0 NAME PROPERTY VALUE SOURCE RAIDZ/vm-105-disk-0 type volume - root@pve-01:/dev/zvol/RAIDZ# zfs list NAME USED AVAIL REFER MOUNTPOINT RAIDZ 32.5G 3.58T 35.1K /RAIDZ RAIDZ/vm-105-disk-0 32.5G 3.61T 3.01G - root@pve-01:/dev/zvol/RAIDZ#
Block Size
ZFS 스토리지에서 VM용 하드디스크 생성시 사용할 기본 블럭 크기(volblocksize)를 지정합니다. 기본값은 16K가 지정되어 있습니다. 이 값을 변경(예 32K)하면 이후에 새로 만들어지는 VM의 하드디스크에 적용됩니다.
root@pve-01:/dev/zvol/RAIDZ# zfs get volblocksize NAME PROPERTY VALUE SOURCE RAIDZ volblocksize - - RAIDZ/vm-105-disk-0 volblocksize 16K default RAIDZ/vm-106-disk-0 volblocksize 16K default RAIDZ/vm-107-disk-0 volblocksize 32K - root@pve-01:/dev/zvol/RAIDZ#
위 예에서 보면 변경 전에 만든 VM의 하드디스크는 volblocksize가 16K로 지정되어 있고, 32K로 변경한 다음에 만든 VM의 하드디스크(vm-107-disk-0)은 32K가 지정되어 있는 것을 볼 수 있습니다.
저장 매체 기준으로 보면 SSD의 경우는 8K 또는 16K, HDD의 경우는 32K 또는 128K를 추천합니다.
워크로드 기준으로 보면 데이터베이스의 경우 8K 또는 16K, 비디오/이미지 처럼 저장 단위가 큰 경우에는 64K ~ 128K를 추천합니다.
기본값인 16K가 이런저런 경우 모두 퉁쳐서 무난한 값이라 보면 됩니다.
주의할 것은 ZFS 스토리지에 만들어진 VM 하드디스크의 블럭 크기는 변경할 수 없습니다.