172 похожих чатов

Чят, что делать? Пилю тут CephFS-драйвер вольюмов для докера, и столкнулся

со сложной дилеммой:

Суть ситуации:
Для того чтобы метаинформация о вольюмах была общей между серверами я держу файлы с оной всё там же, на CepFS, рядом с самими директориями (которые монтируются как вольюмы).

Соответственно, чтобы делать какие-то операции с вольюмами (получить список, поработать с метаинформацией, и даже понять что файл с метаданными именно он, а не мусор) нужна примонтированная CephFS.

Соответственно, два выхода:
- либо держать ФС примонтированной всегда,
- либо монтировать перед каждой операцией и размонтировать после её выполнения.

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

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

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

В случае монтирования-размонтирования на каждый чих, получается что на то, чтобы примонтировать вольюм уходит порядка 6 "чихов" (монтирований корневой директории, в которой лежат сами директории-вольюмы и файлы с метаинформацией о них). В итоге, при рестарте докера, перезагрузке, или массовом переподнятии контейнеров после перегрузки (скачка LA до 700+) получается что происходят тысячи монтирований-отмонтирований, которые и по времени не бесплатные, и, хоть и косвенно, а не напрямую, но таки блокируют друг друга.
А когда не один, а сразу все серверы в кластере начинают вот так вот "дрочить" ФС - плохеет уже демонам, которые её реализуют.
В итоге "боль" распространяется в виде цепной реакции...

В общем, типичная проблема двух стульев.

Не знаю, какой выбрать.
И так какашка, и эдак.

Не подскажете?

2 ответов

9 просмотров

ну я бы предпочел первый вариант

Он не нужен

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
49
читать файл максимально быстро? странный вопрос))
zamtmn
53
How to create an OS in C? what to study?
Linus
18
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
5
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
@HemulGM Параметры у AddStream поменялись? Несостыковка какая-то
Катерина Свиридова
12
Подскажите, есть какие-то события создания/уничтожения у TFrame по типу TForm (OnCreate и OnClose/OnDestroy) ? Как отловить создание TFrame и "перед" уничтожением. На Tframe р...
Денис
8
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
а чем хуже?
Alexey Kulakov
10
Карта сайта