After working on a few tasks related to the Cloud VPS designate setup, and following https://wikitech.wikimedia.org/wiki/Portal:Cloud_VPS/Admin/DNS/Designate#Initial_designate/pdns_node_setup
I figured I would collect here a few things that can be improved:
- T307357: Move cloud vps ns-recursor IPs to host/row-independent addressing -- currently agreed and being worked on
- T339894: cloudservices: codfw1dev: fix backups -- should be considered done as soon as a test recovery happens
- T338929: openstack designate: introduce some as-code mechanism to instrument DNS data -- we have some ideas of doing this via terraform
- automated database instrumentation. Each cloudservices host has a PDNS / mysql database that requires manual maintenance per wikitech link above. It could be moved to puppet in a similar fashion to https://gerrit.wikimedia.org/r/plugins/gitiles/operations/puppet/+/refs/heads/production/modules/pdns_server/manifests/db_backups.pp
- move mariadb service to stock debian mariadb. I couldn't find a reason why using wmf-mariadb, which only complicates the setup (and imposes manual steps upon reimage).
- Designate needs to RW in the galera DB. The required grants are not set up in any automated way, or even not documented anywhere. More so, the openstack::db::project_grants{ 'designate' } puppet resource is deployed in desginated nodes instead of in the galera nodes.
- clarify relationship, and how to configure DNS masters, designate pools and all that. See also T346385: cloudservices1006 using 10. address to send DNS NOTIFYs to cloudservices1005