LINUX.ORG.RU

Существенный прогресс в проекте ZFS для FreeBSD

 ,


0

0

Произошло обновление до 13 версии ZFS. Сделано очень большое число улучшений. Среди них: начальная поддержка NFSv4-ACLs, level 2 cache for ZFS, позволяет использовать для кеша дополнительные диски, что приводит к "huge performance improvements mostly for random read of mostly static content", делегирование прав администрирования, что позволяет рядовым гражданам создавать личные файловые системы, снапшоты и т.д. ZFSBoot - загрузки системы с ZFS pool (в начальной стадии). И целый ряд других.

>>> Подробности



Проверено: Shaman007 ()
Ответ на: комментарий от AVL2

> не проверял, но не вижу причин. по которым она станет другой.

> Ведь это просто зеркало. Диски копируются бит в бит.

Верно, на обе половины пишется одна и та же информация. А вот что будет при чтении с дисков поочередно? Четные блоки с нулевого диска, нечетные - с первого?

anonymous
()
Ответ на: комментарий от anonymous

Да ничего не будет. Если диски в работе, то скорость вдвое повысится. На контрольную сумму это не повлияет.

AVL2 ★★★★★
()
Ответ на: комментарий от AVL2

> Да ничего не будет. Если диски в работе, то скорость вдвое повысится. На контрольную сумму это не повлияет.

Даже если мы поверх одного диска запишем нулей?

anonymous
()
Ответ на: комментарий от anonymous

Тогда обнуленный диск отрубится. Раид на то и существует. Правда, многое зависит от его реализации.

AVL2 ★★★★★
()
Ответ на: комментарий от iZEN

> Заменил материнку,
> Во FreeBSD подобного бреда не может быть в принципе.
IZEN, это просто ROTFL!
если во фришнике замените материнку и её новая встроенная плата совпадёт
с вставленной в pci - Вы также получите секс кто из них кто. Кстати, секс будет и в том случае если в новой встроенной использутеся другой драйвер. в линуксе в таком случае выручает привзяка по MAC -по крайней мере старая ethN не съедет. и вообще говоря, замена оборудваония - серьзёное дело, может получиться в итоге что угодно.

mumpster ★★★★★
()
Ответ на: комментарий от iZEN

> Во FreeBSD название физического адаптера присвоено сетевому интерфейсу
зиен, в линуксе Вы тоже можете поменять имя на что угодно, кроме описанных уже коллегами возможностей можно также во время сборки задать имя - как и сделано например для гранчей и WAN плат типа digium E1/G.703 (hdlc) или sangoma (уж не помню как они обызваются, ЕМНИП, wan).

mumpster ★★★★★
()
Ответ на: комментарий от anonymous

> Интересно, как вы чего-то подобного с md/lvm добиваться будете:

[root@viking mnt]# ls -lL /dev/serenity/tx*
brw-rw---- 1 root disk 253, 6 Ноя 21 09:59 /dev/serenity/tx1
brw-rw---- 1 root disk 253, 7 Ноя 21 10:22 /dev/serenity/tx2
brw-rw---- 1 root disk 253, 8 Ноя 21 09:59 /dev/serenity/tx3
brw-rw---- 1 root disk 253, 9 Ноя 21 10:16 /dev/serenity/tx4

Это у нас компоненты массива

[root@viking mnt]# mdadm --detail /dev/md0
/dev/md0:
[...поскипано...]
    Number   Major   Minor   RaidDevice State
       0     253        6        0      active sync   /dev/dm-6
       1     253        7        1      active sync   /dev/dm-7
       2     253        8        2      active sync   /dev/dm-8

       3     253        9        -      spare   /dev/dm-9

А это массив

[root@viking mnt]# mount -t ext3 /dev/md0 /mnt/tmp

Примонтируем ФС на этом массиве

[root@viking mnt]# dd if=/dev/urandom of=/mnt/tmp/xxxx bs=1024 count=100
100+0 records in
100+0 records out
102400 bytes (102 kB) copied, 0,0369949 s, 2,8 MB/s
[root@viking mnt]# sync
[root@viking mnt]# md5sum /mnt/tmp/xxxx 
e7938a714dc12f16b61c1b5f5d2dc616  /mnt/tmp/xxxx

Создадим файл.

[root@viking mnt]# umount /mnt/tmp

Омонтируем. Все, буферы сброшены, операций с
устройством нет и больше не будет - начинаем "войну".

