Назад | Перейти на главную страницу

OpenIndiana - ZFS-хранилище

Мне немного комфортно с параметрами командной строки Linux / opensolaris, но не очень хорошо.

Я пытаюсь создать хранилище на основе ZFS, спецификации:

Я немного запутался и у меня есть несколько вопросов:

  1. Загрузочный / установочный диск является отдельным, и у меня есть 4 дополнительных внутренних диска. Когда я выполняю установку, как мне сформировать пул, включающий все 4 диска?
  2. Если я пойду по пути napp-it (который мне показался проще) и сформирую пул из всех 4 дисков через веб-интерфейс, как я могу поделиться им со своими машинами Windows по сети, у меня также есть два iMac (Apple OSX) .
  3. Есть ли документ, который я могу прочитать о ZFS и о том, как с ним обращаться / поддерживать?
  4. Какие-нибудь другие рекомендации, по вашему мнению, помогут?

У меня действительно возникает соблазн установить zfs NAS на openindiana, и я буду благодарен, если какой-нибудь эксперт сможет предоставить пошаговые инструкции либо из командной строки, либо из napp-it web gui, включая настройку совместного использования с клиентами Windows и OSX.

Я могу рассказать вам команды CLI для создания пула. Однако я не знаю GUI или WebUI.

#replace drive0... with your drives    

zpool create tank drive0 drive1
#This will create a striped set, no redundancy, single failure = dead pool

zpool create tank mirror drive0 drive1 mirror drive2 drive3
#This will create a stripe set of mirrors, basically RIAD10

zpool create tank raidz drive0 drive1 drive2 drive3
#Thid create a stripe set with single parity, like RAID5

zpool create tank raidz2 drive0 drive1 drive2 drive3
#Thid create a stripe set with double parity, like RAID6

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

Вы можете изменить точку монтирования пула (по умолчанию /tank, потому что это имя выбрано выше) с помощью такой команды, как zfs set mountpoint=/another_location tank

Это не применимо непосредственно к вашей ситуации, но может помочь, у меня есть небольшой введение в ZFS для FreeBSD на мой блог.

По вопросу №1: загрузочные пулы ZFS могут быть только однодисковыми или простыми зеркалами. В настоящее время нельзя использовать несколько зеркал или пулов RAID-Z для загрузки из-за ограничений в загрузчиках (GRUB на x86, OpenBoot на SPARC). IIRC, есть предложение Google Summer of Code для получения поддержки GRUB 2.0 в OI, что может позволить загрузку из более сложных пулов. На данный момент вам понадобятся дополнительные диски для корневого / загрузочного пула, если вы хотите использовать четыре текущих диска в одном пуле.

По вопросу № 2: См. Свойство "sharemb" на странице руководства zfs (1) для включения совместного использования CIFS для клиентов Windows. MacOS X также должна иметь возможность подключаться к общим ресурсам CIFS, хотя, вероятно, и там можно использовать NFS.

По вопросу № 3: Руководство по лучшим практикам ZFS содержит много информации, которая поможет вам: http://www.solarisinternals.com/wiki/index.php/ZFS_Best_Practices_Guide

По вопросу №4: я согласен с ewwhite выше: подумайте о NexentaStor, если все, что вы хотите сделать, это создать NAS.

около 1: Установите OpenIndiana на один диск (зеркалирование не поддерживается базовым установщиком, если нужно, придется сделать позже)

2. Создайте свой пул, когда OpenIndiana работает.

3. Если вы используете napp-it, вы можете создавать пулы с меню пула и совместно использовать папки через меню общего доступа (просто щелкните папку ZFS - поделитесь столбцом smb) среди других задач управления, таких как диск, пул, общий доступ к acl, управление заданиями, снимками и репликацией.

4. Если вы хотите предоставить общий доступ к своей папке через afp и napp-it (полностью поддерживаемые веб-интерфейсом), вам необходимо сначала запустить программу установки napp-it online-afp-installer. См. Этот pdf.

Некоторое время назад я написал учебник по OpenIndiana.

Другая вещь, которую он имеет, - это простое объяснение того, как его немного заблокировать. У меня есть друзья и семья на сервере, поэтому я едва ли доверяю им больше, чем незнакомцам - в отношении моей системы.

В конце концов, они все еще остаются «пользователями». Никогда нельзя доверять «пользователям».

Пошаговое руководство по файловому серверу ZFS

-- РЕДАКТИРОВАТЬ --

По предложению текст сообщения был вырезан и вставлен.

Но в моем блоге он отформатирован лучше. Итак, читайте здесь, читайте там. Где бы то ни было.

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

Я буду переписывать это при обновлении до сервера с 16-20 отсеками.


Используйте Open Indiana с ZFS для создания несколько заблокированного файлового сервера

Установите OpenIndiana v148 с SSH

Для этого примера вам понадобится система как минимум с четырьмя (4) дисками.

The system disk
    This disk is to put the operating system on.
    I recommend at least 30GB
    The faster the better
The first data disk
    This the first disk of a pair.
    Reliablilty is paramount
    Buy as big as you can afford
The second data disk
    This the second disk of a pair.
    Reliablilty, again, is paramount
    And buy as big as you can afford
