LINUX.ORG.RU

Проскакивала новсть, что btrfs уже стабильна. Я в этом не уверен.

 


0

2

Ядро 3.17.1 x86_64. Монтируем btrfs с опцией compress-force=lzo и пишем в 2-3 потока всего лишь на скорости гигабитной сетки. Через 10-30 минут (как повезёт), система наглухо виснет вот с таким выхлопом:


Call Trace:
Nov 3 03:21:49 DRIVE kernel: [ 859.630880] [<ffffffff817a3e05>] _raw_write_lock+0x25/0x30
Nov 3 03:21:49 DRIVE kernel: [ 859.630888] [<ffffffffc01be3a9>] btrfs_tree_lock+0xc9/0x1d0 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630891] [<ffffffff810b3eb0>] ? add_wait_queue+0x60/0x60
Nov 3 03:21:49 DRIVE kernel: [ 859.630896] [<ffffffffc015b92b>] btrfs_lock_root_node+0x3b/0x50 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630901] [<ffffffffc0160dd7>] btrfs_search_slot+0x787/0x880 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630907] [<ffffffffc0178048>] btrfs_lookup_file_extent+0x38/0x40 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630914] [<ffffffffc01983f1>] __btrfs_drop_extents+0x151/0xdf0 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630915] [<ffffffff8109da1c>] ? ttwu_do_wakeup+0x2c/0x100
Nov 3 03:21:49 DRIVE kernel: [ 859.630917] [<ffffffff811cd773>] ? kmem_cache_alloc+0x1b3/0x1f0
Nov 3 03:21:49 DRIVE kernel: [ 859.630922] [<ffffffffc015b3ba>] ? btrfs_alloc_path+0x1a/0x20 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630926] [<ffffffffc015b3ba>] ? btrfs_alloc_path+0x1a/0x20 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630932] [<ffffffffc018867b>] insert_reserved_file_extent.constprop.64+0xab/0x310 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630938] [<ffffffffc0185880>] ? start_transaction.part.35+0x80/0x530 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630944] [<ffffffffc018ee35>] btrfs_finish_ordered_io+0x475/0x580 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630951] [<ffffffffc01cd6d1>] ? end_compressed_bio_write+0x31/0xf0 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630957] [<ffffffffc018ef55>] finish_ordered_fn+0x15/0x20 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630964] [<ffffffffc01b49ae>] normal_work_helper+0x7e/0x1b0 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630971] [<ffffffffc01b4c52>] btrfs_endio_write_helper+0x12/0x20 [btrfs]
Nov 3 03:21:49 DRIVE kernel: [ 859.630972] [<ffffffff8108ce2e>] process_one_work+0x14e/0x460
Nov 3 03:21:49 DRIVE kernel: [ 859.630973] [<ffffffff8108d7ab>] worker_thread+0x11b/0x3f0
Nov 3 03:21:49 DRIVE kernel: [ 859.630975] [<ffffffff8108d690>] ? create_worker+0x1e0/0x1e0
Nov 3 03:21:49 DRIVE kernel: [ 859.630976] [<ffffffff810932b9>] kthread+0xc9/0xe0
Nov 3 03:21:49 DRIVE kernel: [ 859.630977] [<ffffffff810931f0>] ? flush_kthread_worker+0x90/0x90
Nov 3 03:21:49 DRIVE kernel: [ 859.630978] [<ffffffff817a46fc>] ret_from_fork+0x7c/0xb0
Nov 3 03:21:49 DRIVE kernel: [ 859.630979] [<ffffffff810931f0>] ? flush_kthread_worker+0x90/0x90
Nov 3 03:21:49 DRIVE kernel: [ 859.630980] Code: 90 8b 0a 84 c9 66 90 75 f6 89 ce 89 c8 83 ce 01 f0 0f b1 32 39 c8 75 e7 b9 ff 00 00 00 eb 0a 0f 1f 84 00 00 00 00 00 f3 90 8b 02 <83> f8 01 75 f7 f0 0f b1 0a 83
f8 01 75 ee eb b3 0f 1f 40 00 8b


