Puppet Class: icingaweb2::module::elasticsearch
- Defined in:
- manifests/module/elasticsearch.pp
Summary
The Elasticsearch module displays events from data stored in Elasticsearch.Overview
Note:
If you want to use ‘git` as `install_method`, the CLI `git` command has to be installed. You can manage it yourself as package resource or declare the package name in icingaweb2 class parameter `extra_packages`.
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'manifests/module/elasticsearch.pp', line 52
class icingaweb2::module::elasticsearch(
Enum['absent', 'present'] $ensure = 'present',
Optional[Stdlib::Absolutepath] $module_dir = undef,
String $git_repository = 'https://github.com/Icinga/icingaweb2-module-elasticsearch.git',
Optional[String] $git_revision = undef,
Enum['git', 'none', 'package'] $install_method = 'git',
String $package_name = 'icingaweb2-module-elasticsearch',
Optional[Hash] $instances = undef,
Optional[Hash] $eventtypes = undef,
){
if $instances {
$instances.each |$name, $setting| {
icingaweb2::module::elasticsearch::instance{ $name:
uri => $setting['uri'],
user => $setting['user'],
password => $setting['password'],
ca => $setting['ca'],
client_certificate => $setting['client_certificate'],
client_private_key => $setting['client_private_key'],
}
}
}
if $eventtypes {
$eventtypes.each |$name, $setting| {
icingaweb2::module::elasticsearch::eventtype { $name:
instance => $setting['instance'],
index => $setting['index'],
filter => $setting['filter'],
fields => $setting['fields'],
}
}
}
icingaweb2::module { 'elasticsearch':
ensure => $ensure,
git_repository => $git_repository,
git_revision => $git_revision,
install_method => $install_method,
module_dir => $module_dir,
package_name => $package_name,
}
}
|