Меню

Как подключить диск zfs

Справочное руководство по ZFS

Доброго времени суток.

Заметил, что на Хабре много статей про ZFS. И вот, решил написать краткое руководство, как же этой ZFS пользоваться. В качестве ОС буду рассматривать Solaris, т.к. ZFS изначально разрабатывалась для Соляры да и познакомился с ZFS я именно там. Понимаю, что мало у кого стоит Open Solaris на десктопе, а администраторы Solaris и так должны это знать. Но может кому и пригодится.

Немного терминологии
Собственно руковдство

В Solaris работа с ZFS идет в основном через 2 команды. Это zpool и zfs.

zpool — работа с пулами. Их создание, изменение, удаление и т.д.

zfs — работа с самой файловой системой.

Итак, из чего же можно создать пул? Да из чего угодно. От файлов под другой фс, до дисков в дисковом массиве.

Примеры создания пула MyPool

# Создание пула из файлов /zfs1/disk01 и /zfs1/disk02 созданных командой mkfile
zpool create MyPool /zfs1/disk01 /zfs1/disk02

# Создание пула используя обычный слайс
zpool create MyPool c1t0d0s0

# Создание пула c зеркалированием и использованием spare дисков.
zpool create MyPool mirror c1t0d0 c2t0d0 mirror c1t0d1 c2t0d1
zpool create MyPool mirror c1t0d0 c2t0d0 spare c3t0d0

NAME STATE READ WRITE CKSUM
MyPool ONLINE 0 0 0
/disk1 ONLINE 0 0 0
/disk2 ONLINE 0 0 0

Изменение пула MyPool

#Добавление и удаление элементов (дисков) из пула, не использующего зеркалирование осуществляется с помощью команд:
zpool add MyPool /zfs1/disk3
zpool remove MyPool /disk3

#Добавление и удаление элементов (дисков) из пула, c зеркалированиеv осуществляется с помощью команд:
zpool attach MyPool /disk1 /disk3
zpool detach MyPool /disk1 /disk3

NAME STATE READ WRITE CKSUM
myzfs DEGRADED 0 0 0
mirror DEGRADED 0 0 0
/disk1 OFFLINE 0 0 0
/disk2 ONLINE 0 0 0

#И обратно online
zpool online MyPool /disk1

#Замена одного элемента пула на другой
zpool replace MyPool /disk1 /disk3

Создание и работа с файловой системой

#Создаем файловую систему
zfs create MyPool/systemname

#Резервируем место под свою файловую систему
zfs set reservation=20m MyPool/systemname

#Устанавливаем квоту для вашей файловой системы, которую вы не сможете превысить
zfs set quota=20m MyPool/systemname

#Включаем компрессию.
zfs set compression=on MyPool/systemname

#Расшариваем нашу файловую систему.
zfs set sharenfs=on MyPool/systemname в NFS
zfs set sharesmb=on MyPool/systemname в SMB

#Снимаем снапшот
zfs snapshot MyPool/systemname@hostname

#Так как снапшот — это просто снимок системы в данный момент, то иногда стоит создавать клона.
zfs clone MyPool/systemname@hostnameyPool/systemname2

Как видите, ничего сложного с ZFS на начальном этапе нет. Очень и очень гибкая штука.

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Источник

Как использовать файловую систему ZFS в Linux

Файловая система ZFS невероятно популярна.

Читайте также:  Как подключить к ноуту клавиатуру

В результате многие в предприятии клянутся им в верности и используют его для размещения триллионов байтов данных.

Несмотря на свою популярность, пользователи Linux не смогут наслаждаться этим из коробки.

Вместо этого те, кто хочет проверить это и использовать его в качестве основной файловой системы хранилища, должны будут установить его.

Установка ZFS немного отличается от других файловых систем, и в зависимости от того, что вы используете, может потребоваться небольшое ноу-хау.

Если вы новичок в этой файловой системе, лучше всего идти по маршруту Ubuntu.

Начиная с Ubuntu 16.04, Canonical упрощает работу с ZFS.

Еще лучше, Ubuntu — безусловно самая безопасная реализация ZFS в Linux, с простой настройкой и процессом сборки, который, как известно, очень надежный (в то время как другие дистрибутивы Linux имеют высокий риск нарушения ZFS).

