Рейтинг:0

Как очистить «липкие» сеансы HAProxy?

флаг tr

Так, первоначально мой haproxy.cfg выглядит так (фрагмент):

интерфейс https_in
    режим http
    опция httplog
    опцион вперед для
    привязать 192.168.150.2:443 ssl crt /etc/haproxy/ssl_cert/star_some_domain.pem crt /etc/haproxy/ssl_cert/star_sub_some_domain.pem
    acl host_git hdr(host) -i git.some.domain
    acl host_kibana hdr(host) -i kibana.sub.some.domain

    use_backend gitserver, если host_git
    use_backend kibanaserver, если host_kibana

    default_backend веб-сервер1

Серверная часть для веб-сервер1 становится перегруженным, поэтому мы переместили некоторые домены на новый сервер, и новейший haproxy.cfg выглядит так (фрагмент):

интерфейс https_in
    режим http
    опция httplog
    опцион вперед для
    привязать 192.168.150.2:443 ssl crt /etc/haproxy/ssl_cert/star_some_domain.pem crt /etc/haproxy/ssl_cert/star_sub_some_domain.pem
    acl host_git hdr(host) -i git.some.domain
    acl host_kibana hdr(host) -i kibana.sub.some.domain
    acl is_website hdr(host) -i sub.some.domain
    acl is_website hdr(host) -i www.sub.some.domain
    
    use_backend gitserver, если host_git
    use_backend kibanaserver, если host_kibana
    use_backend websrv, если is_website

    default_backend веб-сервер1

# "websrv" и "webserver1" - разные серверные части

Больше всего сбивает с толку то, что некоторые браузеры, кажется, настаивают/перенаправляются на бэкэнд «webserver1» вместо бэкэнда «websrv»; открытие приватного браузера / инкогнито правильно перенаправляется на «websrv».

Так что я подозреваю, что происходит какая-то "липкая сессия".

Как вывести список и/или очистить эти «закрепленные сеансы»?

флаг jp
Браузеры кешируют перенаправления в своих собственных кешах.
pepoluan avatar
флаг tr
@AlexD Я несколько раз пытался очистить кеш браузера, очистить файлы cookie, связанные с доменами, пока ничего не осталось, и я все еще «прилипаю» к старому серверу «webserver1». В конце концов я прибегнул к очистке ВСЕХ файлов cookie, и только тогда меня перенаправили на «websrv». Очень странно. Какое взаимодействие cookie/кеша делает это?
флаг jp
Очистка кэшированного перенаправления может быть сложной задачей, см. https://superuser.com/questions/1166181/how-to-clear-cached-redirects-in-chrome.
pepoluan avatar
флаг tr
@AlexD, к сожалению, это не применимо в моем случае ... этот вопрос, похоже, касается браузера, кэширующего разрешение доменного имени. В моем случае разрешение доменного имени не меняется (по-прежнему указывает на тот же общедоступный сервер HAProxy). Хотя я могу ошибаться. Позвольте мне выполнить некоторые из предложенных действий.
флаг jp
Нет, вопрос, который я связал, касается кэширования перенаправлений. Смена DNS имеет такое же отношение, как и ваша смена бэкэндов.
Рейтинг:0
флаг pe

Вы не показываете конфигурацию таблицы флешки или конфигурацию линии вашего сервера. Скорее всего, это файл cookie на вашем реальном сервере?

Чтобы показать таблицу, используйте:

echo "показать таблицу злоупотреблений" | socat unix-connect:/var/run/haproxy.stat stdio

Чтобы очистить запись, используйте:

echo "очистить таблицу. Ключ злоупотребления 127.0.0.1" | socat unix-connect:/var/run/haproxy.stat stdio
pepoluan avatar
флаг tr
Изначально у меня даже не было стола для стиков. Поэтому я добавил несколько таблиц в бэкенды «webserver1» и «websrv», и даже когда у людей все еще возникают проблемы с прилипанием, они остаются пустыми.
флаг pe
Пожалуйста, опубликуйте свою конфигурацию бэкэнда, тогда это может иметь больше смысла.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.