Hi, I'm working on a project that developed a solution (including several services/containers) that run on Docker (Swarm).
This solution is being installed in several third part private datacenters, with firewall rules to avoid inbound connections (Inbound: traffic initiate from external). In other words, none, from outside, can started a connection with the containers, but the opposite is possible.
I created a docker monitoring solution (based on Prometheus, cAdvisor, Node-Exporter, Dockerd-Exporter and Grafana) to each datacenter to have the alternative to monitor locally the Docker Environment.
Now, we need to have a consolidated vision of all environments that solution is running for. For example, we need to know the state of each node from each datacenter. This consolidated vision will run only in our datacenter. The main objective is give to us some idea about the use of the solution on these datacenters.
I studied some subjects, like "Federate Prometheus", "Grafana Multiple Datasources" and "Prometheus PushGateway", but I didn't find a way (or a solution) to admit a "push approach". On other words, a way to receive the data or metrics from each datacenters and store in our Prometheus or Grafana, without violate the firewall rules from datacenters of our clients. This requisite necessarily require that the "leaf" nodes start a connection with our environment.
Anyone have some idea to resolve this problem?
Thanks,