ZFS в качестве основной ФС

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
dagor
мл. сержант
Сообщения: 81
Зарегистрирован: 2009-12-10 17:52:45

Re: ZFS в качестве основной ФС

Непрочитанное сообщение dagor » 2011-01-30 22:08:38

ZAPODLO писал(а):Трэд распараллелился :)) по проблемам...

Собственно вот... увеличение ОЗУ, пересборка ядра и правка loader.conf на использование памяти для ZFS 1536MB - не дала ровным счетом ничего... Скорость как была УГ, так и осталась... Я хз, что с этим делать... Через Самбу заливается 40-60 Mbyte\s, локально копирование с пула на пул - не более 20. Пойду убьюсь обо что-нибудь...
Мне кажется я понял в чем у тебя проблема,точней проблема не у тебя,а это так система делает,она не дает одному потоку захватить шину... Она както хитро распределяет пропускную способность по потокам... А так как ты копируешь в один поток,то получаешь ограничение....
Попробуй вот что,открой несколько окон,в первом запусти systat -vm,в остальных 3-5 чтото в этом духе dd if=/dev/zero of=/mnt/Serials/000x.dd bs=128K count=10000 где x соответствует окну. дальше запускаешь одновременно все эти копирования... а в окне с systat смотришь загрузку винта и с какой скоростью он качает,кстати результаты dd можно сложить и получить общую скорость ;)

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Yorik
проходил мимо

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Yorik » 2011-01-31 18:40:38

Fomalhaut писал(а):
Yorik писал(а):Мне посчастливилось огрести проблем с ZFS на GPT.
Видимо, при очередном отключении электричества на моем HS полетела GPT на одном из дисков. После этого восстановить GPT или zpool, что на ней был, так и не удалось.
После этого на винты с данными ZFS ставлю на весь винт, не разбивая на разделы, дабы избежать лишнего уровня ошибок (не просто так ZFS охватывает и уровень менеджера томов).
Всвязи со всем этим вопрос - можно ли как-то поставить ZFS в качестве основной ФС без GPT? Чего для этого не хватает?
Собственно мелочь: freebsd-boot, размером от 32 до 545 кБ. :) Своп-то можно и внутри ZFS пула создать (только без возможности сбрасывать туда крэш-дамп ядра), а вот избавиться от загрузчика будет сложновато. Это не загрузочные ZFS пулы можно распространять на весь диск, а с загрузочными такое не пройдёт.
Но про слетание GPT подробней, плз: какие сиптомы и что делалось. Я на такой случай сделал:

Код: Выделить всё

# gpart backup ad4 > /mnt/ad4.bkp
Если что - можно GPT восстановить вручную с livefs:

Код: Выделить всё

# gpart restore ad4 < /mnt/ad4.bkp
Собственное я делал ссылку на "Резервное копирование таблицы разделов при помощи gpart".
Дело было давно, один диск начал ругаться на GPT, но монтироваться (типа, использую резервную таблицу), а вот второй перестал монтироваться вообще. В интернетах нашел неккую утилитку (что-то вроде GPT recover, точно не помню название), которая таки сумела открыть таблицу разделов на винте (правда, пришлось подключать его к ноуту, ибо на 64битной FreeBSD она отказывалась толи собираться, толи работать), и при каждой попытке что-то сделать, ругалась, что размер раздела-то у вас больше, чем весь диск.
В результате после кучи неуспешных попыток плюнул на колекцию фильмов, убил GPT и поставил ZFS на весь диск.
Собственно, в недавнем Status Report обнаружил, что появилось в gpart "GPT recovering", но, естественно, уже было поздно.

А весь мой вопрос был спровоцирован статьей, в которой творят после

Код: Выделить всё

2xPIII-500MHz$ zpool create rootVG /dev/amrd0
После такого:

Код: Выделить всё

2xPIII-500MHz$ dd if=/boot/zfsboot of=/dev/amrd0 bs=512 count=1
1+0 records in
1+0 records out
512 bytes transferred in 0.017034 secs (30058 bytes/sec)
2xPIII-500MHz$ dd if=/boot/zfsboot of=/dev/amrd0 bs=512 skip=1 seek=1024
64+0 records in
64+0 records out
32768 bytes transferred in 0.030083 secs (1089247 bytes/sec)
2xPIII-500MHz$ 
И все работает.

