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

PowerDNS - распределение нагрузки по ядрам процессора

Добрый день. Возникла задача использовать в качестве внутренних DNS серверов связку PowerDNS и MySQL для хранения зон. Версия PowerDNS 3.4.2. При тестировании утилитой DNSperf было выявлено, что вся нагрузка ложится на одно ядро процессора, нагрузка замерялась по каждому ядру отдельно утилитой sar. Хотя разработчики заявляют о поддержке мульпоточности PowerDNS. Изменение параметров в файле pdns.conf - receiver-threads и distributor-threads не приводит не помогло, нагрузка по прежнему ложится на одно ядро. В качестве платформы, на которой развернут PowerDNS, используется виртуальная машина на VmWare ESXI 5.1, выделено 2 vCPU и 3 Гб RAM.

ОС - Debian 7.7 , версия ядра 3.2.0-4-amd64 #1 SMP Debian 3.2.65-1+deb7u1 x86_64 GNU/Linux. Каким образом реализована поддержка многопоточности в PowerDNS в зависимости от количества DNS запросов? Каким образом можно распараллелить потоки по ядрам?

Share this post


Link to post
Share on other sites

А именно ли поверднс грузит? Точно это не прерывания забитые на первое ядро?

Share this post


Link to post
Share on other sites

Birq попробуйте запустить - он размажет прерывания по ядрам красиво :)

Share this post


Link to post
Share on other sites

PowerDNS в связке с Mysql, если смотреть через top при запуске dnsperf на в первых строчках висит процесс Power DNS, изредка выскакивает MySQL. Хорошо а как проверить какие именно прерывания забиты под конкретное ядро?

Share this post


Link to post
Share on other sites

Немного посмотрел про Birq, я так понял что программа аккуратно размазывает аппаратные прерывания. А как у нее у управлением thread`ами?

Share this post


Link to post
Share on other sites

Прерывания смотреть тут: cat /proc/interrupts

 

Birq умеет HT. Но смысла в том, чтобы не навешивать на одно и тоже логическое ядро - отсутствует, HT очень умный и отлично разруливает этот кейс :)

Share this post


Link to post
Share on other sites

Полагаю что нужно кол-во тредов увеличить примерно по кол-ву ядер, ну или как вам там удобнее

 

В конфиге PowerDNS recursor мне это сильно помогло в свое время.

 

# threads       Launch this number of threads
#
threads=4

 

В PowerDNS по тредам настроек поболее

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this