[personal profile] ex0_planet
TL;DR bcache работает и он рулез.

Меж тем, завел в хозяйстве SSD кэш для диска (несколько лет собирался аж). Ниже впечатления кратко.

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

Итак, герои дня:

1. Flashcache. Исторически первая реализация, написанная людьми из facebook. Похоже, сдох. Последний условно-содержательный коммит от сентября 2015, да и репозиторий в github/facebookarchive/flashcache как бы намекает. В дебиане есть, но на ядре 4.8 уже не собирается, а версия 3.1.3 из /testing роняет ядро в бесконечный oops. На ядре 3.16/stable впрочем работает. По итогам отправился в мусорку.

2. EnhanceIO. Форк flashcache, заброшен также осенью 2015. В дебиане нет, даже не стал пытаться заводить.

3. bcache. Выглядит самым вменяемым из всех, плюс наличие его в mainline дает некоторую надежду. Есть поддержка в дебиане. По итогам на нём и остановился. Имеет маленький недостаток: требуется полное переразбиение дисков, поскольку хочет записать на разделы свой суперблок.

4. dm-cache. Еще одна mainline-реализация, вроде бы рабочая, но в моем случае она отпала по причине того, что получался слишком замороченный io-стэк (lvm over lvm).

Сам bcache устанавливается достаточно прямолинейно. Инструкция из archwiki вполне подойдет: размечаем разделы, говорим make-bcache на backing device и на кэш, аттачим одно к другому. Очень понравилось то, что режимы можно переключать на ходу, а также работать без кэша, отцеплять его на ходу, итд. Как обычно, LVM позволяет не прерывать рабочий процесс на всякую ерунду вроде форматирования дисков, но, разумеется, понадобится еще один диск размером не менее чем основной, чтобы было куда сохранить данные (lvconvert -m1/-m0, vgreduce и далее в таком духе). На этом в принципе все.

Маленький нюанс. Вроде бы в некоторых версиях bcache себя не очень хорошо ведет с sleep/hibernate, и для компенсации этого может потребоваться маленький скрипт. В более новых ядрах все должно быть хорошо, но могут загрузить и старое, да и на проверку времени пока нет.

За неделю полет нормальный, потерь данных нет. Скорость тоже стала очень ок.
From:
Anonymous( )Anonymous This account has disabled anonymous posting.
OpenID( )OpenID You can comment on this post while signed in with an account from many other sites, once you have confirmed your email address. Sign in using OpenID.
User
Account name:
Password:
If you don't have an account you can create one now.
Subject:
HTML doesn't work in the subject.

Message:

 
Notice: This account is set to log the IP addresses of everyone who comments.
Links will be displayed as unclickable URLs to help prevent spam.

Profile

ex0_planet

July 2017

S M T W T F S
      1
2345678
9101112131415
1617 1819202122
23242526272829
3031     

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 27th, 2017 08:31 am
Powered by Dreamwidth Studios