Telemetry: Update to include topology
We should try to understand how our self-managed customers have deployed GitLab, namely the topology. We have seen a lot of improvements when customers deploy based on our reference architectures, and it would be good to understand how closely people are deploying to one of those. Ideally we can track whether or not customers are more closely aligning to those.
This issue could very well lead to MANY more individual issues specific to each piece of topology if it makes sense.
Proposal
If we can capture a list of nodes, as well as what services are running on those nodes, that would be ideal.
I believe we collect this today for customers who have our Consul service enabled: https://docs.gitlab.com/ee/administration/high_availability/consul.html. We could either get this directly from Consul somehow, or get it from Prometheus (I think?) https://docs.gitlab.com/ee/administration/high_availability/monitoring_node.html. That said the Consul SD in Prometheus I believe is currently optional.