[root@viking mnt]# dd if=/dev/zero of=/dev/serenity/tx2 bs=1024k
dd: writing `/dev/serenity/tx2': No space left on device
1025+0 records in
1024+0 records out
1073741824 bytes (1,1 GB) copied, 28,7038 s, 37,4 MB/s

Затираем элемент массива, не останавливая его.

[root@viking mnt]# mount -t ext3 /dev/md0 /mnt/tmp

Но оно по-прежнему монтируется, и...

[root@viking mnt]# md5sum /mnt/tmp/xxxx 
e7938a714dc12f16b61c1b5f5d2dc616  /mnt/tmp/xxxx

Контрольная сумма совпадает. Вот только у нас в линупсе
это все ХЗ сколько лет работает :-)

no-dashi ★★★★★
()
Ответ на: комментарий от AVL2

>>То есть вы утверждаете, что это будет работать точно также?
>>И дайджест MD5 тот же самый получится? Продемонстрируйте! Слабо?


>не проверял, но не вижу причин. по которым она станет другой.

>AVL2



С Л И В З А Щ И Т А Н !!!


:)

anonymous
()
Ответ на: комментарий от no-dashi

> [root@viking mnt]# mdadm --detail /dev/md0
>/dev/md0:
>[...поскипано...]
>    Number   Major   Minor   RaidDevice State
>       0     253        6        0      active sync   /dev/dm-6
>       1     253        7        1      active sync   /dev/dm-7
>       2     253        8        2      active sync   /dev/dm-8
>
>       3     253        9        -      spare   /dev/dm-9

Ну что же вы, батенька, самое интересное то "поскипали"? Также было бы интересно увидеть полный вывод этой же команды после dd. И где там у нас суперблок расположен? В конце диска? Давайте его не будем затирать, ладно? 

Два, это скорее ответ на первый пример, а не на второй. Когда ждать аналога второго примера?

anonymous
()
Ответ на: комментарий от AVL2

> посмотри на одно сообщение в верх. все бъется.

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

Линукс отличная система - для определенных задач, но как и у любой другой системы у нее есть и сильные, и слабые стороны. Точно так же, как они есть и у МакОСа, Соляриса, ФриБСД и прочих.

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

anonymous
()
Ответ на: комментарий от mumpster

>> Заменил материнку,
>> Во FreeBSD подобного бреда не может быть в принципе.

>IZEN, это просто ROTFL!

>если во фришнике замените материнку и её новая встроенная плата совпадёт с вставленной в pci - Вы также получите секс кто из них кто.


Чего-то я не встречал дискретных сетевушек на NVIDIA-чипах (драйвер nve или nfe). Да и Realtek (драйвер rl) как-то интегрированных не попадалось.
Почему так?
Потому что теория вероятности говорит нам о небольшой вероятности совпадений такого рода вещей: чтобы имена сетевой интеграшки и дискретки совпали — это надо ещё постараться. :)

iZEN ★★★★★
()
Ответ на: комментарий от no-dashi

# mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sdb /dev/sdc
mdadm: array /dev/md0 started.
# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Sat Nov 22 15:52:26 2008
     Raid Level : raid1
     Array Size : 524224 (512.02 MiB 536.81 MB)
  Used Dev Size : 524224 (512.02 MiB 536.81 MB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sat Nov 22 15:52:26 2008
          State : clean, resyncing
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

 Rebuild Status : 18% complete

           UUID : e316db04:64ece858:e368bf24:bd0fce41 (local to host ubuntu)
         Events : 0.1

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
# mkfs -t ext3 /dev/md0
mke2fs 1.41.3 (12-Oct-2008)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
131072 inodes, 524224 blocks
26211 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
64 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks: 
	8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

Writing inode tables: done                            
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
# mount -t ext3 /dev/md0 /mnt
# dd if=/dev/urandom of=/mnt/file bs=1024k count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 30.509 s, 3.4 MB/s
# md5sum /mnt/file
fd40c31fe304a5dc6959009ed0cf1728  /mnt/file
# umount /mnt
# dd if=/dev/zero of=/dev/sdb bs=8k seek=1024 count=4096
4096+0 records in
4096+0 records out
33554432 bytes (34 MB) copied, 0.331426 s, 101 MB/s
# mount -t ext3 /dev/md0 /mnt
# md5sum /mnt/file
aa4b30e4e43ca6b936f798ca870939b2  /mnt/file

Контрольная сумма не совпадает :-)

# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Sat Nov 22 15:52:26 2008
     Raid Level : raid1
     Array Size : 524224 (512.02 MiB 536.81 MB)
  Used Dev Size : 524224 (512.02 MiB 536.81 MB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sat Nov 22 15:55:05 2008
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : e316db04:64ece858:e368bf24:bd0fce41 (local to host ubuntu)
         Events : 0.6

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
# 



> Вот только у нас в линупсе это все ХЗ сколько лет работает :-)

Вот только у вас в Линуксе это ХЗ сколько лет так и работает :-)
Сколько кстати? С 2001? Или раньше?

anonymous
()
Ответ на: комментарий от anonymous

> И где там у нас суперблок расположен?

Безразлично. Был затерто полностью одно из устрйств в составе массива. Если сделать рестарт, массив автоматом не соберется, устроит истерику "потерян компонент". Нужно вручную собрать, подтведив "да, я знаю что устройство отсутствует".

> Также было бы интересно увидеть полный вывод этой же команды после dd

Какой команды? mdadm? Проверьте сами. В тесте был задействован raid5, дабы считать контрольные суммы. На зеркале, кстати, все не так красиво - там контрольные суммы не считаются, и можно получить неверные данные.

no-dashi ★★★★★
()
Ответ на: комментарий от iZEN

А если их несколько встроенных? или несколько одинаковых в слоты вставлено?

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

AVL2 ★★★★★
()
Ответ на: комментарий от anonymous

>так, попытка открыть глаза на то, что в мире есть еще что-то, кроме Линукса,

прям торсионщики и адвентисты седьмого неба...

>Линукс отличная система -

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

Что интересно, никто даже не задумывается, зачем в простой, как лом системе для роутеров, сверхтяжелая 128 битная fs?

Понты?

AVL2 ★★★★★
()
Ответ на: комментарий от no-dashi

> Какой команды? mdadm? Проверьте сами. В тесте был задействован raid5, дабы считать контрольные суммы. На зеркале, кстати, все не так красиво - там контрольные суммы не считаются, и можно получить неверные данные.

RAID-5 не считает никаких контрольных сумм, все что он считает - это четность. А использует он ее только в том случае, если операция чтения с диска вернет ошибку. Дальше объяснять, или самостоятельно догадаетесь?

Как вы, наверное, заметили, с зеркалом я проверил сам, и, пользуясь вашим советом, проверил и для RAID-5. И вот каковы результаты:

# mdadm --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd
mdadm: array /dev/md0 started.
# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Sun Nov 23 02:20:01 2008
     Raid Level : raid5
     Array Size : 1048448 (1024.05 MiB 1073.61 MB)
  Used Dev Size : 524224 (512.02 MiB 536.81 MB)
   Raid Devices : 3
  Total Devices : 3
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun Nov 23 02:21:27 2008
          State : clean
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : 52d0e249:5b808b7f:e368bf24:bd0fce41 (local to host ubuntu)
         Events : 0.4

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
# mkfs -t ext3 /dev/md0
mke2fs 1.41.3 (12-Oct-2008)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
65536 inodes, 262112 blocks
13105 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376

Writing inode tables: done                            
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
# mount -t ext3 /dev/md0 /mnt
# dd if=/dev/urandom of=/mnt/file bs=1024k count=200
200+0 records in
200+0 records out
209715200 bytes (210 MB) copied, 48.3902 s, 4.3 MB/s
# md5sum /mnt/file
4e761e7270677d8fa7caf2ec05022495  /mnt/file
# umount /mnt
# dd if=/dev/zero of=/dev/sdb bs=8k seek=1024 count=4096
4096+0 records in
4096+0 records out
33554432 bytes (34 MB) copied, 1.79519 s, 18.7 MB/s
# mount -t ext3 /dev/md0 /mnt
# md5sum /mnt/file
260ec4003a81572876cbbd844678ebd7  /mnt/file
#

Контрольная сумма не совпадает, что неудивительно. Может быть в статусе устройств что-то изменилось?

# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Sun Nov 23 02:20:01 2008
     Raid Level : raid5
     Array Size : 1048448 (1024.05 MiB 1073.61 MB)
  Used Dev Size : 524224 (512.02 MiB 536.81 MB)
   Raid Devices : 3
  Total Devices : 3
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun Nov 23 02:30:46 2008
          State : clean
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : 52d0e249:5b808b7f:e368bf24:bd0fce41 (local to host ubuntu)
         Events : 0.4

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
# 

Нет - также, как и зеркало, RAID-5 не обнаружил никаких проблем, и спокойно возвращает вместо наших данных какой-то мусор.

Так сколько говорите лет оно вот так вот и работает?

anonymous
()
Ответ на: комментарий от AVL2

>>так, попытка открыть глаза на то, что в мире есть еще что-то, кроме Линукса,

>прям торсионщики и адвентисты седьмого неба...

>>Линукс отличная система -

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

>Что интересно, никто даже не задумывается, зачем в простой, как лом системе для роутеров, сверхтяжелая 128 битная fs?

>Понты?

Have you ever kissed a girl?

anonymous
()
Ответ на: комментарий от no-dashi

> Какой команды? mdadm? Проверьте сами. В тесте был задействован raid5, дабы считать контрольные суммы. На зеркале, кстати, все не так красиво - там контрольные суммы не считаются, и можно получить неверные данные.

Может быть, что-то изменится после полной перезаписи одного из дисков? Посмотрим:

# umount /mnt
# dd if=/dev/zero of=/dev/sdb                           
dd: writing to `/dev/sdb': No space left on device
1048577+0 records in
1048576+0 records out
536870912 bytes (537 MB) copied, 59.3287 s, 9.0 MB/s
# mount -t ext3 /dev/md0 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/md0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