Видимо, я таки ошибся тредом :)

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35477
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Alex Keda » 2011-01-31 20:38:21

а почему работать-то не должно, я вот непонимаю
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Fomalhaut
мл. сержант
Сообщения: 109
Зарегистрирован: 2010-12-05 12:28:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Fomalhaut » 2011-01-31 21:58:39

dagor писал(а):Есть подозрение,что гдето я чтото в конфигах удалил не подумав,что система считает что это пересобирать не надо.
Очень похоже - не должно такого быть.
dagor писал(а):
Fomalhaut писал(а):Но уточните, плз, что вы делали, по подробней, плз.
Читал вышеуказанную статью,поправил согласно нее /usr/src/cddl/contrib/opensolaris/cmd/zpool/zpool_vdev.c
тоесть добавил строчку verify(nvlist_add_uint64(vdev, ZPOOL_CONFIG_ASHIFT, 12) == 0); в строку 315
что как я понял говорит что у нас 4к сектора причем говорит,что 4к всегда.

Код: Выделить всё

cd /usr/src/cddl/sbin/zpool
make clean
make 
make install
make clean
Вообще-то очень странно, что код из Солярис подошёл к коду из Фряхи, хотя второй и базируется на первом. И вообще всё это странно: gnop вполне самодостаточен по своей сути. Как мне сказали: при правильно выравнивании даже gnop иногда не требуется. Но это ещё проверить надо будет.
dagor писал(а):
Fomalhaut писал(а):И ваше "zpool create" что означает? Нормальную скорость записли данных только через пересоздание пула?
Пул я только создаю,посему я просто его создал заново,насколько это подействует на существующий пул сказать не могу,также не могу сказать что будет с если в пуле разносекторные диски,кстати что вообще должна ZFS по этому поводу делать нужно спрашивать спецов.
Насколько я понял, необходимо привети их к одному размеру сектора, т.е. использовать gnop для обоих дисков, приведя их какому-то одному разделу. Но любой вариант будет не оптимальным, но 4кБ -> 512Б представляется сильно менее оптимальным, чем 512Б -> 4кБ.
dagor писал(а):
Fomalhaut писал(а):И базовое: у вас винты с 4кБ секторами?
Само собой.
диск на 2ТБ,GPT,раздел создан -b 40

Yorik
проходил мимо

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Yorik » 2011-01-31 22:04:40

Alex Keda писал(а):а почему работать-то не должно, я вот непонимаю
Конкретных аргументов нет, только общие выводы.
- кругом рассказывают, как поставить GPT, freebsd-boot, zfs, но не просто zfs (втч в статье, про которую топик);
- почему-то я предполагал, что zpool берет "что дадут" и размечает вовсю, начиная с самого 0 сектора;
- zfsboot, мягко говоря, великовата посравнению с boot0-1, разве BIOS загрузит столько?
- может, даже и не надеялся, что все так хорошо.

Аватара пользователя
Fomalhaut
мл. сержант
Сообщения: 109
Зарегистрирован: 2010-12-05 12:28:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Fomalhaut » 2011-01-31 23:05:32

ZAPODLO писал(а):Подскажите, чем может быть вызвана низкая (около 15-20 мбайт\с) скорость копирования с пула на пул?
Причем с виндовой машины через самбу скорость копирование 40-50 Мбайт\с
Вот подумалось: а как мерял скорость локально?
Померяй так:

Код: Выделить всё

$ dd if=/tmp/video.avi of=/tmp/video2.avi bs=16k
где video.avi - любой большой файл на пуле - лучше фильм.
Каковы будут результаты?

Yorik
проходил мимо

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Yorik » 2011-02-01 2:22:26

