Jump to content
Калькуляторы

Быстродействие DNS сервера Чем и как проверить ?

Debian 6. Свеженький BIND 9

Есть подозрения, что в ЧНН начинает подтормаживать. Но нет уверенности. Система используется только как DNS сервер. Других процессов нет.

Чем достоверно померить отклик DNS сервера ?

Чем померить линейное быстродействие (запросов в секунду) ?

Какие нормативы отклика нормальны для комфортного серфинга ?

Какие нормативы линейного быстродействия нормальны для Xeon quad core 2.0 ?

Share this post


Link to post
Share on other sites

Когда начинает тормозить bind, то он медленно отвечает и на свои зоны и на внешние. Поэтому достаточно измерять время ответа любой записи из своих зон(если таковых нет(чистый рекурсор), то создайте её). Если получится график с возрастанием отклика в ЧНН(или появятся неответы), то значит у вас имеются проблемы

Share this post


Link to post
Share on other sites

Чем померить линейное быстродействие (запросов в секунду) ?

 

ну както так..

 

rndc stats
A=`awk '{ if ( $2 == "QUERY") {print $1} }' /var/named/var/stats/named.stats`
sleep 300
rm -f /var/named/var/stats/named.stats
rndc stats
B=`awk '{ if ( $2 == "QUERY") {print $1} }' /var/named/var/stats/named.stats`
echo "($B-$A)/300" | bc -l

 

ну пути подрихтовать по месту (statistics-file "/var/stats/named.stats";).. ну или в какти (или любую другую любимую графикорисовалку) прикрутить

 

памяти хватает ? у меня процентов 70 запросов к кешу. Есл памяти мало, то кеш будет вымываться.

 

Включите ненадолго логи реквестов... очень может статься, что найдете топ лист пользователей с запросами MXов от завирусованных спамеров доменов по алфавиту. Закройте рекурсию и вообще запросы снаружи. (если есть свои домены, то глобально запросы закройте а своим доменам откроете)

 

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

Share this post


Link to post
Share on other sites

А что dig локально уже не устраивает ?

 

dig tralala axfr

;; Query time: 16 msec

;; SERVER: x.x.x.1#53(x.x.x.1)

;; WHEN: Sun Jan 13 11:29:42 2013

;; XFR size: 280 records (messages 1, bytes 6353)

Share this post


Link to post
Share on other sites

Debian 6. Свеженький BIND 9

Какие нормативы линейного быстродействия нормальны для Xeon quad core 2.0 ?

 

Это уже оверкилл :) Для кэширующего ns - ну памяти побольше и всё... Цифры про axfr локальной зоны я приводил - десяток миллисекунд. То, чего нет в кэше - это уже не от ns зависит, а от канала...

 

Ну и dnstop еще не отменили, сразу врага найдете локального...

Edited by YuryD

Share this post


Link to post
Share on other sites

YuryD

Почему выбор пал на AXFR? Достаточно A-записи для задачи мониторинга времени ответа

Более толсто нагружает сервер, а одна А - может и вымыться, если не своя. Если уж сервер и свои зоны плохо отдает, значит его ддосят.. Лечится сторонними средствами, iptables/ipfw На предмет одновременных коннектов с одного ip. dnstop вполне покажет.

Share this post


Link to post
Share on other sites

bind вообще плох как рекурсор.

Чем именно? Тем что BIND?

ок. идём сюда: http://www.yadifa.eu/benchmark и мотаем до самого нижнего графика. убираем всё линии с графика(легенда кликабельна) и постепенно добавляем с yadifa100-W5 до yadifa100-W12.

видим линейную масштабируемость по числу используемых ядер( 2хquad ht - всего 16 cpu в системе).

 

потом то же самое проделываем с bind991 и печалимся.

когда-то в одном ISP под dns купили sun fire t1000 в надежде запускать bind с большим числом нитей. бенчмаркали просто: запрашивали PTR для какой-нибудь сети /8.

на тестах оно показало себя вяло.

 

а хорошие цифры получились вот каким костылём: по числу cpu завели пачку jail'ов, внутри каждого жил bind. нагрузку раскидывал пакетный фильтр. но жить с таким не посоветую никому.

Share this post


Link to post
Share on other sites

Чего к бинду вообще целятся!

Бинд сделан посмотреть как работает. Также как и всё что делает ISC. Под серьёзные задачи приходится искать/писать что то своё, а на их софт смотреть как на образец для подражания поведения.

Share this post


Link to post
Share on other sites

О! Спасибо, офигенная штука.

Когда-то ею пользовался, но уже пару дней не могу вспомнить, как называется :).

Share this post


Link to post
Share on other sites

Под серьёзные задачи приходится искать/писать что то своё, а на их софт смотреть как на образец для подражания поведения.

А от какого объема начинаются серьезные задачи? Сервак с BIND на каком-то унылом Core 2 Duo и 2 Гб RAM в тестах дает вот такие результаты. Работает себе сервером в сети и обслуживает запросы абонентов. Плохо это или хорошо не знаю, но проблем не было.

 

post-76605-094459800 1358254314_thumb.png

Edited by replicant

Share this post


Link to post
Share on other sites

Всеми любимые корневые сервера.

Дык, как замахнулись-то. Про корневые все и так понятно, что у них все настолько свое, что дальше некуда.

 

А я про типичные задачи обычного кеширующего DNS в сети провайдера скажем на 20-30 тыс. абонентов.

 

BIND с такой работой без проблем справляется.

Share this post


Link to post
Share on other sites

Чего к бинду вообще целятся!

Бинд сделан посмотреть как работает. Также как и всё что делает ISC. Под серьёзные задачи приходится искать/писать что то своё, а на их софт смотреть как на образец для подражания поведения.

 

Don't go to church on Sunday

Don't get on my knees to pray

Don't memorize the books of the Bible

I got my own special way

Share this post


Link to post
Share on other sites

надо, наверное, дождаться цифр от Ivan Rostovikov, сколько же у него запросов в секунду. А то выяснится что проблема не в бинде вовсе..

 

Благодаря Вашим (всем спасибо) советам померялся:

В ЧНН - 1500 qps.

Среднее время отклика (namebench в ЧНН) 50мс

DNS cерверов у меня 2. Оба загружены примерно одинаково.

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

Возможно нужно вынести эти процессы на отдельные сервера и добавить еще кеширующих серверов ?

Share this post


Link to post
Share on other sites

1500qps это как бы ни о чём (небольшая нагрузка для такого сервера). может у вас лог запросов в текстовый файл ведётся? если да, то отключайте его

Share this post


Link to post
Share on other sites

BIND с такой работой без проблем справляется.

Я бы поспорил, но внутрь бинда не смотрел ни разу :)

Скажу только одно: другие кешеры с рекурсией изначально планировались и писались под именно эти задачи и высокие нагрузки, а бинд до этого эволюционировал постепенно, и хз, могли остаться всякие костыли.

 

I got my own special way

Это единственный пусть не быть рабом а стать самому богом: бог - творец, раб - нет.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.