@vlarkanov

Maxscale: как роутить все запросы на один сервер?

Всем привет. Есть кластер galera (мастер-мастер, 2 ноды + арбитратор). Нужно все запросы от пользователя (и чтение и запись) направлять только на одну ноду. Если нода недоступна - все запросы должны идти на другую. Можно ли это реализовать? У меня получилось только "писать на одну ноду, читать с другой; если нода упала, то читать и писать с оставшейся ноды"

Вот мой конфиг:

[maxscale]
threads=1

[Splitter Service]
type=service
router=readwritesplit
servers=node1, node2
user=maxscale
passwd=STRONG_PASSWORD

[Splitter Listener]
type=listener
service=Splitter Service
protocol=MySQLClient
port=3306
address=192.168.1.10
socket=/tmp/ClusterMaster

[node1]
type=server
address=192.168.1.20
port=3306
protocol=MySQLBackend
priority=1

[node2]
type=server
address=192.168.1.21
port=3306
protocol=MySQLBackend
priority=2

[Galera Monitor]
use_priority=true
disable_master_failback=true
type=monitor
module=galeramon
servers=node1, node2
user=maxscale
passwd=STRONG_PASSWORD

[CLI]
type=service
router=cli

[CLI Listener]
type=listener
service=CLI
protocol=maxscaled
port=6603
  • Вопрос задан
  • 955 просмотров
Решения вопроса 1
@kolu4iy
А зачем вы использовали read-write splitter? Там есть другие роутеры, например https://mariadb.com/kb/en/mariadb-enterprise/maria...
Используйте его с отправкой на master.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
icCE
@icCE
youtube.com/channel/UC66N_jRyZiotlmV95QPBZfA
Если нода недоступна - все запросы должны идти на другую. Можно ли это реализовать?


Напрашивается вопрос, на кой тогда нужен master-master ? ну да ладно.
Как вариант поднять балансировщик HaProxy и уже им сделать правило.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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