AT LEAST ONE BACKUP DISK
    RAID, ZFS, OTHER... their purpose is to help with uptime
    ZFS also assists in somewhat painlessly growing your storage capacity
    Backup is backup, redundant disk strategies are for use and failure
    Buy as big as you can afford

Следуйте подсказкам, включите SSH, используйте весь системный диск.

Обновите систему через CLI

pkg image-update --require-new-быть

Инструменты графического интерфейса не работают в версии 148 после установки.

Найдите имена дисков

формат

Используйте [CTRL + C] для выхода из команды форматирования.

Создайте зеркальный zpool

zpool создать зеркало newpool c2t2d0 c2t3d0

Оцените свою работу

zpool status df -h

Создайте базовую структуру каталогов

newpool | -business | -hobby | -books | -users | -admin01 | | -asmith | -shared | | -lsmith | -shared | -misc

mkdir / newpool / business / mkdir / newpool / hobby / mkdir / newpool / books / mkdir / newpool / users / mkdir / newpool / users / admin01 / mkdir / newpool / users / asmith / mkdir / newpool / users / asmith / shared / mkdir / newpool / users / lsmith / mkdir / newpool / users / lsmith / shared / mkdir / newpool / misc /

При необходимости создайте любые группы

groupadd admin01 groupadd internal groupadd external groupadd common

Добавьте любых несуществующих начальных пользователей

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

useradd -d / newpool / users / asmith / -c "Adam Smith" -G internal, common -s / usr / lib / rsh asmith useradd -d / newpool / users / lsmith / -c "Luanne Smith" -G external, общий -s / usr / lib / rsh lsmith

Возможны следующие варианты:

-d is the home directory /newpool/users/username/ in this example.
-c is the real name, it can really be anything. But it you want it to contain a space then enclose the value in double quotes.
-G list all the groups of the directories you want the people to have access to separated by commas.
    At the very least I give membership to the common group -G common .
    But maybe I want to give access to the external directory as well -G external,common .
-s /usr/lib/rsh is the 'restricted shell' to prevent a lot of funny business.

Установите пароли для всех несуществующих начальных пользователей

passwd lsmith passwd asmith

имя пользователя passwd

(Введите пароль дважды - тада!)

(passwd: пароль успешно изменен для имени пользователя)

Изменить существующих пользователей

usermod -G admin01, внутренний, общий admin01

(UX: usermod: admin01 в настоящее время авторизован, некоторые изменения могут не вступить в силу до следующего входа в систему.)

Вы можете проверить информацию о пользователе в текстовом файле / etc / passwd.

Вы можете проверить создание группы в текстовом файле / etc / group

Применить правильного владельца: свойства группы

chown admin01: admin01 / newpool / business / chown admin01: peers / newpool / hobby / chown admin01: peers / newpool / books / chown admin01: admin01 / newpool / users / chown admin01: admin01 / newpool / users / admin01 / chown asmith: admin01 / newpool / users / asmith / chown asmith: admin01 / newpool / users / asmith / shared / chown lsmith: admin01 / newpool / users / lsmith / chown lsmith: admin01 / newpool / users / lsmith / shared / chown admin01: common / newpool / разное /

Примените соответствующие разрешения

(4 чтения 2 записи 1 выполнение)

(! Выполнить требуется для не-владельца: группа в каталоге для просмотра файловой системы)

chmod 700 / newpool / business / chmod 750 / newpool / hobby / chmod 750 / newpool / books / chmod 711 / newpool / users / chmod 770 / newpool / users / admin01 / chmod 770 / newpool / users / asmith / chmod 770 / newpool / users / asmith / shared / chmod 770 / newpool / users / lsmith / chmod 770 / newpool / users / lsmith / shared / chmod 750 / newpool / misc /

770 обеспечивает возможность записи, чтения, перемещения для владельцев и членов группы и ничего другим - для каталогов обычных пользователей

750 дает запись владельцу, чтение и перемещение владельцу и членам группы и ничего другим - для доступа только для чтения для обычных пользователей

711 предоставляет весь доступ владельцу и возможность перемещаться по каталогу для всех - позволяет обычным пользователям спускаться глубже в дерево каталогов, где они могут иметь доступ

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

NFS и Самба

В настоящее время у меня нет общих ресурсов NFS или Samba для этого сервера.

Я обновлю инструкции, если это изменится.

Установить квоты

На моем файловом сервере я не планирую иметь много пользователей и даже меньше групп пользователей. Пока планов по квотам нет.

Если бы я установил квоту, я бы, вероятно, сделал это для каждого пользователя отдельно.

zfs устанавливает userquota @ username = 100G newpool / users / username

Однако с версией 15 также доступны квоты групп пользователей ZFS.

zfs устанавливает groupquota @ common = 250GB newpool / misc

Больше пользователей?

Добавить новые каталоги

mkdir в users / newpool / users / username / и / newpool / users / username / shared /

Добавить новых пользователей

useradd -d / newpool / users / username / -c "Fname Lname" -G [список, разделенный запятыми,] common -s / usr / lib / rsh имя пользователя

Смена владельца: сгруппируйте свойства в каталоги новых пользователей

То же, что и выше

Применяйте соответствующие разрешения к новым каталогам

То же, что и выше

Установить новый пароль пользователя

То же, что и выше