
현재 다음과 같은 설정이 있습니다.
[Client] -> [haproxy] -> [Nginx] -> [App Servers]
Nginx는 현재 쿠키를 설정하여 앱 서버에 대한 쿠키 선호도를 설정합니다 public-client
. 그러나 HAProxy가 도입되면서 쿠키가 클라이언트 측에 존재하지 않으며 앱 서버에 대한 세션 선호도가 손상되었습니다.
나는 문서를 살펴보던 중에 다음과 같은 속성을 발견했습니다.앱세션효과가 있었을 수도 있지만 더 이상 사용되지 않는 것 같습니다. 사용하는 것이 좋습니다스틱 테이블하지만 해당 속성을 가진 쿠키를 보존하는 방법을 잘 모르겠습니다.
이것이 어떻게 이루어질 수 있는지 아는 사람이 있습니까?
메모: 역방향 프록시의 중복에 대해 충분히 알고 있지만 우리 아키텍처에서는 이를 요구합니다.
문제 발견
그래서 아래 설명을 기반으로 tcdump
HAProxy 및 Nginx 서버에서 실행하여 쿠키가 설정/전달되지 않은 위치를 확인했습니다.
참고용으로 실행한 명령은 다음과 같습니다.
sudo /usr/sbin/tcpdump -A -l dst port 80 -i any | grep "^Cookie: "
HAProxy 및 Nginx 서버의 애플리케이션 쿠키가 표시되었습니다. 그러나 Nginx가 설정해야 했던 쿠키는 HAProxy에 대한 트래픽 흐름에 없었으며 이로 인해 Nginx가 쿠키를 설정하지 않는 문제가 발생했습니다.