global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
stats timeout 30s
user haproxy
group haproxy
defaults
log global
mode tcp
option tcplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http
frontend deploy-raft
mode tcp
bind *:7220
default_backend be_d1
backend be_d1
mode tcp
balance roundrobin
server machine2 kuma-inst-02.avp.ru:7220 check
server machine3 kuma-inst-03.avp.ru:7220 check
server machine4 kuma-inst-04.avp.ru:7220 check
global #
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin
stats timeout 30s
user haproxy
group haproxy
# Default SSL material locations
ca-base /etc/ssl/certs
crt-base /etc/ssl/private
ssl-default-bind-ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
ssl-default-bind-ciphersuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
ssl-default-bind-options ssl-min-ver TLSv1.3 no-tls-tickets
defaults #
log global
mode http
option httplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http
frontend http_front
bind 0.0.0.0:443 ssl crt kuma-inst-01.avp.ru
default_backend be_d1 #название группы по умолчанию серверов приложений
backend be_d1 #be_d1 - название группы серверов приложений, используется при адресации секцией frontend
balance roundrobin #запросы распределяются поровну между доступными серверами приложений
cookie SERVER insert indirect nocache #параметр insert при запросе создает cookie, indirect удаляет cookie при каждом входящем запросе перед пересылкой серверу приложения, #nocache гарантирует отсутствие кеширования между клиентом и балансировщиком
option httpchk #активация HTTP-проверки
http-check connect port 7220 #для HTTP-проверки используется порт 7220
http-check send meth GET #при выполнении проверки используется HTTP-метод GET
http-check expect status 200 #успешная HTTP-проверка получает от сервера приложения статус 200 OK
server machine2 kuma-inst-02.avp.ru:7220 inter 4s fall 2 rise 4 ssl verify none #параметром inter промежуток http-проверки задан равным 4s - четырем секундам, для исключения машины
server machine3 kuma-inst-03.avp.ru:7220 inter 4s fall 2 rise 4 ssl verify none #из ротации 2 последовательные проверки должны провалиться - fall 2, для возвращения - 4 должны
server machine4 kuma-inst-04.avp.ru:7220 inter 4s fall 2 rise 4 ssl verify none #завершиться успешно - rise 4. Подлинность серверного tls-сертификата не проверяется - ssl #verify none