nginx не змогла вирішити імена висхідного потоку під час перезавантаження, навіть якщо вони вирішуються ОС


9

Під час перезавантаження конфігурації (спеціально для proxy_pass) - періодично це буде видно: nginx: [emerg] хост не знайдений у верхньому потоці

Однак - ім'я верхнього сервера буде вирішено в OS (Linux) - тільки nginx, здається, має цю проблему.

Це здається недавньою регресією - оскільки, здавалося, це не сталося раніше, ніж версії 1.0.10.

Хтось помітив це нещодавно?

Намагаються звузити місця для пошуку.

Відповіді:


6

Nginx внутрішньо керує DNS протягом 5 хвилин (не впевнений, що це можна настроїти в наступних версіях). Можливо, ваш дозвіл з певних причин виходить з ладу, тоді Nginx кешує цей результат.

Я бачив це в системах з включеною IPv6, оскільки за замовчуванням резолютор запитує паралельно і записи IPv4 і IPv6. Це може розглядатися як затоплення резолюцією, що призводить до тимчасової проблеми з DNS. Я бачив це спливаюче вікно на коробці з великою кількістю трафіку електронної пошти під час перевірки доменних імен.

Спробуйте додати:

  options single-request

до /etc/resolv.conf

Це викликає пошук IPv6 / v4 послідовно.


Дякую за вашу відповідь. Виявилося, що це помилка з псуванням імен хостів у файлах конфігурацій. На жаль Але ваша відповідь насправді дуже корисна - тому я зазначу її як правильну - так як це може викликати проблеми DNS, напевно (обстріливши її запитами).
Майкл Ніл

2
У мене те саме питання - що саме ви робили в конфігураційних файлах, щоб виправити це (заздалегідь дякую)
Zabs

Тепер ви можете додати value=30sпараметр до того, resolverщоб визначити, як довго зберігається вирішена IP-адреса в resolverкешах.
Алексіс Вільке
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.