2013-10-15 3 views
0

У меня есть кластер базы данных из 3 узлов с использованием Percona XtraDB. Три узла сконфигурированы на трех разных системах. Я использовал HAProxy load balancer для передачи запросов этим узлам. Два из трех узлов настроены как резервное копирование в HAProxy. Когда я запускаю запрос на URL-адрес соединения балансировки нагрузки, я вижу, что запрос отправляется на узел А по умолчанию. Если узел A не работает, и я запрашиваю новое подключение к базе данных, я вижу, что запрос перенаправляется на узел B. Это соответствует желаемому дизайну. Однако, если запрос на соединение отправляется в HAProxy с использованием Java-программы (URL-адрес jdbc), запрос направляется на узел A, после обслуживания нескольких запросов, если узел A опускается, я хочу, чтобы узел B/узел C обслуживал запрос , В текущем сценарии я вижу «Connection Failed». Есть ли какая-либо конфигурация, которая обеспечит, что в случае отказа узла соединение с базой данных не будет завершено, а будущие запросы будут перенаправлены на следующий доступный узел? Мой текущий файл конфигурации HAProxy выглядит следующим образом:HAProxy балансировка нагрузки MySQL-серверы

global 
stats socket /var/run/haproxy.sock mode 0600 level admin 
log 127.0.0.1 local2 debug 
#chroot /var/lib/haproxy 
pidfile /var/run/haproxy.pid 
maxconn 4000 
daemon 
defaults 
mode tcp 
log global 
option tcplog 
timeout connect 10000 # default 10 second time out if a backend is not found 
timeout client 300000 
timeout server 300000 
maxconn 20000 
# For Admin GUI 
listen stats 
bind :8080 
mode http 
stats enable 
stats uri /stats 
listen mysql *:3306 
mode tcp 
balance roundrobin 
option mysql-check user haproxyUser 
option log-health-checks 
server MySQL-NodeA <ip-address>:3306 check 
server MySQL-NodeB <ip-address>:3306 check backup 
server MySQL-NodeC <ip-address>:3306 check backup 
+0

Помогло ли вам решить эту проблему? – Dan

ответ

0

Режим ТСР под слушать *: 3306 не могут быть использованы. Проверьте перед отправкой здесь с помощью этой команды:

haproxy -f /etc/haproxy.cfg -V 
Смежные вопросы