We should investigate using SRV records for puppet agents as described here: https://puppet.com/docs/puppetserver/5.1/scaling_puppet_server.html#using-dns-srv-records
With the advertised advantage of being able to do load balancing client side, including failing over to a least-preferenced site in case of outages or unavailability