Yes, you can use host names. That merely adds another level of configuration. When using terraform, I often use node names like <mumble><nth node> and just use those. They are only routable within the region/VPC but are in fact already in dns. You do have to watch out as if you change the seeds (in tf) or the cluster can get terminated and rebuild. If you have a way to capture these (you can do it in ansible, I had been told it is really hard to do in Chef/Puppet) then your cms can just adjust the xml as needed without fussing with route53.