Это просто сама стабильность.

★★★★★

Ответ на: комментарий от pedobear

Спасибо К.О., но пока еще ssd слишком дорог.

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

не-COW-fs вернет их в пачку на свои места

Да неужели? Если файл увеличился в размере, то дельта будет записана бог знает куда, фрагментацию на не-cow-fs никто не отменял.

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

Ну неужели все нужно разжевывать? Фрагментация есть везде (особенно в случае «Если файл увеличился в размере», но на COW она есть ВСЕГДА, даже когда файл не увеличился в размере. А если рассматривать ваши любимые виртуалки, там диск фиксированного размера, меняется только содержимое фрагментируясь и фрагментируясь и фрагментируясь.

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

о на COW она есть ВСЕГДА, даже когда файл не увеличился в размере.

Всё так и есть. Но фрагментироваться можно по разному, zfs знает о диске (дисках в массиве) и его геометрии всё и даже в «маркеинговом булшите» от оракл сказано, что в zfs реализованы некие алгоритмы препятствующие сильной фрагментации. Кстати, не уверен, что фрагментация вообще хоть как то скажется на производительности массивов, особенно на raid-5,6.
Есть ещё один момент, в zfs реализована замечательная фича (ты её непременно костылём назовёшь) L2ARC, которая выравнивает производительность ФС при заполнении. И эта фича реально работает.

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

Но фрагментироваться можно по разному

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

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

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

На высоконагруженных системах лучше не допускать чтоб места было совсем мало и это касается не только btrfs и zfs, но и классических ФС. Но если уж такое случилось, то L2ARC осилит это дело.

King_Carlo ★★★★★
() автор топика
Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от King_Carlo

Если отрезал для виртуалки lv (lvm), то далее ничего со стороны хоста меняться не будет. Если же отрезал zvol, то он все-равно будет фрагментироваться, т.к. основан на том же COW. T.o придется мониторить заполнение ФС и вмешиваться либо заранее планировать zvol и zfs quota чтобы оставалось 15-20% места свободными, но это не малая плата за удобства, также как ARC (memory cache). Плата ресурсами не всегда может быть оправдана, особенно для систем виртуализации, где эти ресурсы востребованы и за них «дерутся»

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

Если отрезал для виртуалки lv (lvm), то далее ничего со стороны хоста меняться не будет.

Я лично не уверен, что, например, на массиве raid6 из 10 дисков нарезка lvm поверх mdadm будет оптимальна и не будет «тормозить» сразу, на свежем пустом массиве.

Плата ресурсами не всегда может быть оправдана, особенно для систем виртуализации

Свойстово zfs (и btrfs) динасмчески выделять место файловым системам в рамках пула + сжатие дают значительно больший выйгрышь в ресурсах, по сравнению с необходимостью держать 20% свободными.

но это не малая плата за удобства, также как ARC (memory cache)

Тебе жалко пару SSD на сервер купить?

King_Carlo ★★★★★
() автор топика
Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от sdio

Ага, только причины ты не указал. ты описал снижение доступа из-за поиска файла в большой директории, а не из-за дикой фрагментации COW-fs.

У тебя там третий глаз образовался? У меня не было ни слова ни про поиск файла, ни про дикую фрагментацию.

Возвращаясь к вашей тупой аналогии:

Тебе там корона не жмет, остроумник?

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

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

И когда эти листы будут разбросаны по всему шкафу, начинаются тормоза из-за seek'a по диску.

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

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

Ты чаще повторяй мантру: «У нас все в порядке», «У нас все в порядке», ...

Или зачем ты оправдываешься, vxzvxz?

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

Ты чаще повторяй мантру: «У нас все в порядке», «У нас все в порядке», ...

У тебя голоса в голове? Может тебе самозабаниться на время, отдохнуть, восстановиться? Я серьезно, жалко будет потерять такого свидетеля LVM :)

Или зачем ты оправдываешься, vxzvxz?

