LINUX.ORG.RU
ФорумAdmin

Как уменьшить Resolve доменов для Apache2?

 


0

2

По разным причинам бывает, что все доменные имена делаются недоступными для сервера и по этому при перезагрузке сервера приходится по пол часа ждать пока пройдут все сообщения apache2 о том, что домены не резолвятся: Name or service not know: Could not resolve host name... Вопрос: как уменьшить время поиска apache2 доменного имени? Например каждый домен искать по 4 секунды, так-как если он есть, то за это время он точно ответит, а если нет, то 4 секунды было бы удобно.

Система: Debian 7


Поставить dnsmasq и кешировать.
Хотя в твоем случае, скорее всего он не может отрезолвить локальные домены, следовательно их надо прописать в /etc/hosts.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

мне не нужно обходное решение, нужно конкретно - уменьшить время ожидания апача ответа от resolve. Есть ли такой параметр или надо делать пересборку apache2?

rkm543
() автор топика
Ответ на: комментарий от rkm543

мне не нужно обходное решение, нужно конкретно - уменьшить время ожидания апача ответа от resolve. Есть ли такой параметр или надо делать пересборку apache2?

И как, по-твоему, пересборка поможет резолву?

tazhate ★★★★★
()
Ответ на: комментарий от rkm543

мне не нужно обходное решение

Если вы не слушаете советов, то зачем спрашиваете? O_O

zgen ★★★★★
()
Ответ на: комментарий от rkm543

так время в коде может определяться, он же как-то прекращает ждать ответа через 30 секунд...

Нет, время определяется не в коде. Советую почитать, как работает dns.
Он ждет ответа от dns сервера, потом отваливается по тайм-ауту. Вопрос надо решать со стороны днс. Как именно - я отписал выше.

tazhate ★★★★★
()
Ответ на: комментарий от rkm543
HostnameLookups Off

Можно еще вот так сделать в конфиге, тогда он перестанет резолвить айпишки клиентов совсем. Но судя по выхлопу в посте - он пытается резолвить домены, которые он обслуживает.

tazhate ★★★★★
()
Последнее исправление: tazhate (всего исправлений: 1)
Ответ на: комментарий от tazhate

то есть он сам отваливается по тайм-ауту который у него в коде зашит или его отваливает dns сервер?

rkm543
() автор топика
Ответ на: комментарий от rkm543

то есть он сам отваливается по тайм-ауту который у него в коде зашит или его отваливает dns сервер?

У него в коде не зашиты тайм-ауты. Они регулируются стеком/настройками в конфиге.
Он пытается через днс сервер узнать домен, и либо не видит днс-сервер, либо днс-сервер его отсылает. Как это починить, я уже написал выше.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

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

Вот хотелось бы это не чинить, а заставить apache2 ждать поменьше, потому что из-за этого его ожидания сервер уходит в даун на пол часа.

rkm543
() автор топика
Ответ на: комментарий от rkm543

Вот хотелось бы это не чинить, а заставить apache2 ждать поменьше, потому что из-за этого его ожидания сервер уходит в даун на пол часа.

Других способов мне не известно. К тому же, кроме апача, к доменам могут обращаться и другие программы, поэтому это просто общий тюнинг, который весьма быстро настраивается.

Вот хотелось бы это не чинить

А в чем проблема-то? Это даже не «чинить», а «настроить».

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

Когда у меня например отваливается bind9 по разным причинам - их миллион и сервер перестаёт загружиться - это мучает, это очень мучает. И причина того что сервер перестаёт загружаться - ждущий ответов апач. Вот мне эти его ждунчики либо вообще отключить, либо уменьшить. Всё-таки полезу в код апача. Если бы эта проблема была простой, то я бы не обращался на форум. Спасибо за попытку помочь.

rkm543
() автор топика
Ответ на: комментарий от rkm543

Я так и не понял, в чем проблема не курочить код апача, а тупо прописать все домены в /etc/hosts либо кешировать запросы чем-нибудь?
Если сделать одно из двух, апач моментально будет получать ответы и быстро стартовать.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

кеширование ненадёжно - тоже миллион причин по которым может отывалиться. А прописывание в hosts соблазнительно, но я не ведусь на соблазн. ;-) тоже не очень надёжно - можно забыть добавить в hosts новый домен и плюс 30 сек к загрузке apache2 обеспечено.

rkm543
() автор топика
Ответ на: комментарий от rkm543

кеширование ненадёжно - тоже миллион причин по которым может отывалиться.

Может пора нанять специалиста, который сможет настроить так, чтоб не отваливалось? ;)