Yorik писал(а):
Alex Keda писал(а):а почему работать-то не должно, я вот непонимаю
Конкретных аргументов нет, только общие выводы.
- кругом рассказывают, как поставить GPT, freebsd-boot, zfs, но не просто zfs (втч в статье, про которую топик);
- почему-то я предполагал, что zpool берет "что дадут" и размечает вовсю, начиная с самого 0 сектора;
- zfsboot, мягко говоря, великовата посравнению с boot0-1, разве BIOS загрузит столько?
- может, даже и не надеялся, что все так хорошо.
Попробовал поставить через livefs на виртуалку. Как делал:
1. загружаемся, в fixit делаем kldload для opensolaris и zfs
2. 2 раза dd /boot/zfsboot
2. zpool create -O mountpoint=none rootFS /dev/ad0; mount -t zfs rootFS /mnt
3. выходим из fixit, в options ставим в качестве целевой /mnt, ставим distributions base и kernel
4. создаем (или копируем, если догадались сперва до mkdir /boot/zfs) zpool.cache в /mnt/boot/zfs
5. добавляем zfs_enable="YES" и vfs.root.mountfrom="zfs:rootFS" в loader.conf

После перезагрузки получил Can't load kernel.
Что проверить, как надо?

ZAPODLO
рядовой
Сообщения: 21
Зарегистрирован: 2011-01-20 7:44:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ZAPODLO » 2011-02-01 9:28:21

Fomalhaut, dagor - спасибо за советы.

Попробую, о результатах отпишусь.

ZAPODLO
рядовой
Сообщения: 21
Зарегистрирован: 2011-01-20 7:44:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ZAPODLO » 2011-02-01 13:34:25

Код: Выделить всё

zp# dd if=/STORAGE_1/Films_HD/Red.mkv of=/STORAGE_4/Red.mkv bs=16k
543267+1 records in
543267+1 records out
8900900743 bytes transferred in 388.238473 secs (22926375 bytes/sec)

ZAPODLO
рядовой
Сообщения: 21
Зарегистрирован: 2011-01-20 7:44:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ZAPODLO » 2011-02-01 13:56:51

dagor писал(а):Попробуй вот что,открой несколько окон,в первом запусти systat -vm,в остальных 3-5 чтото в этом духе dd if=/dev/zero of=/mnt/Serials/000x.dd bs=128K count=10000 где x соответствует окну. дальше запускаешь одновременно все эти копирования... а в окне с systat смотришь загрузку винта и с какой скоростью он качает,кстати результаты dd можно сложить и получить общую скорость ;)
ada3 = STORAGE_4

Код: Выделить всё

Disks    ada0    ada1     ada2     ada3     ada4  ada5 pass0    271728     wire
KB/t     0.00     0.00     0.00     84.39    0.00   0.00  0.00     30440        act
tps         0          0          0        604        0        0     0          17048       inact
MB/s    0.00     0.00     0.00     51.82    0.00   0.00  0.00      100         cache
%busy     0          0          0          61        0        0     0           1717972 free
                                                                                          17168
Скорость возросла. Обычное копирование ведет себя так же, скорость маленькая.
dagor писал(а):Мне кажется я понял в чем у тебя проблема,точней проблема не у тебя,а это так система делает,она не дает одному потоку захватить шину... Она както хитро распределяет пропускную способность по потокам... А так как ты копируешь в один поток,то получаешь ограничение....
Можно чуть поподробнее?

Гость
проходил мимо

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Гость » 2011-02-01 15:34:04

Yorik писал(а): Что проверить, как надо?
Голову.

Аватара пользователя
Fomalhaut
мл. сержант
Сообщения: 109
Зарегистрирован: 2010-12-05 12:28:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Fomalhaut » 2011-02-02 0:55:06

Yorik писал(а):
Alex Keda писал(а):а почему работать-то не должно, я вот непонимаю
Конкретных аргументов нет, только общие выводы.
- кругом рассказывают, как поставить GPT, freebsd-boot, zfs, но не просто zfs (втч в статье, про которую топик);
А как это видится? BIOS должна:
1) знать ZFS;
2) найти на дисках (зеркалах и RAIDZ-ах) все пулы;
3) выбрать из всех найденых загрузочный пул;
4) найти на выбранном пуле датасет с ядром;
5) загрузить выбранное ядро...
Кто бы этому научил старый добрый BIOS-то? :)
Yorik писал(а):- почему-то я предполагал, что zpool берет "что дадут" и размечает вовсю, начиная с самого 0 сектора;
Возьмёт, если надо, и без GPT/MBR. Но на загрузочном диске надо где-то разместить загрузчик.

