I currently have Telegraf running on approx. 50 Windows servers as as service. (location C:\Program Files\Telegraf). The telegraf.conf file contains the base agent config and the 1 single output (influxdb_2). My ‘input conf files’ live in C:\Windows\telegraf\inputs and the number of conf files I have in there depend on what services are on the Windows Server that I want to monitor. (eg: iis.conf, dns.conf, nvidia_smi.conf).
When I make an intentional change to one of my inputs (lets say I add something extra to the iis.conf). I have to copy\paste the updated conf file (once tested) to ~50 servers & while that works… it takes a while!
So my Q is… Is anyone out there centrally storing their conf file(s), that I can have telegraf look at (on these ~50 servers)? Maybe its an internal GitLab repo, a public Github repo… basically anything BUT local .conf file on the server itself.
Looking for tips\tricks here and if possible, examples of how one would set this up!
Thank you so much
You could use a windows share and replace the -config and -config-directory locations to \\unc_path\your_configs
One issue you’ll have is that the agent will need to restart to pick up the changes. If you’re using AD you could write a powershell script to restart the service or schedule a task to restart the agent periodically.
Saying that though, you have influxdb_2 output. I thought Influx 2.0 stored configs centrally, unless I’m thinking of the cloud version.
I thought about using the UNC path, but there is also a scope to extend this to servers in a completely different network, that would not have UNC access to the conf file, hence the GitHub\gitlab idea.
The service restart to pick up the ‘updated configs’ is not a concern, as I have monitor looking at the conf file & if it’s different (from the last check)…I have another process restarting the service, to get the new config.
and yes, you are right that this is very much like the InfluxDB cloud offering & to be fair… I haven’t used that service yet, so I was blissfully unaware that I was trying to replicate an influx offering (until very recently). Given that this is a PoC, I’m doing what I can at little\no cost… again, just to show that something CAN be done, to get the internal buy-in!
I’d look in to whether you can do this with Influx 2.0 then, if thats possible then awesome. If not then GitHub/Gitlab might be the way to go then. Unfortunately I’ve not tried that way though so not sure how well it works.
We were using a UNC path at one point but changed over to storing the config on a linux server running the TICK stack. I have an installer for the agent that downloads the configs from there during set up. The installer has an auto update that triggers from a scheduled task. I can manage agent updates and config changes from there.
I don’t know if you can provide an IP address or URL in the service definition, otherwise you could perhaps point it to a diretory on your database server.
I haven’t done much with the new Influx so I can’t really offer much on that, sorry. Is there a free trial for the cloud offering? that might work for your PoC