Примечание. Хотя можно использовать ZFS для одного жесткого диска, это не очень хорошая идея, и вы, вероятно, пропустите все функции, которые делают эту файловую систему отличной.

Точкой файловой системы является создание избыточности, путем растяжения данных на нескольких жестких дисках.

Прежде чем продолжить, убедитесь, что у вас более 1 жесткого диска для ZFS.

Настройка ZFS

Файловая система ZFS работает, объединяя множество разных жестких дисков вместе, чтобы создать один большой центр хранения.

Это звучит слишком сложно, и это так. Тем не менее, результат — превосходное хранилище с большим пространством.

Создание новой файловой системы ZFS немного сложнее, чем просто открытие редактора разделов Gparted.

Вместо этого вам нужно будет взаимодействовать с ним на уровне командной строки. В

окне терминала запустите команду lsblk. Запуск команды «list block» выведет все накопители на вашем ПК Linux.

Пройдите и решите, какие жесткие диски использовать для вашего Z-пула, и помните имена. В этом учебнике наши три диска в пуле ZFS: /dev/sdb, /dev/sdc и /dev/sdd.

Затем вам нужно полностью обнулить жесткие диски, выбранные для Z-пула, чтобы у них больше не было данных. Используя команду dd, перезапишите каждый из дисков. Это займет некоторое время.

Примечание: измените /dev/sdX с идентификатором диска, найденным с помощью команды lsblk (sdb и т. д.).

Когда dd закончит работу, запустите команду fdisk.

Запуск fdisk покажет много информации о жестких дисках, включая информацию о файловой системе для каждого.

Просмотрите показания и убедитесь, что ни один из дисков, которые вы удалили, не имеет файловой системы.

Этот шаг имеет решающее значение, поскольку ZFS не использует традиционный формат разбиения.

Если вывод fdisk выглядит хорошо, безопасно создайте новый Z-poll ZFS.

Для базовой настройки Z-пула выполните следующие действия:

Базовая установка позволит большинству пользователей удовлетворить свои потребности в хранилищах.

Однако те, которые ценят свои данные и нуждаются в защите, не должны идти по пути установки с такой базовой настройкой.

Читайте также:  Как подключить с2000 ик в систему

Вместо этого подумайте о создании пула ZFS с RaidZ.

Использование RaidZ в сочетании с вашим ZFS-пулом гарантирует, что ваши данные будут избыточными, с множеством резервных копий.

Чтобы создать пул ZFS с RaidZ, запустите:

Чтобы добавить файлы в новый пул хранения ZFS, откройте диспетчер файлов и перейдите в корень файловой системы.

Поместите файлы внутри папки с именем ZFS Zpool.

Добавить диски в ZFS Zpool

ZFS предназначен для хранения большого количества данных, но это не значит, что ваши оригинальные диски не будут заполняться.

Наступит время, когда потребуется больше места для хранения.

К счастью, поскольку ZFS не использует разделы, добавление большего количества хранилища в систему прост.

В этом примере мы добавим еще два диска в Zpool (/dev/sde и /dev/sdf).

Примечание: если ваша установка ZFS не использует RaidZ, удалите ее из команды.

Удалить пул ZFS

Зачастую объемы ZFS ломаются и становятся непригодными.

Когда это произойдет, вам может потребоваться удалить пул хранения.

Чтобы удалить пул хранения, откройте терминал и используйте команду zfs destroy.

Запуск zpool destroy занимает довольно много времени, в зависимости от того, сколько данных находится в вашем пуле хранения.

Вы узнаете, что Zpool полностью уничтожен, когда терминал снова будет доступен для использования.

Проверить статус ZFS

Быстрый способ проверить статус вашего Zpool с помощью команды zpool status.

С его помощью пользователи могут видеть базовое считывание тома ZFS, как он это делает и имеются ли какие-либо ошибки.

Чтобы проверить статус, выполните следующую команду:

Источник

Переход пулов устройств хранения данных ZFS

