LINUX.ORG.RU

Сообщения Nohack

 

Ох BTRFS, ну сколько можно

Сколько лет прошло, думал BTRFS довели до ума, решил использовать её в продакешене, но прошло два дня и …

2 недели тестировал все возможные способы репликации виртуальных машин с одного места в другое, без простоя. Протестировал кучу разных способов и остановился на BTRFS, как на единстрвенной COW которая не ест SSD. Кстати, фанатам ZFS ничего не скажу, живите спокойно в блаженном неведении :)

Что я проверил:

  1. ZFS, мучал около недели, как быстродействием так и оверхедом на диск не доволен, ещё RAM жрёт, а без RAM совсем печально всё. Мне не подходит, так как вся RAM отдаётся виртуалкам, хосту с ZFS ничего не останется, почти.
  2. LVM, да, у неё есть возможность как у ZFS сделать онлайн инкрементальную реприкацию, почти как в zfs send/recieve, но об этом мало известно. Отказался из-за чудовищно низкой скорости при наличи снапшотов, которые необходимы для репликации, в остальном терпимо.
  3. LVM thin, очень похожа на ZFS, те-же недостатки, мало тестировал
  4. BTRFS - почти не ест SSD, огромные проблемы с фрагмантацией, но я нашел способ их решить, поэтому остановился на ней

Дано:

  1. сервер с qemu/libvirt, Debian bookworm
  2. одна виртуалка, с ext4 mysql innodb блекджеком и шл ну в общем сайт PHP, данных всего 100Гб, довольно активная - 20ГБ записей на диск в сутки, диск, 70% из них блоками <=4k, 20% 8k, и так далее. Как видите много random write. RAW диск виртуалки на разделе BTRFS.

Перенёс всё со старого хоста ext4 на новую виртуалочку с RAW на btrfs разделе. Всё работало полтора дня и началось:

  1. начали биться индексы у таблиц
  2. данные в таблицах начали исчезать Долго не терпел, сразу всё откатил назад, у юзеров стресс, пьют валериану.

Не ожидал такого. Запустил btrfs scrub - ошибок не обнаружено. Да как так то? BTRFS raid1, значит ошибка внутри BTRFS или в интерфейсе между KVM и BTRFS.

Вот такой вот опыт.

А я уже и дефрагментатор для неё новый написал, офигенный, который не жрёт ни диск ни SSD, но видимо не судьба.

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

Что теперь делать даже не знаю, рисковать с BTRFS больше не хочу, а других подходящих COW c онлайн репликацией снапшотами не существует …

 , , , ,

Nohack
()

Вопрос к специалистам по репликации Glusterfs

Много много читал про gluster но так и не нашёл ответа на свой вопрос. Является ли асинхронная репликация (Geo-replication) в gluster транзакционной ? Запустив, например, mysql на gluster master сервере, будет ли он безопасно реплицироваться на slave. В случае если master неожиданно умрёт, slave нормально поднимется из бинарного лога mysql ?

 ,

Nohack
()

RSS подписка на новые темы