Я установил кластер MariaDB Galera, который я протестировал, и он отлично работает на следующих серверах: db1 192.169.0.1 db2 192.169.0.2 db3 192.169.0.3
Все они работают на CentOS-6.5, а версия MariaDB — 10.0.
Моей целью было использовать HAproxy для балансировки нагрузки. Я установил и настроил HAproxy на отдельном сервере
db4 192.168.0.4
без настройки кластера или установки MariaDB, только HAproxy. Проблема в том, что HAproxy, похоже, не работает, то есть не выполняет балансировку нагрузки. Он запускается нормально, и я могу получить к нему доступ через веб-интерфейс:
http://192.168.0.4:9000/haproxy
но состояние серверов показывает, что они не работают, даже если они на самом деле работают на своих соответствующих машинах. Конфигурация HAproxy выглядит следующим образом:
global
log 127.0.0.1 local0 notice
user haproxy
group haproxy
defaults
log global
retries 2
timeout connect 1000
timeout server 5000
timeout client 5000
listen mariadb-cluster
bind 0.0.0.0:3306
mode tcp
option mysql-check user haproxy
balance roundrobin
server db1 192.168.0.1:3306 check
server db2 192.168.0.2:3306 check
server db4 192.168.0.3:3306 check
listen webinterface
bind 0.0.0.0:9000
mode http
stats enable
stats uri /haproxy
stats realm Strictly\ Private
stats auth admin:password
db1, db2, db3 и db4 — это просто имена хостов для каждого сервера. Поэтому, когда я запускаю команду #hostname на первом сервере, она будет отображать db1.