HAProxy가 백엔드 서버에 대한 DNS를 찾도록 강제


14

나는 haproxy 1.5.8을 가지고 있는데, 그것은 우리가 통제 할 수없는 제 3 자에게 경로를 기반으로 일부 요청을 프록시합니다.

백엔드 서버의 IP는 시작시 한 번 확인되므로 IP가 변경되면 중단됩니다.

그 해결 방법이 있다면? nginx에서는 내부 변수를 선언하고 X 초 동안 캐시 할 수 있습니다. HAProxy에 대한 비슷한 솔루션을 찾지 못했습니다.

답변:


25

HAProxy 1.6의 최신 릴리스에는 문제에 대한 해결책이 있습니다. 이제 리졸버를 정의하고이를 백엔드에 연결할 수 있습니다. 그런 다음 런타임에 IP 확인이 수행됩니다.

resolvers dns
  nameserver public-0  xx.xx.xx.xx:53
  hold valid 1s

frontend http
  bind *:8000
  default_backend site-backend

backend site-backend
  balance leastconn
  server site sub.example.com:80 resolvers dns check inter 1000

이것을 논의하는 StackOverflow

해당 문서로 연결


hmmm이 작업을 수행하고 페이지를 새로 고치기 시작하면 1 분 정도 안에 503이 표시됩니다.
Paulius Dragunas


1

불행히도, 이것은 여전히 진행중인 작업 인 것 같습니다 .

별도의 nginx 프록시 사용을 고려 했습니까? 따라서 백엔드에 대한 요청을 nginx 인스턴스로 전달하면 DNS 확인이 수행되고 요청이 전달됩니까? 생각이 없지만 트래픽이 적은 환경에서 작동 할 수 있습니다.


항상 그 솔루션이 있지만 간단하게 유지할 솔루션을 찾고 싶습니다.
Bastien974
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.