Является ли массив хранения ZFS переносимым для всех операционных систем и архитектур процессоров?

Я знаю, что ZFS доступен в различных операционных системах Solaris, Illumos, Linux, BSD и т. Д.

Предположим, у меня есть куча дисков, которые входят в состав файловой системы ZFS, созданной в Linux, могут ли эти диски быть выведены из машины Linux и помещены в машину с BSD или Illumos и просто работать? Существуют ли какие-либо специфические для ОС вещи, которые записываются в файловые системы ZFS, что затрудняет перемещение диска между различными реализациями ZFS?

Как насчет того, что диски с форматированием ZFS были перемещены по архитектурам процессоров, скажем, от машины, работающей под управлением SPARC, до x86. Могут ли быть затронуты метаданные ZFS по степени чистоты архитектуры ЦП?

Что действительно имеет значение при работе с пулами ZFS и переносимостьми данных, это их версии. Вы всегда можете импортировать пул, используя версию, меньшую или равную той, которую поддерживает ваша ОС, и то же правило применяется для наборов данных (например, файловых систем, zvols и моментальных снимков).

Поэтому, если вы планируете перемещать пулы ZFS из некоторых ОС на разные, убедитесь, что вы выбрали самую большую общую версию для пулов, файловых систем и zvols, которые хотите разделить. например:

zpool create -o version=28 -O version=5 ... 

Остерегайтесь также, чтобы ветвь с открытым исходным кодом ZFS представила «флаги функций», которые при включении делают пулы несовместимыми с Solaris. Они устанавливают версию пула на 5000. С другой стороны, флаги функций были разработаны, чтобы обеспечить некоторую гибкость при перемещении пула в ОС, не поддерживающем некоторые функции.

О архитектуре объекты ZFS записываются с использованием собственного битового упорядочения платформы. Это не проблема, так как все реализации ZFS могут читать как объекты с большим энтидом, так и маленькие конечные объекты. Континентальность сохраняется вместе со всеми структурами данных. Тогда нет проблем с импортом пула с x86 на SPARC и взаимно.

Наконец, у вас могут возникнуть проблемы при работе с пулами, созданными на несетевых дисках. Целевая ОС должна быть в состоянии понять разделение исходного диска. В худшем случае, если вы создадите пул на основе простых файлов (который не рекомендуется проводить вне тестирования), а используемая файловая система не может быть установлена ​​на целевой платформе.

Эта статья под названием « Zability Portability» , похоже, указывает на то, что ZFS очень переносима из разных реализаций. Из Linux, FUSE, BSD и т. Д.

выдержка # 1

Я нашел несколько примеров, когда люди переносили пулы ZFS между операционными системами, но только в одноразовом режиме, когда их пальцы прочно пересекались. Вот что я обнаружил при перемещении двух zpools, созданных в FreeNAS, в несколько других операционных систем.

Мои zpools состоят из пары зеркальных 500-гигабайтных дисков с именем cft и одного диска объемом 2 Тбайта с именем single. Первое, что я узнал, это то, что вы должны внимательно следить за именами пула, потому что утилиты ZFS не всегда будут автоматически распознавать и импортировать их.

выдержка № 2

Удивительно, что ZFS FUSE распознал пулы и автоматически установил их при загрузке. Точки монтирования изменились с / mnt / cft / и / mnt / single / под FreeNAS на / cft и / single, но просто работали.

Также довольно удивительно, что это работает с использованием компакт-диска Xubuntu live. Откройте терминал, введите команды apt-get, нажмите enter при появлении запроса и затем начните использовать zfs (8) и zpool (8), как обычно.

выдержка № 3

Как вы, вероятно, заметили при установке FreeBSD 9.0, программа установки теперь предлагает выбор оболочки и live CD. Я обнаружил, что live CD и PC-BSD командной строки ZFS-инструменты ведут себя одинаково. Это не должно удивлять, учитывая, что они оба по сути являются FreeBSD 9.0. Однако неожиданным было то, что FreeBSD 9.0 автоматически не распознал zpool для импорта. Это было даже после переформатирования одного диска, если инструменты Ubuntu ZFS FUSE внесли в него изменения. Несоответствие между версиями ZFS может иметь какое-то отношение к этому, но это не проблема в Ubuntu, которая представляет собой ZFS версии 16. Скачок от версии 15 под FreeNAS до версии 28 во FreeBSD 9.0, вероятно, является причиной, но обратная совместимость может быть немного более элегантный.

выдержка № 4

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