[Pdns-announce] First draft of roadmap 4.0
bert.hubert at powerdns.com
Wed Jun 17 12:47:00 UTC 2015
Some weeks ago we asked you for your input on our roadmap, and you sure
delivered! We got dozens of comments, many of which resulted in additions to
the roadmap, or the moving around of features. Thank you!
Here is the provisional plan for 4.0. Before you read on, we'd like to
clarify one thing. This list is what we think we'll be doing, but it is not
a promise with a date attached to it. We understand that your deployment may
require promises with dates on it, and if so, please contact us via
https://www.powerdns.com/contact.html or off-list.
If you miss anything on the roadmap that you suggested, it may be allocated
to 4.2 or 4.3 which have not yet been defined that well. Please also contact
us in case you miss something we told you we would do!
Finally, all other feedback is welcome too. Here goes.
The broad description of 4.0:
"The 4.0 version of PowerDNS has been announced as a ‘spring cleanup’ and
that is indeed what is happening. Lots of infrastructure is being replaced,
simplified and enhanced. To concentrate the ‘pain’ of all these upheavals,
everything that is impactful from an infrastructure perspective has been
concentrated in 4.0.
Running 4.0 may be somewhat scary since so much changed. Because of that,
anyone who actually does deploy it will get smothered in support love so we
can learn from them."
This last sentence IS a promise from us. Feel free to experiment with 4.0,
and experience super rapid responses to issues and questions. To get 4.0
snapshots, please head to https://repo.powerdns.com/ or build from github.
Here is what we plan to deliver for 4.0. Note that some of this is already
Visible new features:
DNSSEC *aware* recursor
Note: this is not yet validation, but it will enable you to validate DNSSEC through PowerDNS
Software repositories for all products and popular distributions - first only for git master
Metaslaving over AXFR (minimum viable product)
this means one server ‘slaves’ an entire master server
classical slaving is per zone not per server & sucks
See this is an improved supermaster
pdns_control add-zone, remove-zone, add-record, remove-record, change-record
(Packet)cache in recursor in reverse order so we can support wiping subdomains
In 4.0 time frame: dnsdist 0.9 release
Packages for all popular platforms, plus repos
port PowerDNS Recursor to “libco” (we rely on some outdated deprecated threading APIs now)
EDNS probing outgoing recursor
Unix domain socket APIs actually become the HTTP API
rec_control / pdns_control moves to that HTTP API over Unix Domain
Allow multiple simultaneous outstanding questions (solve the A/AAAA problem)
DNSName all the things (we treat DNS as human readable ASCII internally)
DNSResourceRecord out of the flow of Recursor - it is just silly
Replace distributor (pipe based)
Plus “solve” the startup problem
This is where you have a giant database of domains that is 'cold' after
a boot and can't service PowerDNS fast enough, leading to frequent restarts
until the cache is sufficiently warm
Document “the startup problem” for auth (DNSDIST, warm up the database etc)
Document the Lua hooks (prequery) in Authoritative for people who really want ‘dns control’ versus ‘write a backend’?
Remove all <4.0 remarks from documentation, archive current version with <4.0 data
Separately, as tarball?
geobackend (replaced by geoip)
For 4.1, we plan to build on the newly delivered infratructure to deliver:
Prefetching recursor: win the ‘google namebench latency contest’
Plus associated moderately scary infrastructure
EDNS Subnet support outgoing: please Akamai
Cache awareness included & cache upheavals
DNSSEC-enable the API
Create key, add key, remove key etc + resign, rectify, the works
“DNSflow async/tcp stream of all queries (qname, qtype, ip)”: preparation for our analytics
Generic Key-Value-Range DB for the million-million challenge
Million records, million queries/second
Dyndns http wrapper
Validator testing ready for the DNSSEC awareness of 4.0
Good luck and please let us know your thoughts! And if you made it this far:
when will 4.0 happen? We have written down December 2 2015 as the 'formal
launch date', but conceivably it will be earlier.
More information about the Pdns-announce