В некоторых случаях может потребоваться перенос пула устройств хранения данных с одного компьютера на другой. При этом устройства хранения требуется отключить от исходного компьютера и подключить к целевому компьютеру. Эта задачу можно решить путем повторного физического кабельного подключения устройств или при помощи многопортовых устройств, например, устройств в SAN. ZFS позволяет экспортировать пул из одного компьютера и импортировать его в целевой компьютер, даже если они имеют различный порядок следования байтов (endianness). Дополнительно о репликации или переходе файловых систем между разными пулами устройств хранения данных, которые могут находиться на разных компьютерах, см. Отправка и получение данных ZFS.

Подготовка к переходу пула устройств хранения данных ZFS

Пулы устройств хранения данных должны быть явно экспортированы, что будет указывать на их готовность к переходу. Эта операция приводит к загрузке на диск всех незаписанных данных, записи данных на диск с указанием о том, что был выполнен экспорт, и удалению всех данных пула из системы.

Если пул явно не экспортирован, но вместо этого диски удалены вручную, этот пул также можно импортировать в другую систему. Однако при этом может потеряться несколько последних секунд транзакций данных, и в исходном компьютере пул будет отображаться как неисправный, поскольку соответствующие устройства отсутствуют. По умолчанию попытка импорта пула, который не был явно экспортирован, на целевом компьютере отклоняется. Это необходимо для предотвращения непреднамеренного импорта активного пула, состоящего из подключенного к сети устройства хранения, которое по-прежнему используется в другой системе.

Читайте также:  Как подключить штатные кнопки на руле к магнитоле пионер

Экспорт пула устройств хранения данных ZFS

Для получения дополнительной информации о томах ZFS см. Тома ZFS.

Определение доступных пулов устройств хранения данных для импорта

После удаления пула из системы (путем экспорта или принудительного удаления устройств) необходимо присоединить устройства к целевой системе. Несмотря на то, что ZFS может разрешать некоторые ситуации, в которых доступна только часть устройств, переносить в новую систему следует все устройства пула. Эти устройства не обязательно должны присоединяться под прежним именем. ZFS обнаруживает любые перемещенные или переименованные устройства и корректирует настройки соответствующим образом. Для получения списка доступных пулов используется команда zpool import без каких-либо параметров. Пример:

В этом примере пул tank доступен для импорта в целевую систему. Каждый пул идентифицируется по имени, а также по уникальному числовому идентификатору. Если несколько пулов, доступных для импорта, имеют совпадающие имена, то для их различия можно использовать цифровой идентификатор.

В этом примере первый диск поврежден или отсутствует, однако импорт пула по-прежнему возможен, поскольку доступны зеркальные данные. При наличии слишком большого количества неисправных или отсутствующих устройств импорт пула невозможен. Пример:

В этом примере в виртуальном устройстве RAID-Z отсутствуют два диска. Это означает, что избыточные данные, необходимые для восстановления пула, недоступны. В некоторых случаях отсутствует ряд устройств, необходимых для определения полной конфигурации. Поэтому ZFS не может определить, какие другие устройства входили в пул, несмотря на доступность максимального объема информации. Пример:

Поиск пулов устройств хранения данных ZFS в альтернативных каталогах

Импорт пулов устройств хранения данных ZFS

Если нескольким доступным пулам присвоено одинаковое имя, пул для импорта можно указать с помощью числового идентификатора. Пример:

В случае конфликта имени пула с именем существующего пула этот пул можно импортировать под другим именем. Пример:

Эта команда импортирует экспортированный пул dozer с использованием нового имени zeepool. Если пул не был экспортирован штатно, необходимо установить флаг -f для предотвращения случайного импорта пула, который по-прежнему используется другой системой. Пример:

Восстановление уничтоженных пулов устройств хранения данных ZFS

В приведенных выше выходных данных команды zpool import пул можно идентифицировать как уничтоженный на основе следующей информации о состоянии:

Для восстановления уничтоженного пула повторите команду zpool import -D для пула, который требуется восстановить. Пример:

Обновление пулов устройств хранения данных ZFS

Для вывода дополнительной информации по определенной версии и поддерживаемым релизам используется следующий синтаксис.

При обновлении пула до новой версии ZFS пул будет недоступен в системе, использующей более старую версию ZFS.

Источник

Adblock
detector