Yorik
проходил мимо

Re: ZFS в качестве основной ФС

Непрочитанное сообщение Yorik » 2011-02-02 1:51:57

Fomalhaut писал(а):
Yorik писал(а):
Alex Keda писал(а):а почему работать-то не должно, я вот непонимаю
Конкретных аргументов нет, только общие выводы.
- кругом рассказывают, как поставить GPT, freebsd-boot, zfs, но не просто zfs (втч в статье, про которую топик);
А как это видится? BIOS должна:
1) знать ZFS;
2) найти на дисках (зеркалах и RAIDZ-ах) все пулы;
3) выбрать из всех найденых загрузочный пул;
4) найти на выбранном пуле датасет с ядром;
5) загрузить выбранное ядро...
Кто бы этому научил старый добрый BIOS-то? :)
Yorik писал(а):- почему-то я предполагал, что zpool берет "что дадут" и размечает вовсю, начиная с самого 0 сектора;
Возьмёт, если надо, и без GPT/MBR. Но на загрузочном диске надо где-то разместить загрузчик.
Это и смутило меня в той статье.
В общем-то, смысл ясен (как должно быть) - при старте bios загружает zfsboot из первого блока диска, zfsboot обнаруживает zpool, ну и дальше обычными средствами boot1-2 грузит loader, итд.
Удивление по поводу разворачивания zpool поверх загрузчика несколько пошатнулось, когда я почитал доку. Оказывается, в самом начале vdev'а хранится одна из копий vdev label длиной в 256К, которая начинается с 8К "Blank space" (так и написано - "на всякий случай"), а затем еще 8K "Boot Block Header" (который зарезервирован на будущее). Далее идут св-ва vdev'а итп. В результате получаем 16К места, чтобы "развернуться" загрузчику.
Но zfsboot весит 33K, а если делать двойным dd со сдвигом, то 32.5K.
И тем не менее, судя по реакции Alex'а, должно как-то работать.
Вот собственно моя попытка на виртуальном кролике не удалась. Хотелось бы понять, почему "ему можно, а мне нельзя".

ZAPODLO
рядовой
Сообщения: 21
Зарегистрирован: 2011-01-20 7:44:33

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ZAPODLO » 2011-02-09 19:15:04