#

Опа! Изменилось! Файловая система оказалась повреждена, что ставит под сомнение чистоту вашего эксперимента, господин no-dashi.

Может быть, хоть теперь RAID-5 сумел определить, что с одним из дисков что-то не так?
 
# mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Sun Nov 23 02:20:01 2008
     Raid Level : raid5
     Array Size : 1048448 (1024.05 MiB 1073.61 MB)
  Used Dev Size : 524224 (512.02 MiB 536.81 MB)
   Raid Devices : 3
  Total Devices : 3
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun Nov 23 03:47:51 2008
          State : clean
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 64K

           UUID : 52d0e249:5b808b7f:e368bf24:bd0fce41 (local to host ubuntu)
         Events : 0.4

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc
       2       8       48        2      active sync   /dev/sdd
# 


Нет - с точки зрения MD все в порядке. Можно, конечно, ему подсказать, что с одним из дисков что-то не так. Попробуем:

# mdadm /dev/md0 --fail /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md0
# mount -t ext3 /dev/md0 /mnt
# md5sum /mnt/file
4e761e7270677d8fa7caf2ec05022495  /mnt/file
# 

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

Так что, господин no-dashi, подсказывали вы RAID-5 или нет?

anonymous
()
Ответ на: комментарий от AVL2

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

