Доступен (http://mailman.nginx.org/pipermail/nginx-ru-announce/2018/00...) выпуск основной ветки высокопроизводительного HTTP-сервера nginx 1.13.10 (http://nginx.org/), в котором реализованы следующие изменения (http://nginx.org/en/CHANGES):
- Добавлен модуль ngx_http_grpc_module (http://nginx.org/en/docs/http/ngx_http_grpc_module.html) с реализацией прокси для протокола gRPC. Подробнее см. опубликованный несколько дней назад анонс (https://www.opennet.me/opennews/art.shtml?num=48283);
- В реализацию SSI-директивы "include" добавлена возможность использования параметра "set" для сохранения в переменную содержимого произвольных ответов. Максимальный размер ответа ограничивается значением директивы
"subrequest_output_buffer_size";- При наличии в системе в nginx теперь используется вызов clock_gettime(CLOCK_MONOTONIC), который позволяет избежать некорректного срабатывания таймаутов при изменении времени в системе;
- В директиву "log_format" добавлен параметр "escape=none" для отключения экранирования символов при записи в лог;
- В модуле ngx_stream_ssl_preread_module реализована переменная $ssl_preread_alpn_protocols;
- Устранена проблема с распределением памяти при обработке директивы
"geo";
- Исправлена ошибка, из-за которой при использовании переменых в директиве "auth_basic_user_file" в лог мог попадать символ с нулевым кодом (\0).URL: http://mailman.nginx.org/pipermail/nginx-ru-announce/2018/00...
Новость: https://www.opennet.me/opennews/art.shtml?num=48298
Открываю "Главные новости" - а там nginx с gRPC.
Открываю "Мини-новости" - а там тоже nginx с gRPC.
Уже боюсь "Важное" открывать.
Открываю "Опеннет без www" и не парюсь вообще.
Ээээй.. и я хочу в раздел "важное" или там тоже nginx ??
а присобачьте уж тогда в 1.13.11 отправку лога напрямую в еластиксёрч?
там уже есть отпрака в рсислог, логи успешно летят в логстеш а оттуда в еластиксерч. ЧТо действительно портит всю картину так это тупая логика резолвера -- если указать имя рсислог сервера и то его айпи резолвится только в момент старта нгинкса. Если айпи по ходу дела поменялся (ведь для этого и ииспользуются днс-имена вместо йапишников) -- нгинс тупо валится или перестаёт слать логи. Карсиво, ничего не скажешь.
как часто резолвить прикажете?
В идеале -- через интервал, настраиваемый в конфиге.
Ну хотя бы раз в Х секунд или Х пакетов на целевой ресурс.p.s. по поводу смехуечек на тему рсислога -- логстеш в проекте УЖЕ собирает логи из кучи других источников, а нгинкс просто шлет логи туда "как в рсислог" (проще говоря по юдп напрямую).
через время, указанное в TTL, например.
А зачем посылать логи через жирный логстеш, если рсислог и сам умеет отправлять в эластик?
Ты просто завидуешь, потому и бесишься!
>там уже есть отпрака в рсислог, логи успешно летят в логстеш а оттуда в еластиксерч.знаю и пользуюсь, хочу, чтобы стало одной прослойкой меньше. Про резолв имени один раз — да, проблема, но не критичная для меня, попробуйте реквестировать решение в 1.13.12
> ведь для этого и ииспользуются днс-имена вместо йапишниковНет. DNS - это вам не High Availability Load Balancer. То, что он иногда так срабатывает, больше исключение чем правило, и это сильно зависит от сервера и клиента.
Оно вообще не работает, если есть DNS-кэш на клиенте. Всегда порождает Server Affinity, даже там где не надо. Некоторые приложения будут неадекватно реагировать на выпад IP, если им как раз нужен Server Affinity на стороне приложения.Откройте для себя модуль IPVS (он же LVS). Выбирайте себе какой-нибудь удобный демон управления этим модулем, например, keepalived. Если не нравится, есть ldirectord в сочетании с heartbeat он даст то же самое. Дело вкуса.
clock_gettime(CLOCK_MONOTONIC) - ежу было понятно что нужно монотоник использовать.
А во фре есть и CLOCK_MONOTONIC_FAST, хз чем он отличается :)
CLOCK_MONOTONIC_RAW надо
Пора ещё одну точку в номер версии добавить.
не, не пора. Для тех кто без смузи и гироскутеров, а бороду не белит перекисью, сама седая - наиболее важное во всем этом мусоре - баг в коде geo (который на самом деле ip filter), хорошо хоть не remote exploitable, но "и так неплохо получилось" - вокер валится по sigsegv.какой-то он редкостно кривой, этот модуль, и баг подобного рода далеко не первый.