апну (
Последний раз редактировалось f_andrey 2011-02-09 20:20:40, всего редактировалось 1 раз.
Причина: Не надо бессмысленно апать топик.

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-22 16:09:31

то ли лыжи не едут то ли я .....

Код: Выделить всё

usb# uname -rp ; gpart show ad8
8.1-RELEASE amd64
=>       34  312581741  ad8  GPT  (149G)
         34        256    1  freebsd-boot  (128K)
        290    8388608    2  freebsd-swap  (4.0G)
    8388898  304192877    3  freebsd-zfs  (145G)
чё токо не делал не грузится :st:

Аватара пользователя
fox
ст. лейтенант
Сообщения: 1154
Зарегистрирован: 2008-07-24 0:25:31
Откуда: Ukraine, Donetsk

Re: ZFS в качестве основной ФС

Непрочитанное сообщение fox » 2011-02-22 16:12:56

ttys писал(а):то ли лыжи не едут то ли я .....

Код: Выделить всё

usb# uname -rp ; gpart show ad8
8.1-RELEASE amd64
=>       34  312581741  ad8  GPT  (149G)
         34        256    1  freebsd-boot  (128K)
        290    8388608    2  freebsd-swap  (4.0G)
    8388898  304192877    3  freebsd-zfs  (145G)
чё токо не делал не грузится :st:
А что пишет?
Да пребудет с нами сила!!!
Всех убью, один останусь!

Аватара пользователя
fox
ст. лейтенант
Сообщения: 1154
Зарегистрирован: 2008-07-24 0:25:31
Откуда: Ukraine, Donetsk

Re: ZFS в качестве основной ФС

Непрочитанное сообщение fox » 2011-02-22 16:14:25

Это у вас сделано?

Код: Выделить всё

Fixit$ echo 'zfs_load="YES"' > /boot/loader.conf
Fixit$ echo 'vfs.root.mountfrom="zfs:systor"' >> /boot/loader.conf
Как дата-сетенги разбиты?
Да пребудет с нами сила!!!
Всех убью, один останусь!

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-22 16:44:04

fox писал(а):Это у вас сделано?

Код: Выделить всё

Fixit$ echo 'zfs_load="YES"' > /boot/loader.conf
Fixit$ echo 'vfs.root.mountfrom="zfs:systor"' >> /boot/loader.conf
Как дата-сетенги разбиты?

Код: Выделить всё

zfs_load="YES"
vfs.root.mountfrom="zfs:zroot"

Код: Выделить всё

usb# zpool import
  pool: zroot
    id: 13044734196958338237
 state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:

	zroot       ONLINE
	  ad8p3     ONLINE

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-23 11:41:24

3.11. Выйдем из режима chroot:

Fixit$ umount /dev
Fixit$ exit
чёто я не понял что это :unknown:

Аватара пользователя
fox
ст. лейтенант
Сообщения: 1154
Зарегистрирован: 2008-07-24 0:25:31
Откуда: Ukraine, Donetsk

Re: ZFS в качестве основной ФС

Непрочитанное сообщение fox » 2011-02-23 15:00:32

ttys писал(а):
3.11. Выйдем из режима chroot:

Fixit$ umount /dev
Fixit$ exit
чёто я не понял что это :unknown:
А что не понятно то? Установили мир с ядром, зашли под chroot покапались потом вышли... Что не ясно то?
Что такое chroot?
Да пребудет с нами сила!!!
Всех убью, один останусь!

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-23 15:02:23

набрёл на тесты zfs в которых участвовала btrfs
как я понял это аналог только для линуха?
или я чёто не то понял? :cz2:

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-23 15:04:02

fox писал(а):
ttys писал(а):
3.11. Выйдем из режима chroot:

Fixit$ umount /dev
Fixit$ exit
чёто я не понял что это :unknown:
А что не понятно то? Установили мир с ядром, зашли под chroot покапались потом вышли... Что не ясно то?
Что такое chroot?
неясно как umount /dev

Аватара пользователя
fox
ст. лейтенант
Сообщения: 1154
Зарегистрирован: 2008-07-24 0:25:31
Откуда: Ukraine, Donetsk

Re: ZFS в качестве основной ФС

Непрочитанное сообщение fox » 2011-02-23 15:05:15

Да дев вообще не трогай в твоём случае он тебе не нужен!
Да пребудет с нами сила!!!
Всех убью, один останусь!

Аватара пользователя
fox
ст. лейтенант
Сообщения: 1154
Зарегистрирован: 2008-07-24 0:25:31
Откуда: Ukraine, Donetsk

Re: ZFS в качестве основной ФС

Непрочитанное сообщение fox » 2011-02-23 15:09:20

Делай всё по этой статье, только можешь заменить mnt2 на dist и это пропустить:

Код: Выделить всё

Fixit$ cd /usr/src/sys/boot/
Fixit$ make obj
Fixit$ make depend
Fixit$ make
Fixit$ cd i386/loader
Fixit$ make install
А в целом всё по статье и получется, статья хорошая!
Да пребудет с нами сила!!!
Всех убью, один останусь!

Аватара пользователя
ttys
*BSD
Сообщения: 402
Зарегистрирован: 2009-06-26 8:37:11
Откуда: Ростов-на-Дону
Контактная информация:

Re: ZFS в качестве основной ФС

Непрочитанное сообщение ttys » 2011-02-23 15:09:38

чисто для эксперимента ставил :smile:
так что заморачиватся с датасетами не стал

Код: Выделить всё

(pts/0)[ttys@zfs:~]> uname -rp
8.2-RELEASE amd64
(pts/0)[ttys@zfs:~]> df
Filesystem    Size    Used   Avail Capacity  Mounted on
zroot         143G    1.6G    141G     1%    /
devfs         1.0K    1.0K      0B   100%    /dev
procfs        4.0K    4.0K      0B   100%    /proc