Во-первых, отучаемся говорить за всех. С вами все понятно, свой выбор вы сделали, но не нужно навязывать его всем.

На основании продемонстрированного выше можно было бы заявить, что device mapper в Линукс не нужен, однако не будем этого делать за неимением лучшего.

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

> Что интересно, никто даже не задумывается, зачем в простой, как лом системе для роутеров, сверхтяжелая 128 битная fs?

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

С чего вы взяли, что ZFS сверхтяжелая?

>Понты?

Зависть?

anonymous
()
Ответ на: комментарий от anonymous

> Так что, господин no-dashi, подсказывали вы RAID-5 или нет?

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

no-dashi ★★★★★
()
Ответ на: комментарий от anonymous

> Смысла ноль. Все враз замаскируют агента.

Ну так, если это вопрос минуты.

Mozilla/5.0 (Windows; U; Windows NT 6.1; ru) AppleWebKit/604.1.3 (KHTML, like Gecko) Version/9.1a MSAIE/604.1.3

Это что за зверь?

anonymous
()
Ответ на: комментарий от no-dashi

> Нет, не подсказывал. Не имею привычки подсовывать "грязные результаты".

Ок, беру свои слова обратно. Видимо, так фишка легла, что при размере блока 64 кбайта, трех устройствах в RAID-5 и целевом файле размером в 100 кбайт не так уж и удивительно. Непонятно только, как файловая система пережила-таки это, ну да ладно, скажем еще раз, что так фишка легла.

anonymous
()
Ответ на: комментарий от iZEN

> Да и Realtek (драйвер rl) как-то интегрированных не попадалось.
вот это-то гуано как раз сплошь и рядом - особенно на ноутбуках.
а лично у меня были матери (последовательо) со следующими встроенными:
realtek 8029, 8139, via-rhine, marvel. туда втыкались в разное время и по разным поводам 3с595, 3c905("",b,c), 3c980, kalex и пилы разного типа, реалтеки 5 или 6 видов pci и 3 - pcmcia/cardbus. во всех случаях сильно выручало что букова eth0 была привязана к встроенной сетевухе и никуда не ехала.
так что слив по "теория вероятности";) - засчитан.

mumpster ★★★★★
()
Ответ на: комментарий от mumpster

>а лично у меня были матери (последовательо) со следующими встроенными:
realtek 8029, 8139, via-rhine, marvel. туда втыкались в разное время и по разным поводам 3с595, 3c905("",b,c), 3c980, kalex и пилы разного типа, реалтеки 5 или 6 видов pci и 3 - pcmcia/cardbus. во всех случаях сильно выручало что букова eth0 была привязана к встроенной сетевухе и никуда не ехала.

Кем привязана?
Люди в Linux реально мучаются и не находят eth0 после установки дискретной сетевушки (которая получает идентификатор eth1). Она (eth0) никуда не уезжает — она просто ...выпадает в осадок.

Во FreeBSD при двух карточках Realtek имеем: rl0 и rl1, при трёх — rl0, rl1, rl2. И никто никуда не уезжает.

RealTek 8139 — rl; VIA VT6105 Rhine III - vr; Vortex 3с595, 3c905 - vx; Intel 21143 - dc. И неоднозназностей здесь быть не может.
http://www.freebsd.org/releases/7.0R/hardware.html#ETHERNET

iZEN ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.