Knot DNS resolver Cache
iotop почав видавати цікаві дані: 
IO завантажений на 99% процесом [kworker/u16:0+flush-8:112]
Після пошуків варіантів проблеми, виявилось, що knot-resolver має персистентний кеш на жорсткому диску.
Тобто з кешем в 10Gb в оперативці, маємо ще 10Gb кеша на жорсткому диску.
Потрібно це для того, щоб після рестарту можна було віддавати дані з кешу, а не знов їх отримувати з інших серверів.
Беручи до уваги, що рестарти доволі рідко бувають для резолвера (ще не було жодного за рік), то сенсу тримати дисковий кеш я не бачу.
Вимкнути дисковий кеш в knot-resolver я не зміг.

Довелось зменшити кеш в оперативній пам'яті й змонтувати дисковий кеш в оперативку.
 
~]# cat /etc/fstab |grep knot-resolver
tmpfs        /var/cache/knot-resolver        tmpfs   rw,size=5G,uid=knot-resolver,gid=knot-resolver,nosuid,nodev,noexec,mode=0700 0 0
~]# cat /etc/knot-resolver/kresd.conf|grep cache.size
-- Refer to manual for optimal cache size
cache.size = 4990 * MB
~]# systemctl stop kresd@1
~]# mount /var/cache/knot-resolver
~]# systemctl start kresd@1
Кеш оперативки в конфіг файлі має бути меншим за змонтований розділ.
tkapluk
2021-08-05 08:08:22
Avatar
Не тестировал производительность по сравнению с  Google и Cloudflare?
Foster
2021-08-05 14:16:53
Avatar
Не тестировал производительность по сравнению с  Google и Cloudflare?
не совсем корректно будет
свой днс отдает зоны еще свои внутрь
пинг хоста дает
1.1.1.1 => 11ms
8.8.8.8 => 25ms
свой хост => 0.2ms

По идее с кеша будет отдавать очень быстро, поэтому локально будет быстрее, чем гнать пользователей на другие.

namebench выдает такое

dns-test-1.png

dns-test-2.png

dns-test-3.png

dns-test-4.png
 
tkapluk
2021-08-06 07:57:32
Avatar
В Киеве "пинги" на указаннуказанные айпишки существенно меньше. Собственно только для внутренних днс оно и надо. Загонять туда клиентов особо смысла нет.
Kiano
2021-08-07 08:20:58
Avatar
Если нет ната - нет смысла. С натом - всегда есть смысл.
muff
2021-08-07 11:02:02
Avatar
Если есть значительное количество устройств в сети - используем DNS-сервер провайдера. 
Если есть провайдер - обязательно используем собственный резолвер для пользователей.

Да, решения от Google и Cloudflare популярны, но вот "отдебажить" проблему никак не получится в случае ее возникновения. Что "под капотом" - не узнать, поскольку это сторонний сервис. И вероятность срабатывания ограничений на количество запросов всегда будет "неизвестным".
 
tkapluk
2021-08-07 13:43:55
Avatar
 С натом - всегда есть смысл.
И в чем смысл? 
 
Да, решения от Google и Cloudflare популярны, но вот "отдебажить" проблему никак не получится в случае ее возникновения.
и что ты там дебажижшь? 
l1ght
2021-08-07 15:36:41
Avatar
И в чем смысл? 

лимиты per ip
и что ты там дебажижшь? 

чаще приходится дебажить свой собственный резолвер которому сто лет в обед и никто его не обновляет
то dnssec отвалится, то udp size не тот 
да и в целом по ртт смотреть не всегда хорошо, так как есть ещё скорость работы самого приложения и у тех же гуглов что-то самописное на реактивном топливе в этом плане 
Kiano
2021-08-07 18:13:17
Avatar
И в чем смысл? 
 и что ты там дебажижшь? 

не грузить нат, не напарываться на лимит по ипу
tkapluk
2021-08-07 19:58:08
Avatar
Нагрузка на нат такая, что ею можно просто пренебречь. Ну а лимиты какие-то там конечно  есть, но в нормальных условиях Гугель задолбет каптчой на странице поиска, прежде чем  лимитом ДНС сервера.
You should to log in

loading