Моя настройка выглядит следующим образом:
У меня есть два сервера Samba, настроенных с DRBD, Corosync и Pacemaker. Оба этих сервера находятся в HA, что означает, когда SambaServer1
выходит из строя, данные реплицируются на SambaServer2
.
Мое требование здесь - когда SambaServer1
происходит следующее:
SambaServer2
.Решение, которое я использовал:
Подключите клиентскую машину с HAProxy IP. когда SambaServer1
падает, клиент начинает разговаривать с SambaServer2
.
Возникла проблема:
Сервер HAProxy периодически меняет доступ к точке монтирования на неработающий сервер SambaServer1. Следовательно, точка монтирования становится недоступной. Клиентская машина размонтируется. Пожалуйста, предложите мне исправить конфигурацию HAProxy в случае аварийного переключения.
Ниже приведен мой файл /etc/haproxy/haproxy.cfg.
global
log <<ipaddress>> local2
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
stats socket /var/lib/haproxy/stats
defaults
mode http
log global
option dontlognull
option http-server-close
option forwardfor except <<ip/cidr>>
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 10s
timeout server 10s
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
listen smbtest
bind :445
mode tcp
default_backend smbserver
backend smbserver
mode tcp
balance roundrobin
server SambaServer1 <>:445 check
server SambaServer2 <>:445 check
Я пробовал использовать разные алгоритмы баланса, например, по крайней мере, источник.