Каждый пул устройств хранения данных состоит из одного или нескольких виртуальных устройств. Виртуальное устройство – это внутреннее представление пула устройств хранения данных, описывающее структуру физического уровня и характеристики отказоустойчивости. Таким образом, виртуальное устройство представляет дисковые устройства или файлы, используемые для создания пула устройств хранения данных. Пул может содержать любое число виртуальных устройств в вершине конфигурации, известной как корневое виртуальное устройство (vdev).
Избыточность данных обеспечивается двумя виртуальными устройствами верхнего уровня: зеркалом и виртуальными устройствами RAID-Z. Эти виртуальные устройства состоят из дисков, дисковых подразделов или файлов. Резерв представляет особый vdev, который отслеживает доступные устройства горячего резерва для пула.
Следующий пример демонстрирует создание пула, который содержит два корневых vdev, каждый из которых является зеркалом двух дисков.
# zpool create tank mirror c1d0 c2d0 mirror c3d0 c4d0 |
В следующем примере показано создание пула, который содержит одно корневое виртуальное устройство из 4 дисков.
# zpool create mypool raidz2 c1d0 c2d0 c3d0 c4d0 |
В этот пул можно добавить другой корневой vdev с помощью команды zpool add. Пример:
# zpool add mypool raidz2 c2d0 c3d0 c4d0 c5d0 |
Диски, дисковые подразделы или файлы, которые используются в не избыточных пулах, сами действуют как виртуальные устройства. Пулы устройств хранения данных обычно содержат несколько виртуальных устройств верхнего уровня. ZFS динамически выполняет чередование полос для данных на всех виртуальных устройствах верхнего уровня в пуле.
Виртуальные устройства и физические устройства, которые содержатся в пуле устройств хранения данных ZFS, отображаются с помощью команды zpool status. Пример:
# zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c0t2d0 ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 mirror ONLINE 0 0 0 c0t3d0 ONLINE 0 0 0 c1t3d0 ONLINE 0 0 0 |