Comments 24
Задачу какую решали?
Вы же понимаете, что мастер-мастер в теории не работают?
split brain, все дела.
Как минимум, нужно три узла и программные средства, которые умеют в кворум/консенсус
Вы же понимаете, что мастер-мастер в теории не работают?
split brain, все дела.
Как минимум, нужно три узла и программные средства, которые умеют в кворум/консенсус
+2
А чем не подошли нативные кластерные FS?
+1
а какие кластерные фс работают на 3-5 хостов?
0
Смотря что имеется в виду под «работают». Ceph, gfs2, elliptics — смотря какие задачи стоят
0
DRBD мультимастер через набор разных разделов, каждый который сингл мастер дает R=2 (N+1) на 2-5 нодах лишь с небольшим геморроем и почти нулевым оверхедом.
Кто из вышеозначенных позволяет создать отказоустойчивую (durable) сборку без значительного оверхеда, и так чтоб любая машина была умираема?
Кто из вышеозначенных позволяет создать отказоустойчивую (durable) сборку без значительного оверхеда, и так чтоб любая машина была умираема?
0
Руками разруливать сплит-брейн с ненулевым шансом дропнуть латест дата — это называется небольшой гемморой???
+2
Вы не думаете, что в старом DRDB мультимастер с набором разных разделов — это скорее оверинжиниринг и костыли, чем production решение?
Что значит «значительный оверхед»? Понятно, что чудес нет. И выигрывая в надежности, мы теряем в скорости. Но, извините, возможность сплит-брейна — это вообще отсутствие надежности, т.е. бинарная опция, а не какой-то параметр, который мы можем выразить непрерывной величиной (числом в диапазоне 0...max)
Кто из вышеозначенных позволяет создать отказоустойчивую (durable) сборку без значительного оверхеда, и так чтоб любая машина была умираема?
Что значит «значительный оверхед»? Понятно, что чудес нет. И выигрывая в надежности, мы теряем в скорости. Но, извините, возможность сплит-брейна — это вообще отсутствие надежности, т.е. бинарная опция, а не какой-то параметр, который мы можем выразить непрерывной величиной (числом в диапазоне 0...max)
0
я спрашиваю про решение на три-пять тазиков.
На дрбд это:
и у нас N+1, никакого брейнсплита, есть кворум, все три мастера, при сдыхании один бурет роль двух мастеров пока не заменим/починим.
кластерные фс они от 10 хостов реально начинают работать с хорошим эффектом. но до 10 хостов надо еще дорасти…
На дрбд это:
M1 S1 --
-- M2 S2
S3 -- M3
и у нас N+1, никакого брейнсплита, есть кворум, все три мастера, при сдыхании один бурет роль двух мастеров пока не заменим/починим.
кластерные фс они от 10 хостов реально начинают работать с хорошим эффектом. но до 10 хостов надо еще дорасти…
0
есть кворум, все три мастера, при сдыхании один бурет роль двух мастеров пока не заменим/починим.
Это, по-моему, только в drdb9 только появилось? Прошу поправить, если неправ.
Касательно указанного конфига — glusterfs (я его ОЧЕНЬ не люблю), но нормально на трех ведрах работает.
0
почему? это и на 8м собирается. как три независимых раздела.
хмм… помню что-то было не то с глустером у меня. с него грузиться ось умеет?
хмм… помню что-то было не то с глустером у меня. с него грузиться ось умеет?
0
хмм… помню что-то было не то с глустером у меня. с него грузиться ось умеет?
это зачем?
я спрашиваю про решение на три-пять тазиков.
На дрбд это:
M1 S1 — -- M2 S2
S3 — M3
я не понимаю и как это решает проблему сплита?
было
M1 S1 --
-- M2 S2
S3 -- M3
средний узел сепарировался
M1 M1 --
-- M2 M2
S3 -- M3
потом сплит пропал.
конфликт отдельно по блоку 1, отдельно по блоку 2.
Или Вы планируете решение конфликта оставить на стороне приклада?
0
три хоста = кворум. если второй отсплитился, его кластером уводим в слейв, да хоть и коросинком с пейсмейкером. чем угодно.
если все три изолироавлись — все в слейвах до ручного вмешательства.
а грузиться — это для VM с доступом к файлу, а не просто файл-образ держать.
если все три изолироавлись — все в слейвах до ручного вмешательства.
а грузиться — это для VM с доступом к файлу, а не просто файл-образ держать.
0
три хоста = кворум. если второй отсплитился, его кластером уводим в слейв, да хоть и коросинком с пейсмейкером. чем угодно.
понял мысль. Т.е. внешними приблудами. Но это все равно опасно. Например, у нас сеть не стартанула, или сервис-арбитр, или еще что-то. И знаете, хуже даже не сплит сам. А когда был сплит, потом пошла синхронизация данных, а потом второй, но уже по второму месту и… приплыли.
Да, я только теоретизирую )
а грузиться — это для VM с доступом к файлу, а не просто файл-образ держать.
т.е. DRDB ВНУТРИ виртуалок?
0
да, есть варианты когда совсем нерешаемо. но это решаемо! :D
уровень такого сплита сопоставим просто со смертью дисков разом — поднимать бакапы и/или допустимые потери.
просто других способов наращивать мощность по одному в малых масштабов я пока не нашел, вот и спрашиваю всегда…
нет, drbd не внутри. но вопрос как поднимать на файлах, а не на файле-образе. помнится записи в файл-образ реплицируются на кластерных фс не моментльно (файл же не закрыт, а синк не всегда требует успешной репликации иначе все дико тормозит).
уровень такого сплита сопоставим просто со смертью дисков разом — поднимать бакапы и/или допустимые потери.
просто других способов наращивать мощность по одному в малых масштабов я пока не нашел, вот и спрашиваю всегда…
нет, drbd не внутри. но вопрос как поднимать на файлах, а не на файле-образе. помнится записи в файл-образ реплицируются на кластерных фс не моментльно (файл же не закрыт, а синк не всегда требует успешной репликации иначе все дико тормозит).
0
Я все-таки не понимаю, прошу прощения, какую задачу Вы решаете с помощью DRDB. Т.е. синхронизация файлов stateless приложений между VM, синхронизация образов VM между различными нодами с гипервизором… или что происходит?
0
На 2х хостах, это всё, что есть. На этом надо сделать HA решение.
0
на 2-х принципиально нельзя, иначе роете себе яму. Как минимум нужно 3. Это теория.
0
на двух потребуется человек-арбитр для переброса, во избежание сплита.
но система вполне работает
но система вполне работает
0
Вся эта конструкция рассыпется при первом сплитбрейне
+1
Спасибо за материал.
Небольшое замечание по терминологии
Если не ошибаюсь для термина «Отказоустойчивый» в английском языке соответствует «Fault Tolerant», а для термина «Высокой Доступности» = «High Available».
Небольшое замечание по терминологии
развернуть отказоустойчивое High Available хранилище
Если не ошибаюсь для термина «Отказоустойчивый» в английском языке соответствует «Fault Tolerant», а для термина «Высокой Доступности» = «High Available».
0
Sign up to leave a comment.
Кластерное хранилище Pacemaker + DRBD (Dual primary) + ctdb