Haproxy позволяет использовать имя хоста на строке серверов, чтобы получить его IP-адрес с помощью серверов имени.
По умолчанию HAProxy решает имя при расстановке Файл конфигурации, при запуске и кэше результат для жизни «Срок службы».
Это недостаточно в некоторых случаях, таких как в Amazon, где IP-адрес сервера может измениться после перезагрузки или виртуального IP-адреса elb, можно изменить на основе текущей рабочей нагрузки.
В этой статье описывается, как пользовательские резользеры для разрешения имени сервера обрабатывают время.
1. Обновлять haproxy.cfg.
global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4096 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats stats maxconn 1 stats timeout 120s resolvers awsvpc nameserver vpc 169.254.169.253:53 defaults mode tcp log global retries 3 timeout connect 10s timeout client 1m timeout server 1m timeout check 10s maxconn 512 backend myweb server disabled-server 127.0.0.1:1 disabled server mydns XXXXXXXXXXXX.ap-northeast-1.rds.amazonaws.com:80 check port 80 resolvers awsvpc inter 2000 fall 5
Примечание: Inserver VPC 169.254.169.253:53
это DNS-сервер/Resolver быть использованным
2. Перезапустить Haproxy Service.
systemctl restart haproxy
3. Результат проверки
~:# netstat -plunt |grep 53 tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 10616/systemd-resol udp 0 0 127.0.0.53:53 0.0.0.0:* 10616/systemd-resol
Подробнее о haproxy.
- Как установить заголовок HTTP-запроса в haproxy
- Как заблокировать IP-адреса в haproxy
Оригинал: «https://dev.to/vumdao/haproxy-with-resolvers-in-case-of-aws-application-loadbalancer-d1n»