2016-10-20 8 views
0

Я использую лак 4 + nginx + ELB. Когда я бегу varnishlog я продолжаю видеть новые сессии, как следующие каждые 2 секунды:Varnish + ELB открытые сессии

* <<Session>> 65622  
- Begin   sess 0 HTTP/1 
- SessOpen  10.90.148.245 16560 :80 10.13.12.136 80 1476955364.127661 17 
- SessClose  RX_TIMEOUT 5.005 
- End  

Когда я удалить сервер лаковое из УДР я не вижу этих сессий. Откуда берутся эти сеансы? (интервал проверки работоспособности ELB составляет 300 секунд)

Я нашел этот вопрос после изучения того, почему ELB удаляет экземпляр через пару дней.

+0

Что странно в том, что ничего не сделано в вашей сессии. Журнал означал, что '10.90.148.245' открывает сеанс HTTP/1.0 на вашем лаке. Затем ничего не делает, и сессия, наконец, закрывается, когда время истекает. Является ли '10.90.148.245' ваш ELB? –

+0

Есть сеанс от двух IP-адресов. Один выше и этот: 10.104.144.137. Это не IP-адреса ELB. – guyyug

+0

Просто из любопытства, как вы смотрите эти сессии на серверах ec2 (когда лак не является бэкэнд). Если вы посмотрите на http-журналы, вы не увидите их, поскольку запросы не будут выполнены ... –

ответ

2

Это не IP-адреса ELB.

Уверены ли вы?

Каждый узел в ELB - обычно есть два или три узла в среде с низким трафиком - имеет два IP-адреса, общий адрес и частный адрес.

Найти соответствующие IP-адреса в консоли EC2 в разделе Сеть & Безопасность> Сетевые интерфейсы. Вы должны найти «Владелец прикрепления», установленный на amazon-elb, и «Описание», установленное на имя балансира.

Если это действительно не ваш ELB, тогда это должно сказать вам, что это такое.

Если это ваш ELB, то это почти наверняка «запасные» соединения, которые ELB пытается открыть для вашего экземпляра по соображениям производительности - чтобы избежать ожидания, чтобы настроить новое соединение, когда следующий запрос клиента прибывает.

Ваша установка лака закрывает их довольно быстро, поэтому ELB снова пытается.

Вы должны иметь возможность increase the req_timeout чем-то большего, чем тайм-аут ELB (по умолчанию 60 секунд), и это должно привести к тому, что вы увидите намного меньше.

Этот совет был бы иным, если бы Лак (или любой другой веб-сервер) был непосредственно открыт для Интернета, потому что вам не нужны случайные браузеры, связывающие ресурсы ... но в случае ELB в HTTP/S (не TCP), ELB заботится об управлении простоя постоянных подключений из браузеров, каждый из которых не использует соединение с вашим экземпляром, и нет связи 1: 1 между соединениями на лицевой стороне и задней стороне ELB.

+0

Спасибо за это. Я изменил timeout_idle, и теперь я вижу этот журнал каждые 60 секунд. Возможно, вы можете пролить свет на это: http://stackoverflow.com/questions/40200938/varnish-nginx-elb-499-responses – guyyug

 Смежные вопросы

  • Нет связанных вопросов^_^