[Pdns-users] Supermaster and superslave automatic provisioning

a b tripivceta at hotmail.com
Thu May 24 15:58:10 UTC 2012

> > Regarding superslave provisioning, does the pdns.conf on the mas-
> > ter need to have "master=yes" and does the pdns.conf on the slave
> > need to have "slave=yes"
> Correct: the master must be a master, and the slave a slave. :) Zones
> are transferred via AXFR.

Can anyone tell me why this needs to be  explicitly  set  in  the
pdns.conf file, when we have a relational database as the backend
storage and the database contains all  the  information  required
for pdns_server to know whether he is to be a slave or a master?

The reason I ask this is because if that is the case, it  exposes
a   serious   architectural  issue. For example, our database and
the corresponding schema is created by running

yes | pkgadd POWERDNSoracle-db

which enables us to get from literally nothing to a fully running
database    ready    to    accept   data   in  a fully automated,
non-interactive fashion, since packages can be  plugged  directly
into an automated provisioning system.

So in the postinstall phase, the postinstall code would  need  to
add "master=yes" (or "slave=yes") to /etc/opt/powerdns/pdns.conf,
but how does one programatically  determine  whether  the  server
being  deployed  is to be a master, or a slave? The database does
not yet at this point in time contain any data.

> You mean the `domains' table.

I mean the "zones" table; we use the "oracle" backend instead  of
"goracle",   and   it   has  a completely different schema, which
enables it to exploit all the features pdns offers.  One  example
of  this  is  the "domains" table, which the g* backends use, but
which does not exist in the "oracle"  schema,   the   approximate
equivalent of which is the "zones" table.

> A slave server will transfer a zone only if it detects the SOA serial on
> the master server is higher than its own. So, when you update a record
> in your master's database, increment the SOA serial number for that
> zone's SOA record.

What happens when the (super)slave has absolutely no data in  his
database tables, just a valid schema?

More information about the Pdns-users mailing list