О, вот еще и мания преследования нарисовалась...

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

а что доказывать?производительность в lvm на 5-6 рейдах отвратная, я вот zfs ещё не юзал толком, но когда я перенёс кучу виртуалок с raid 5+lvm на btrfs raid 5, то производительность увеличилась очень значительно, почти половина проблем с самбой ушли. На втором серваке смогли отказаться от мемкешеда на тестовых проектах, тк работало даже лучше чем при lvm+ext4+memcaсhed.

erzent ☆☆
()
Ответ на: комментарий от King_Carlo

не знаю что там сказывается на производительности 5-6 рейда, но на lvm держать больше 2 тб информации мазахизм....

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

За тебя подумали создатели btrfs, ты был в роли обезьянки нажимающей кнопки. То что ты не сделал на lvm размер PE соответсвующий размеру chank'a raid'a исключительно твои проблемы, а не lvm on raid.

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

ну ну,у меня был chank 512k, на 4 диска по 2 тб в 10000 об., расскажи, что же мне такого хитрого надо было сделать с lvm?И что за меня сделали разрабы btrfs? получается, что все пользователи btrfs/zfs обезьяны?

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

Читай в интернете как выравнивать chunk'и, stripe, block'и

Никого не удивляет, что создание разделов на диске надо выравнивать по его геометрии, а как raid + lvm — так сделайте все за меня и быстро!

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

2014 год на дворе, может ещё и саму геометрию просчитать вместо системы?

erzent ☆☆
()
Ответ на: комментарий от sdio

вот что значит забросили в 2006 разработку lvm2, вот чем больше такого читаю, тем больше понимаю, смысла с него уже нет.

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

Для обезьянок смысла во многих вещах нет. Скоро на твоих серверах гуй будет, ведь в 2015 году только лохи в консоли будут ковыряться.

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

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

Скоро на твоих серверах гуй будет

Будто что-то плохое.

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

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

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

не надо утрировать, есть вещи, которые реально ненужны уже. Вот объясни, зачем нужно самому руками ровнять что-либо?Более того, многие вещи из консоли можно перенести в гуй, и в этом нет никаких проблем. Ведь чем меньше риск накосячить, тем лучше. Мне всего 27, у меня работа ≠ жизнь. Более того, я вообще не хочу заниматься работой больше 8 часов в день. Именно поэтому в виртуализации я предпочитаю vmware. На серверах rhel/centos,а на домашнем компе у меня стоит calculate и на ноуте воркстанция от красной шапки.Зачем усложнять себе работу и увеличивать её длительность?

erzent ☆☆
()
Ответ на: комментарий от sdio

меня оставьте за бортом вашего стремительно несущегося в светлое IT-будущее корабля

Да ты уже за бортом. Лет через 10 переквалифицируешься в швейцары и норм.

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

он за бортом не будет, у него опыт с aix уже 15 лет, такие специалисты до пенсии спокойно работали и будут работать, банки сервера до сих пор 80-90-2000 годов используют, и их надо кому то админить.

erzent ☆☆
()
Ответ на: комментарий от pedobear

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

erzent ☆☆
()
Ответ на: комментарий от pedobear

ну я не спец, я знаю что он говорил про код 80го года, который им приходится редактировать, java была явно написана не с чистого листа, у америкосов очень много вещей на java, у которых по его словам смешанный синтаксис, тк многое переписывалось под джаву в начале 90х.

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

многие вещи из консоли можно перенести в гуй

Ведь чем меньше риск накосячить, тем лучше.

Это как бы взаимоисключающие параметры.

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

есть вещи, которые реально ненужны уже

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

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

sdio ★★★★★
()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от sdio

Сам привёл пример не в тему, сам над ним и посмеялся. Молодец просто.

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

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

erzent ☆☆
()
Ответ на: комментарий от sdio

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

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

задрали дуры, ... по 10 сек тронутся не может на светофоре.

Ты сам был в такой роли, не выучив использование raid+lvm+fs не мог тронуться на светофоре.

