Puppet Class: psick::prometheus
- Defined in:
- manifests/prometheus.pp
Overview
class psick::prometheus
Management of Prometheus server
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'manifests/prometheus.pp', line 7
class psick::prometheus (
Array $alerts = [],
){
class { '::prometheus':
manage_user => true,
manage_group => true,
manage_prometheus_server => true,
user => 'prometheus',
group => 'prometheus',
version => '1.7.1',
bin_dir => '/opt/prometheus/prometheus-1.7.1.linux-amd64',
shared_dir => '/opt/prometheus/prometheus-1.7.1.linux-amd64',
localstorage => '/opt/prometheus-data',
extra_options => '-alertmanager.url http://localhost:9093 -web.console.templates=/opt/prometheus-1.7.1.linux-amd64/consoles -web.console.libraries=/opt/prometheus-1.7.1.linux-amd64/console_libraries',
install_method => 'package',
package_name => 'prometheus',
package_ensure => present,
scrape_configs => [
{
'job_name' => 'prometheus',
'scrape_interval' => '30s',
'scrape_timeout' => '30s',
'file_sd_configs' => [
{
'files' => ['/etc/prometheus/files.d/*.json'],
},
],
'static_configs' => [
{
'targets' => ['localhost:9090'],
'labels' => {
'alias' =>'Prometheus',
},
},
],
},
],
alerts => $alerts,
rule_files => ['alert.rules', 'precomputed.rules'],
}
file {'/etc/prometheus/precomputed.rules':
ensure => file,
content => epp('psick/prometheus/prometheus_server_precomputed.rules.epp'),
notify => Service['prometheus'],
}
file { '/etc/prometheus/files.d':
ensure => directory,
purge => true,
recurse => true,
}
File <<| tag == 'psick::prometheus::node_exporter' |>>
}
|