eid-ops/global/overlay/etc/puppet/modules/eid/manifests/telegraf.pp

33 lines
1.2 KiB
ObjectPascal
Raw Normal View History

2020-03-30 15:41:04 +02:00
require stdlib
2020-03-30 15:41:28 +02:00
require concat
2020-03-30 15:41:04 +02:00
2020-03-30 21:40:37 +02:00
class eid::telegraf(String $version = "stable", Array $volumes = []) {
2020-03-30 16:35:48 +02:00
$influxdb2_token = hiera("influxdb2_token","NOT_SET_IN_HIERA");
$influxdb2_org = hiera("influxdb2_org","NOT_SET_IN_HIERA");
$influxdb2_bucket = hiera("influxdb2_bucket","NOT_SET_IN_HIERA");
2020-03-30 15:38:23 +02:00
file {['/etc/telegraf','/etc/telegraf/telegraf.conf.d']: ensure => directory }
2020-03-30 13:59:36 +02:00
concat {'/etc/telegraf/telegraf.conf':
owner => 'root',
group => 'root',
mode => '0644',
notify => Sunet::Docker_run['telegraf']
}
2020-03-30 15:03:13 +02:00
eid_glob(["/etc/telegraf/telegraf.conf.d/*.conf"]).each |String $file| {
2020-03-30 15:03:13 +02:00
concat::fragment { $file:
2020-03-30 13:59:36 +02:00
target => "/etc/telegraf/telegraf.conf",
source => $file,
}
}
2020-03-31 08:43:44 +02:00
$_volumes = flatten(["/dev/log:/dev/log","/var/log:/var/log","/etc/telegraf:/etc/telegraf","/var/run/utmp:/var/run/utmp:ro",$volumes])
2020-03-30 21:40:37 +02:00
2020-03-30 15:03:13 +02:00
sunet::docker_run {"telegraf":
2020-03-31 09:27:50 +02:00
hostname => "${::fqdn}",
2020-03-30 13:59:36 +02:00
image => "docker.sunet.se/eduid/telegraf",
2020-03-30 16:30:12 +02:00
imagetag => $version,
2020-03-30 21:40:37 +02:00
volumes => $_volumes,
2020-03-30 16:41:51 +02:00
env => ["INFLUXDB2_TOKEN=$influxdb2_token","INFLUXDB2_ORG=$influxdb2_org","INFLUXDB2_BUCKET=$influxdb2_bucket"]
2020-03-30 13:59:36 +02:00
}
}