I’m trying to pick a technology stack, to monitor around 100 separate client servers, spread geographically around my country.
At the moment I think we need Grafana, Prometheus, and InfluxDB, but I’m not sure about the specifics of this, or where things should be installed.
I’m wondering if it’s possible to set up an agent on a client, in such a way that the agent initiates the data transfer to my monitoring server. This means that I won’t have to change the httpd configuration, or poke holes in 100 firewalls (most of which I don’t control). I just want to be able to install something on the client, which then periodically sends data to my monitoring server (client push). The monitoring server can have open ports that it listens on, that’s fine.
All of the HOWTO documents I’ve found seem to require server-pull to get the data to the monitoring server, which isn’t acceptable in my situation – most of those servers can’t be configured to listen on a certain port for this sort of traffic.
As far as I can tell, Datadog does things in such a way that you just install an agent on a client, and it does client-push for all the metrics, off to a monitoring server. This is what I want, but using open source, instead of setting up an account with yet another SAAS provider.
Is what I’m after possible?
Thanks in advance.