Got it thanks for the details.
Does that not work? IIRC we actually allow service names and tags that are not valid DNS names so I don't think anything would stop you registering that as a service currently. That said, we intend to be stricter about that in the future so I can't don't recommend it in general - if it does work for you now though it could be a case we explicitly consider allowing when stricter rules come.
It might not because I know we do check for valid DNS names within the DNS server - I've not tried and don't off top of my head recall if `*` would cause that error.
I'm interested to know what Consul brings to this use case? We think it's great but why can't you just use k8s own service discovery tooling for this? You already have their ingress controller AND (sidecar?) haproxy both of which presumably have service-discovery and health checks and load-balancing options without Consul.
Apologies for asking about things you likely already considered - I'm just trying to understand the full constraints of the problem.
Does the ingress controller use Consul to find the backends for the services (I guess no as k8s knows this anyway). If not then why can't you just register each service with the IP and port of the ingress controller directly and so all requests just go there?
In general though, the answer is that no Consul doesn't allow defining arbitrary DNS entries and likely won't in the near future because it seems it would just grow until it's a fully fledged DNS server which is bloat for the vast majority of users.
Consul is a discovery/health-checking tool with a DNS interface but it's not designed to replace all other DNS infrastructure in your DC. We often recommend running something simple and lightweight like DNSMasq on each node configured with consul agent as the authoritative source for the `.consul` domain which gives you full DNS flexibility (and can improve performance if short TTLs are acceptable).
Or in k8s there are several other DNS alternatives that integrate with k8s service discovery already.
Does that help?
If you think there is a really compelling reason for this to be a special-case additional feature for Consul then I don't mean to shut down the conversation - let us know why :)
Would any others on the list find this valuable?
Thanks
Paul