Перейти к содержимому
Калькуляторы

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 запросов? Каким образом можно распараллелить потоки по ядрам?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

 

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

 

# threads       Launch this number of threads
#
threads=4

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.