Re: Периодические проблемы под нагрузкой
Это похоже на то, что по какой-то причине быстро исчерпываются свободные сокеты и origin судорожно пытается использовать существующие, т.к. net.ipv4.tcp_tw_reuse=1. Также резко подскакивает кол-во стокетов во всех состояниях (TIME_WAIT, Orphaned и т.д. ): https://imgur.com/a/fAz8hkH Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283141#msg-283141 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
Сравнил дампы с выровненными метками времени (время на серверах синхронизировано): https://imgur.com/a/ncIOTkf Картина похожая, хоть reuseport уже выключен. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283138#msg-283138 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
On Fri, Feb 22, 2019 at 03:36:07AM -0500, waster wrote: > По совету сделал дамп на обоих серверах, в момент проблем наблюдается такая > картина: https://imgur.com/a/Y9xN0H1 > > Множественных ретрансмиссий не вижу. На обоих серверах сейчас backlog=65535 > reuseport. Я лично вижу на этой картинке две странности: 1. Пакеты отправляются с хоста "cache" в строго последовательном порядке src_port, а приходят на хост "origin" в каком-то довольно хаотичном. Вы используете какой-то балансировщик нагрузки с мультипасом на несколько физических линков? 2. Верхняя часть картинки банально не стыкуется с нижней, на них очень далёкие порты. Как их совместить? Здесь по пути был NAT или что? К слову, при сравнении дампов с разных сторон очень полезны отметки времени. Разумеется, время на хостах должно быть синхронизовано. -- Eugene Berdnikov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
По совету сделал дамп на обоих серверах, в момент проблем наблюдается такая картина: https://imgur.com/a/Y9xN0H1 Множественных ретрансмиссий не вижу. На обоих серверах сейчас backlog=65535 reuseport. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283120#msg-283120 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
Да, выглядит не очень хорошо,и даже не под сильной нагрузкой помаленьку растет: # netstat -s | grep LIST 19014545 SYNs to LISTEN sockets dropped Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283113#msg-283113 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
On Thu, Feb 21, 2019 at 06:39:46PM +0500, damir bikmuhametov wrote: > On Thu, Feb 21, 2019 at 07:06:11AM -0500, waster wrote: > > Все-таки странно, mtr не показывает проблем с пингом до ориджина во время > > таких скачков > > "conntrack: table full, dropping packet"? я бы скорее ожидал что-то типа # netstat -s | grep -i list 172775 SYNs to LISTEN sockets dropped ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
Нет, в логах чисто, да и options nf_conntrack hashsize=32768. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283110#msg-283110 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
On Thu, Feb 21, 2019 at 07:06:11AM -0500, waster wrote: > Все-таки странно, mtr не показывает проблем с пингом до ориджина во время > таких скачков "conntrack: table full, dropping packet"? -- boco ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
On Thu, Feb 21, 2019 at 07:06:11AM -0500, waster wrote: > Все-таки странно, mtr не показывает проблем с пингом до ориджина во время > таких скачков. Получается, что такое приличное падение трафика в эти моменты > означает, что и чанки не отдаются в том числе, хотя для кэша установлено > inactive=1m. Это либо недоступен вообще сам cache, либо затыкается nginx на > cache? Вы показывали таймауты клиента, там скорее всего есть таймауты не только на передачу данных, но и на установку соединений. Запишите дамп трафика с обеих сторон, включающий лишь пакеты хендшейка (SYN, SYN-ACK), их будет немного. Там нужно будет найти эпизоды множественных ретрансмиссий, когда их найдёте, посмотрите на аналогичный дамп с другой стороны. Станет ясно, есть ли потери в канале связи или же пакеты теряются после прихода на сервер. В зависимости от результата нужно будет либо с каналом разбираться, либо с настройками сервера. -- Eugene Berdnikov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
Все-таки странно, mtr не показывает проблем с пингом до ориджина во время таких скачков. Получается, что такое приличное падение трафика в эти моменты означает, что и чанки не отдаются в том числе, хотя для кэша установлено inactive=1m. Это либо недоступен вообще сам cache, либо затыкается nginx на cache? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283105#msg-283105 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
Да, спасибо, я тоже думаю, что это первое на что надо обратить внимание, поставил ежеминутный mtr до origin в cron, но интересно, что это возникает только в моменты пиковой нагрузки, и приблизительно в одно и то же время. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,283083,283092#msg-283092 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Периодические проблемы под нагрузкой
On Wed, Feb 20, 2019 at 07:08:13AM -0500, waster wrote: > Под нагрузкой периодически наблюдается такая картина: > https://imgur.com/a/B3fOWg7 > По понятным причинам также резко подпрыгивает кол-во открытых файловых > дескрипторов. > > В error.log на cache в эти моменты иногда (но не всегда) видны несколько > сообщений: > -- > > *137407049 upstream timed out (110: Connection timed out) while connecting > to upstream... > ... > *143796692 limiting requests, excess: 50.400 by zone "hlslimit"... > -- > > В error.log на origin вообще тишина. > > Подскажите, пожуалуйста, в чем может быть проблема? Только лишь в иногда > нестабильной сетевой связности между cache и origin, всплесками запросов? > Уже множество параметров было перенастроено как на origin, так и на cache, > но успехов в повышении стабильности это не дало. Наблюдаемые симптомы (увеличение времени ожиданий read/write и таймауты на стороне клиента, увеличение к-ва файловых дескрипторов) вполне укладываются в гипотезу о том, что потерялась связь между cache и origin. На графике "Network traffic on enp7s0f0" явно виден провал по трафику. Поэтому нет смысла выдумывать другие возможные причины, пока не изучены сетевые проблемы между cache и origin. -- Eugene Berdnikov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru