Tuning Authoritative Memory Usage

Matt Corallo bugmlmi at mattcorallo.com
Wed Apr 27 14:04:42 UTC 2022


Hi!

I run a number of BIND9 (9.16-27-1~deb11u1 - Debian Stable) secondaries with some large zones (10s 
of DNSSEC-signed zones with ~100k records, not counting signatures, with a smattering of other 
zones). Somewhat to my surprise, even with "recursion no" the memory usage of instances is highly 
correlated with the hosts's available memory - BIN9 uses ~400M RSS on hosts with 1G of non-swap 
memory, but 2.3G on hosts with 4G of non-swap memory, all with identical configs and the same zones.

I can't seem to find any references to anything in the ARM which would allow tuning of memory usage 
for non-recursive servers, and the only real reference to anything about memory I could find was 
"max-cache-size". The entire bind config follows:

zone "." { type hint...}
zone "localhost/127/0/255.in-addr.arpa" { type master; ... }

zone "zones.catalog" { type slave; file ...; masterfile-format text; masters { .. }; notify no; };
zone "zones2.catalog" { type slave; file ...; masterfile-format text; masters { .. }; notify no; };

options {
	dnssec-validation auto;



	listen-on-v6 { any; };

	allow-transfer { none; };

	notify explicit;



	recursion no;

	max-journal-size 4096;

	max-cache-size 8M;

	zone-statistics yes;



	masterfile-format raw;



	catalog-zones {

		zone "zones.catalog"

			default-masters { ... }

			in-memory no

			min-update-interval 10;

		zone "zones2.catalog"

			default-masters { ... }

			in-memory no

			min-update-interval 10;

	};

};

Thanks,
Matt


More information about the bind-users mailing list