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

Проверка работоспособности HAProxy регистрируется в Squid как TCP_MISS / 000

У нас есть интерфейс HAProxy, балансирующий нагрузку на уровне серверов Squid, который обрабатывает данные с уровня Apache ModSecurity и в конечном итоге обслуживает данные из кластера IIS. Каждый сервер Squid сопоставлен с сервером ModSecurity в соотношении 1: 1 (например, N серверов Squid и N серверов ModSecurity).

Один сервер в кластере постоянно видит большее время проверки работоспособности в HAProxy. Файл check.txt настроен на обход кеша, поэтому он будет извлекать файл из уровня IIS. Журналы доступа Squid (пример ниже) показывают TCP_MISS/000 вместо TCP_MISS/200 как показывают все "хорошие" серверы. Кто-нибудь видел такое поведение раньше?

Кроме того, в "хороших серверах" вы увидите, что DIRECT/10.xxx.xxx.221 согласуется. Однако на "плохом сервере" журналы чередуются между DIRECT/10.xxx.xxx.222 и DIRECT/www.example.com.

Мысли?

Результаты плохого сервера:

1308159554.223      0 xxx.xxx.xxx.49 TCP_MISS/000 0 HEAD http://www.example.com/check.txt - DIRECT/www.example.com -
1308159558.526      1 xxx.xxx.xxx.86 TCP_MISS/000 0 HEAD http://www.example.com/check.txt - DIRECT/10.xxx.xxx.222 -
1308159558.527      0 xxx.xxx.xxx.87 TCP_MISS/000 0 HEAD http://www.example.com/check.txt - DIRECT/www.example.com -
1308159558.621      0 xxx.xxx.xxx.48 TCP_MISS/000 0 HEAD http://www.example.com/check.txt - DIRECT/www.example.com -

Результаты с хороших серверов:

1308159578.289      2 xxx.xxx.xxx.48 TCP_MISS/200 430 HEAD http://www.example.com/check.txt - DIRECT/10.xxx.xxx.221 text/plain
1308159578.695      6 xxx.xxx.xxx.86 TCP_MISS/200 430 HEAD http://www.example.com/check.txt - DIRECT/10.xxx.xxx.221 text/plain
1308159579.087      4 xxx.xxx.xxx.87 TCP_MISS/200 430 HEAD http://www.example.com/check.txt - DIRECT/10.xxx.xxx.221 text/plain

Я считаю, что нашел решение своей проблемы.

Первая проблема заключается в том, что сервер Squid, на котором возникли проблемы, страдал от проблем с вводом-выводом из-за того, как он взаимодействовал с хранилищем данных SAN.

Вторая проблема, вероятно, симптом первой проблемы, заключалась в том, что два других устаревших сервера HAProxy также выполняли проверки работоспособности на серверах Squid. Однако в среде без узких мест ввода-вывода я не думаю, что это было бы истинной причиной, если только это не было связано с различными версиями HAProxy.