тоже не очень надёжно - можно забыть добавить в hosts новый домен и плюс 30 сек к загрузке apache2 обеспечено.

Лол, тоже мне проблема :) Тупо скрипт пусть каждые 5 минут проверяет и вставляет айпишки в hosts.

tazhate ★★★★★
()
Последнее исправление: tazhate (всего исправлений: 1)
Ответ на: комментарий от rkm543

Сдается мне, что ковырять код апача куда менее надежно, потому что фиг его знает, что там может отвалиться от нововведений.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

Может пора нанять специалиста, который сможет настроить так, чтоб не отваливалось? ;)

я кодер, по этому руки тянутся к апачу, а отваливается обычно в ходе каких-то настроек, систему когда «крутишь», то частенько апач обижается, днс кеш во время глобальных настроек тоже может вылететь в даун, это же ясно как день

Лол, тоже мне проблема :) Тупо скрипт пусть каждые 5 минут проверяет и вставляет айпишки в hosts.

это можно, то есть достаточно скрипт, который пройдёт по vhosts апача и соберёт ServerName и ServerAlias?

rkm543
() автор топика
Ответ на: комментарий от rkm543

это можно, то есть достаточно скрипт, который пройдёт по vhosts апача и соберёт ServerName и ServerAlias?

Именно. И поправит записи в /etc/hosts соответсвенно айпишкам в VirtualHost/Listen.
Резолвить на внешний для апача их не обязательно.

tazhate ★★★★★
()
Ответ на: комментарий от rkm543

я кодер, по этому руки тянутся к апачу, а отваливается обычно в ходе каких-то настроек, систему когда «крутишь», то частенько апач обижается, днс кеш во время глобальных настроек тоже может вылететь в даун, это же ясно как день

Я именно поэтому и говорю про специалиста, у которого есть то, что тебе надо: опыт.

tazhate ★★★★★
()

/etc/hosts
а скрипт лучше писать, который комплексно создает виртхост вместе с юзером, базой и нужными записями в том числе и в hosts

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

пока рановато, у меня ещё концепция этого механизма на сервере не определена, пока эволюция не дойдёт до определённого вида - всё будет в разобранном виде.

rkm543
() автор топика
Ответ на: комментарий от rkm543

в смысле? не понял

Например, у тебя в апаче есть example.net. На функциональность апача не влияет, на что он сам его отрезолвит - на 10.0.0.1 или на внешку какуюнить. Поэтому можно фигачить любую айпишку в /etc/hosts и не париться.

tazhate ★★★★★
()
Ответ на: комментарий от rkm543

пока рановато, у меня ещё концепция этого механизма на сервере не определена, пока эволюция не дойдёт до определённого вида - всё будет в разобранном виде.

К слову говоря, было бы лучше какую-нибудь панельку поставить, в них как правило уже сделаны все оптимизации. Например, ispmanager.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

Например, у тебя в апаче есть example.net. На функциональность апача не влияет, на что он сам его отрезолвит - на 10.0.0.1 или на внешку какуюнить. Поэтому можно фигачить любую айпишку в /etc/hosts и не париться.

ааа, и правда, но у меня апач сидит исключительно на внешке, специально Ну сделаю тогда с чтением NameVirtualHost, нет проблем

rkm543
() автор топика
Ответ на: комментарий от tazhate

не, если поставлю панель, то придётся следовать линии партии, а я хочу делать всё под себя. Ну это уже оффтопик.

rkm543
() автор топика
Ответ на: комментарий от tazhate

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

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Кроме шуток, мне в своё время она очень понравилась, не ломает систему, юзает обычные репы и конфиги. Для новичков идеальна.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

спасибо за совет, надо будет сервер собирать, там как раз панелька будет, вот ispmanager и попробую

rkm543
() автор топика
Ответ на: комментарий от rkm543

кеширование ненадёжно - тоже миллион причин по которым может отывалиться.

*посмотрел на свой кеширующий DNS на рабочем десктопе(нетривиальный резолв нужен, а политики безопасности запрещают переложить его на сервера)

Второй год работает и не падает, bind кстати. Не знаю что у вас там отваливается. Видимо вы что-то не так делаете. Решать проблемы с DNS нужно в DNS, Apache тут не при чем...

Pinkbyte ★★★★★
()
Ответ на: комментарий от pekmop1024

Про убунту Хз - поставь триалку и проверь. На деб 6 64 все ок.

tazhate ★★★★★
()

Проблему законсервировал. Сейчас нет времени писать скрипт. Если когда-нибудь напишу, то здесь опубликую. Всем огромное спасибо за помощь.

rkm543
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.