Назад | Перейти на главную страницу

HAProxy прекращает пересылку трафика после развертывания кода сервера приложений

У меня проблема с HAProxy. У нас есть балансировщик нагрузки, на котором работает haproxy с разгрузкой SSL, который перенаправляет трафик на несколько наших серверов приложений, работающих под управлением Windows Server 2008 и IIS 7.5. Проблема, с которой я столкнулся, заключается в том, что когда я развернул последнюю версию одного из наших приложений, HAProxy перестал перенаправлять трафик на любой серверов приложений для этого поддомена. Вместо этого мы увидели мгновенные ошибки HTTP 503.

Я подтвердил из журналов IIS, что трафик не достигает сервера. Я попытался прочитать журналы haproxy, но я ужасно незнаком с приложением, и большинство записей журнала, похоже, касались различных вариантов вызовов выделения памяти.

РЕДАКТИРОВАТЬ

Похоже, я разместил вопрос, не дописав текст. Предложение, которое раньше заканчивалось на "flavoe", было исправлено.

Как и ожидалось, проблема была в коде приложения. Ошибка привела к тому, что определенная страница вернула ошибку HTTP 500. К сожалению, это был URL-адрес, который haproxy использовал для отслеживания времени безотказной работы. Как только новый код был развернут, haproxy был проинформирован о том, что сайт недоступен.

Ответ, разумеется, заключался в том, чтобы исправить код приложения. Что не очевидно, так это как определить, что именно это произошло - в итоге я прибегнул к tcpdump для диагностики трафика, так как логи haproxy были малоинформативными.

Я бы начал с чего-нибудь простого, например: работает ли IIS на том же порту после развертывания, что и раньше? Трудно переадресовать, если порт изменился.