Node Exporter hosts are on another private network

Viewed 387

In Telecom companies vendors keep their servers in private network and block all the ports that are not needed by their applications. The same scenario applied in my company and only one server in the vendor's private network is reachable by my prometheus server which is located in my company's corporate network.

I have installed node_exporter in all hosts ( RHLE servers belongs to vendor) but prometheus server either can't reach node_exporter endpoint URL or the port.

I have tried with the vendor to allow these hosts IPs on their switches and allow http port 9100 so my prometheus server can reach them and scrape the OS metrices but they refused to expose their servers to outside networks (my company's corporate network)

Is there a solution for this problem? is there a solution to utilize the only vendor's server which is reachable by my prometheus server like using it as forwarding or gate way server to forward node_exporter http endpoint on vendors servers to my prometheus server?

1 Answers

Prometheus themself recommend to be

running Prometheus servers on the same network as the monitored instances.

So moving Prometheus inside the network would be the best solution.

What you can evaluate is

  1. Push Gateway

This is a service scraping your instances and pushes the metrics to Prometheus. It is only recommended for batch jobs but depending on your setup it might do the trick.

Push Gateway

  1. PushProx

This works as a proxy between Prometheus and your instances. It honors the push principle but comes with some security concerns you need to address, like missing authentication.

It works like this:

pushproxy

PushProx

Related