Кроме любительского авто, есть и профессиональное (такси, грузовики, гонкщики, ...) пересади их на автомат и если не захотят назови их ретроградами.

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

Таксистам-то зачем механика? В городе после полудня смены нога отвалится сцепление жать.

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

из-за жены покупать машину с автоматом?я бы не стал, если на семью 1 машина, то она должна быть максимально функциональна. У меня вот аккорд дизельный, потому что часто стою в пробках когда еду домой, и дизель на холостом ходу гораздо меньше жрёт и оборотов делает. Когда жену учил водить машину, мы почти год,(ей тогда было 17), учились пользоваться ручной коробкой в тяжёлых условиях бездорожья на УАЗе, по лесу ездила и училась, потом когда научилась нормально ездить по бездорожью на ручнике, по трассе ездила на нём. до постов гаи, там я или друг садились за руль(машина не моя, знакомого любителя бездорожья). Зато сейчас ей плевать какая у неё коробка. Вот если бы вводили жесткие экзамены по времени на использование ручной коробки, таких дур было бы на дороге меньше.

erzent ☆☆
()
Ответ на: комментарий от sdio

внезапно, волфы, скании, маны, вся американщина все с автоматом....

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

Я и сам механику не люблю, нафиг вообще покупать машину с механикой - понять не могу. Тем более, если в городе живёшь.

если на семью 1 машина, то она должна быть максимально функциональна

Как функциональность связана с типом КПП?

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

ремонт коробки передач на автомате гарантирован через 60-80 тыс км, на ручной более 150 ресурс,на автомате полно проблем в городе, если бы у меня был автомат, я бы домой ездил минут на 20 дольше, а то и на минут 40.... На автомате (если у тебя не машина класса люкс и супер-пупер автомат) как правило есть 2-3,5 секундная задержка между моментом, когда ты жмешь на газ, и реакцией автомобиля. За это время местечко может быть уже занято, а автомат всё равно сработает и рискуешь въехать кому-нить в бок. На механике машина ведет себя намного резвее. На автомате только эвакуатор, а ручной попутку и доехал до сервиса на троссе. В ручную коробку, если что случится на трассе, я сам смогу залезть и посмотреть. На автомате это не прокатит.А учитывая, что у нас машина ездит каждые 2 недели ездим 1000 км в финку, то для меня расход топлива и срок службы коробки актуален.

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

как правило есть 2-3,5 секундная задержка между моментом, когда ты жмешь на газ, и реакцией автомобиля. За это время местечко может быть уже занято,

Водитель формулы 1 детектед!

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

на автомате полно проблем в городе

Да что ты говоришь! Я когда изредка езжу к родителям, матерюсь, что у меня не комбайн (механика-автомат): левая нога просто отваливается, пока несчастные 20км по городу проедешь!

А вот в наших условиях механика — как раз то, что надо. На автомате здесь нужно особое умение кататься. Хотя, кума как-то умудряется даже на автомате здесь гонять, не сжигая вусмерть тормоза.

Кстати, еще один минус автомата: ты не заведешься с толкача! А у меня частенько такое было, что аккумулятор сдох, а ехать надо. Выкатываю машинку со двора, сажусь и с горочки разгоняюсь, аккурат у соседнего дома завожусь.

Ну и насчет невозможности быстро когда нужно выжать сцепуху на автомате ты прав. Кстати, интересно: как там с торможением движком, если тебе внезапно нужно на говеном покрытии скорость сбросить? Я просто щелкаю с пятой на третью и плавно отпускаю сцепуху, потом жамкаю на первую и повторяю. А что, интересно, с автоматом?

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

с автоматом полная жопа, ко многим машинам(дороже 1,2 лямов) даже есть инструкции от дилеров, в которых указано, за что могут снять с гарантии машину, и тпм в том числе езда по совсем плохим дорогам.Если тебя эвакуатор заберёт именно с такой, на ремонт можешь не рассчитывать за счёт гарантии и страховки.

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