Репликация MariaDB Master-Master с 3 серверами, на главном сервере нет открытых портов

Репликация MariaDB Master-Master с 3 серверами, на главном сервере нет открытых портов

Мне нужны три сервера баз данных MariaDB, один главный и два "ведомых". Я хочу иметь возможность читать и писать на каждом сервере и реплицировать это на другие серверы. Я прочитал в интернете, что это называется "репликация master-master".

Теперь я не хочу открывать никаких портов на моем 'реальном' главном сервере, а только на двух 'ведомых' экземплярах. Возможно ли, чтобы 'реальный мастер' открыл сокеты, так что мне не придется открывать порты для входящего трафика на первом сервере?

Репликация

Редактировать: У меня есть несколько баз данных на «главном» сервере, и я хочу реплицировать на «подчиненные» только некоторые из них.

решение1

записать на каждый сервер и скопировать это на другие серверы

Для этого нужна "круговая" репликация между всеми 3 серверами. Я делаюнетрекомендую. Если один сервер выйдет из строя, то синхронизировать их снова будет кошмаром.

С другой стороны, кластеризация Galera (доступная в MariaDB) предоставляет это как стандарт и заботится о повторной синхронизации. Я настоятельно рекомендую отказаться от того, что вы начали, и настроить Galera.

Что касается брандмауэров, туннелирования, обратного SSH и т. д., вы не предоставили достаточно информации о системах. (Обратите внимание, что реплики «подтягивают» данные из первичной системы, а не наоборот.) В случае Galera необходимо открыть несколько портов на всех серверах.

Связанный контент