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

Varnish 503 Guru Mediation errors с помощью pfsense и здорового apache

Мы запускаем брандмауэр / балансировщик нагрузки pfsense с varnish as service, перед веб-серверами Fedora linux, на которых запущен apache.

Мы периодически получаем 503 ошибки посредничества гуру. Мы немного застряли, почесывая затылок, потому что это нелегко повторить. Таймауты установлены на 30 секунд (соединение и первый байт), но страница 503 будет отображаться мгновенно, а не через 30 секунд. Затем, если вы обновитесь немедленно, это может сработать мгновенно, а иногда и до 100 обновлений.

Средняя нагрузка на веб-серверы <1, сервер БД <3 (все серверы (веб, db, pfsense / varnish) являются физическими, а не виртуальными машинами.

Я бы подумал, если бы таймауты были достигнуты, то страница 503 отобразилась бы только через 30 секунд, я ошибаюсь?

Кроме того, когда возникает ошибка, в файлах журнала apache, похоже, нет соответствующей ошибки.

Похоже, это влияет на страницы, а также на изображения, поэтому возможно, что страница загружается нормально, и для 9/10 изображений на странице все будет хорошо, но 1 не работает

Ниже приведен пример отладки лака. Он говорит, что нет бэкэнд-соединения, но я не могу понять, почему, если на apache была высокая нагрузка, я мог бы понять, что это нестабильно

Машины находятся на одной и той же локальной сети Ethernet.

21 ReqStart     c *IP-REMOVED* 33418 1274368062
21 RxRequest    c GET
21 RxURL        c /fashion/
21 RxProtocol   c HTTP/1.1
21 RxHeader     c User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.5) Gecko/2008121622 Fedora/3.0.5-1.fc10 Firefox/3.0.5
21 RxHeader     c Host: *ourdomain.com*
21 RxHeader     c Accept: */*
21 RxHeader     c Accept-Encoding: deflate, gzip
21 VCL_call     c recv lookup
21 VCL_call     c hash
21 Hash         c /fashion/
21 Hash         c *ourdomain.com*
21 VCL_return   c hash
21 VCL_call     c miss fetch
21 FetchError   c no backend connection
21 VCL_call     c error restart
21 VCL_call     c recv lookup
21 VCL_call     c hash
21 Hash         c /fashion/
21 Hash         c *ourdomain.com*
21 VCL_return   c hash
21 VCL_call     c miss fetch
21 FetchError   c no backend connection
21 VCL_call     c error restart
21 VCL_call     c recv lookup
21 VCL_call     c hash
21 Hash         c /fashion/
21 Hash         c *ourdomain.com*
21 VCL_return   c hash
21 VCL_call     c miss fetch
21 FetchError   c no backend connection
21 VCL_call     c error deliver
21 VCL_call     c deliver deliver
21 TxProtocol   c HTTP/1.1
21 TxStatus     c 503
21 TxResponse   c Service Unavailable
21 TxHeader     c Server: Varnish
21 TxHeader     c Content-Type: text/html; charset=utf-8
21 TxHeader     c Content-Length: 384
21 TxHeader     c Accept-Ranges: bytes
21 TxHeader     c Date: Wed, 11 Apr 2012 10:36:17 GMT
21 TxHeader     c X-Varnish: 1274368062
21 TxHeader     c Age: 0
21 TxHeader     c Via: 1.1 varnish
21 TxHeader     c Connection: close
21 TxHeader     c X-Cache: MISS
21 Length       c 384
21 ReqEnd       c 1274368062 1334140577.449995041 1334140577.450334787 1.794108152 0.000282764 0.000056982

Можете ли вы подключиться с помощью telnet с машины, на которой запущен лак, к IP / порту, на котором работает apache, когда появляются 503? Возможно, в лакировочной машине или в процессе закончились дескрипторы файлов? Возможно, apache попал в MaxClients? Каковы значения backend_unhealthy, backend_busy, backend_fail (см. http://comments.gmane.org/gmane.comp.web.varnish.misc/6756 также). Вы используете датчики здоровья с лаком?