BSDPORTAL.RU
http://bsdportal.ru/

кэширующий DNS unbound - несколько ядер и логи
http://bsdportal.ru/viewtopic.php?f=13&t=28819
Страница 1 из 1

Автор:  v0f41k [ Вт 30 окт, 2018 3:24 pm ]
Заголовок сообщения:  кэширующий DNS unbound - несколько ядер и логи

поставил unbound в качестве кеширующего DNS сервиса вместо bind.
unbound работает, но процесс запущен в 1 экземпляре и логфайл путой.
погуглил,

verbosity: 3
minimal-responses: yes
statistics-interval: 10
extended-statistics: yes
logfile: "/var/log/unbound.log"
use-syslog: no
#yes тоже пробовал
statistics-interval: 30
extended-statistics: yes

сделал права на запись и владельца
chmod 664 /var/log/unbound.log
chown unbound:unbound /var/log/unbound.log
/var/log/unbound.log пустой, права на запись есть:
-rw-rw-r-- 1 unbound unbound 0 Oct 30 13:15 /var/log/unbound.log

num-threads: 8
rrset-cache-size: 1024m
msg-cache-size: 512m
но при нагрузке ничего не изменилось - около 1e5 пакетов в секунду появляются дропы в сокете
netstat -s -p udp
dropped due to full socket buffers
стоит 8 физических ядер, 8гиг озу, но процесс unbound один

service unbound restart делал, даже хост ребутал.
В чём моя ошибка?

Автор:  skeletor [ Пн 12 ноя, 2018 11:48 am ]
Заголовок сообщения:  Re: кэширующий DNS unbound - несколько ядер и логи

В чём вопрос: запустить в несколько потоков или drop udp?

Автор:  v0f41k [ Ср 30 янв, 2019 11:51 am ]
Заголовок сообщения:  Re: кэширующий DNS unbound - несколько ядер и логи

По udp drop с помощью netstat -s -p udp
я мониторю строку "dropped due to no socket"
если число увеличивается, значит unbound не справляется с нагрузкой.
Вопросы чтобы
1.заставить работать в 4-8 потоков с бОльшей производительностью чем в 2 потока, на серваке 8 физических ядер, на виртуалке субъективно работает хуже, хочу статистику и мониторинг чтобы сравнивать объективно.
2.заставить unbound писать статистику в лог - в конфиге настроил логирование, но лог остается пустым не зависимо от verbosity
3.настроить мониторинг unbound по snmp чтобы был oid с помощью которого можно было например рисовать график cacti, мониторить превышение порогового значения с помощью nagios и т.п.
у bind был /usr/local/bin/bind9-stats-snmpd.pl, который прописан в snmpd.conf. Есть ли что-то подобное для unboound?
на данный момент он монитирится как черный ящик по загрузке сетевого интерфейса, что не правильно для такого теста.

Автор:  skeletor [ Ср 30 янв, 2019 1:12 pm ]
Заголовок сообщения:  Re: кэширующий DNS unbound - несколько ядер и логи

1. Увеличьте количество тредов. Не помню в каких именно версиях ОС и unbound'a, но можно включить REUSEPORT в unbound, это позволит обрабатывать запросы быстрее. Дополнительно можно поиграться с диапазонами портов (поставить first поменьше, last - побольше):
Код:
# sysctl net.inet.ip.portrange
net.inet.ip.portrange.randomtime: 45
net.inet.ip.portrange.randomcps: 10
net.inet.ip.portrange.randomized: 1
net.inet.ip.portrange.reservedlow: 0
net.inet.ip.portrange.reservedhigh: 1023
net.inet.ip.portrange.hilast: 65535
net.inet.ip.portrange.hifirst: 49152
net.inet.ip.portrange.last: 65535
net.inet.ip.portrange.first: 10000
net.inet.ip.portrange.lowlast: 600
net.inet.ip.portrange.lowfirst: 1023

2. Вам нужно "вырезать" из общего лога. Добавьте в самый верх /etc/syslog.conf:
Код:
!unbound
*.*                                             /var/log/unbound.log

3. Штатно - никак, так же как и bind. Можете адаптировать ваш скрипт /usr/local/bin/bind9-stats-snmpd.pl под unbound, используя unbound-control для сброса статистики.

Автор:  v0f41k [ Ср 30 янв, 2019 1:30 pm ]
Заголовок сообщения:  Re: кэширующий DNS unbound - несколько ядер и логи

По логам:
/etc/syslogd.conf
!unbound
*.* /var/log/unbound.log
Я прописал.
/usr/local/etc/unbound/unbound.conf
verbosity: 1
minimal-responses: yes
statistics-interval: 10
extended-statistics: yes
use-syslog: yes
logfile: "/var/log/unbound.log"
#log-identity ""
лог появился при полном рестарте unbound и рестарте syslogd при таких параметрах. так и не понял почему его не было.

Страница 1 из 1 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/