diff --git a/zfs.md b/zfs.md index 286a96a..f75e416 100644 --- a/zfs.md +++ b/zfs.md @@ -1,6 +1,11 @@ # ZFS в ОС Альт 10.2 - [ZFS в ОС Альт 10.2](#zfs-в-ос-альт-102) + - [Введение](#введение) + - [Возможности ZFS](#возможности-zfs) + - [Уровни абстракции ZFS](#уровни-абстракции-zfs) + - [Virtual Devices](#virtual-devices) + - [Pool](#pool) - [Установка](#установка) - [Подготовка](#подготовка) - [Установка модуля ядра и утилиты командной строки](#установка-модуля-ядра-и-утилиты-командной-строки) @@ -8,6 +13,58 @@ - [Автозагрузка модуля ядра](#автозагрузка-модуля-ядра) - [Создание пула](#создание-пула) +## Введение + +ZFS - это современная файловая система и одновременно логический менеджер томов, изначально разработана компанией SUN, далее Oracle + +### Возможности ZFS + +- масштабируемость +- защита от потерь данных, программная отказоустойчивость +- поддержка больших объемов данных +- интеграция управления логическими томами с файловой системой +- поддержка снимков и CoW клонирования +- непрерывный контроль целостности +- автоматическое восстановление + +### Уровни абстракции ZFS + +- Virtual Devices. VDEVs. Виртуальные устройства. +- Pool. Пулы. +- DataSet. Файловая система внутри пула + +#### Virtual Devices + +VDEVs. Виртуальные устройства. Используются для размещения данных или в служебных целях для тонкой настройки ZFS + +- **физические диски** +- **разделы дисков** +- **файл образа диска** с указанием полного пути + +Использование виртуальных устройств + +- без явного указания виртуальные устройства объединяются пул уровня RAID0 - запись с чередованием для повышения скорости. Без избыточности и отказоустойчивости. +- **mirror** - програмный массив RAID1 +- **raidz1/2/3** - RAID-массивы с контролем четности +- **spare** - диски горячего запаса для RAID. На них не хранятся данные, эти диски включаются в работу в случае выхода из строя диска в пуле +- **cache** - устройство для кэша 2го уровня (L2ARC). Рекомендуется использовать на быстрых SSD дисках. Если скорость дисков с данным не отличается от скорости дисков с кешем, смысл выделения отдельных дисков по кеш пропадает. **КРАЙНЕ ЧУВСТВИТЕЛЕН К ПОТЕРЕ ДАННЫХ** +- **log** - отдельный журнал (SLOG), содержащий ZFS Intent Log (ZIL). Так же как и кеш есть смысл использовать только для ускорения работы на быстрых дисках + +#### Pool + +| Тип пула | Опция | Мин.дисков/VDEVs | Описание | +| -------- | ------------ | :--------------: | --------------------------------- | +| RAID-0 | по-умолчанию | 1/1 | сумма дисков, нет избыточности | +| RAID-1 | mirror | 2/1 | данные зеркалируются на все диски | +| RAID-10 | mirror | 4/2 | сочетание RAID0 и RAID1 | +| RAIDZ-1 | raidz | 3/1 | аналог RAID5, одинарная четность | +| RAIDZ-2 | raidz2 | 4/1 | аналог RAID6, двойная четность | +| RAIDZ-3 | raidz3 | 5/1 | тройная четность | + +RAID0 быстрее RAID1, кот. быстрее RAIDZ-1, кот. быстрее RAIDZ-2, кот. быстрее RAIDZ-3 + +Размер пула невозможно уменьшить, только увеличить + ## Установка ### Подготовка @@ -91,3 +148,6 @@ zfs ## Создание пула +В общем виде создание пула + +zpool create -f -m [raidz(2|3)|mirror]