I am running my own Authoritative DNS on bind9 for like 5 of my domains with little traffic. I am running them on 2 separate VPS servers (so every Mb of memory costs me some $x2).
Is there any way to reduce it's memory consumption down from ~45-50Mb? (I would be happy with 10-30Mb)
I know there are lighter DNS server alternatives, but this would require to replace server managing software, so I would prefer to stick with bind.
Suggestions? I've heard bind8 is better on memory consumptoin. Will I fall to hell for using it?
You can take a look into options like:
These are all global options that may actually cause your server to stop responding once hitting the caps, but will limit the memory used.
For a real world example, with a setting of "max-cache-size 1M" my BIND install is using just about 30-35MB of memory (uptime 2 weeks, authoritative for 9 zones, light traffic).
Maybe not answer you are looking for, but why not go with a hosted DNS? I guess I am not a true geek sysadmin but I offloaded admin stuff that was not so useful for us (email, dns) to dedicated companies instead of wasting my time on it. We use www.dnsmadeeasy.com and they have been great. The prices are really cheap for a few domains. It will be cheaper than your VPS, that's for sure.
Have you ever heard of NSD(Name Server Daemon)? It's designed for authoritative Domain Name Server. It has good performance and very low footprint.
I'd take a look at TinyDNS also, its another more popular BIND replacement
The tinydns suggestion is your way to go if you want to save memory. BIND caching of zones is as aggressive as it is pointless, performance-wise a well-designed binary database is just as fast.
Regarding going for DNS hosting, there are several services out there that give it to you for free, for example Afraid, BuddyNS and Hurricane Electric.