Развертывание MariaDB Galera

Я обращаюсь к эксперименту с Кластером MariaDB 10 Galera. Я ищу высоконадежную, масштабируемую и надежную архитектуру. В основном мне любопытно, какова была бы лучшая архитектура, и это будет возможно, и действительно ли это - хорошая практика?

1) Кластер Galera + maxscale для разделения операций записи чтения - здесь я логически разделю обе операции чтения-записи. Я хочу, чтобы записи были применены на все узлы, но в конечном счете имели определенные узлы только для операций чтения. Подобный как репликация "Главный-подчиненный", куда записи переходит к ведущему устройству и ведомому устройству, переходит к ведомым устройствам. Это было бы возможно здесь?

2) Кластер Galera с Основной Основной репликацией и я могу подключить другой Кластер Galera к этому только для операций чтения?

Моя главная цель состояла бы в том, чтобы иметь несколько узлов записи и несколько узлов чтения, таким образом, я могу разделить операции и на самом деле иметь резервное копирование каждого узла, если somethings идут не так, как надо? Каков был бы лучший подход здесь?

Спасибо.

0
задан 28 May 2015 в 16:48
1 ответ

Я бы выбрал galera + maxscale + haproxy. Наша установка - это 3 узла galera, 2 узла maxscale + 2 узла haproxy, обеспечивающие активно-пассивное переключение при отказе для maxscale - несколько моментов, о которых следует помнить при этой настройке (или любой galera + maxscale).

  1. Galera рекомендует один узел для записи - попытка записи на более чем один узел может привести к конфликтам записи. Обычно это реализуется с помощью разделителя чтения-записи в maxscale, что дает один узел записи и несколько узлов чтения.
  2. Для повышения устойчивости и производительности могут быть добавлены дополнительные узлы - большинство типичных веб-приложений запускают что-то вроде чтения: записи 80:20 split, так что это хорошая модель.
  3. Теоретически вы можете запустить настройку active-active на haproxy для maxscale, поскольку алгоритм, используемый maxscale для идентификации узла записи, должен гарантировать, что каждый узел maxscale выберет одну и ту же галеру узел. Когда мы впервые тестировали, этого не произошло, но с тех пор было выпущено несколько выпусков, так что теперь это может работать.
  4. Большим преимуществом maxscale является то, что это означает, что настройка galera прозрачна для конечных приложений - насколько они обеспокоены тем, что они просто разговаривают с сервером базы данных. Это избавляет от необходимости писать код для обработки отдельных узлов чтения / записи.
0
ответ дан 24 November 2019 в 08:32

Теги

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