diff options
author | varac <varacanero@zeromail.org> | 2016-03-01 15:41:31 +0100 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2016-03-01 15:41:31 +0100 |
commit | a050fbb81b3b218518d079c6c83c6bcd48485340 (patch) | |
tree | aedb887751cc45e6fc1e88532354266ba8f7abd0 /manifests/agent | |
parent | b0c973424dfca43087636ac75f9f0674adda5d6e (diff) | |
parent | dc9d8cca10d64ab7027f6c876a3bc89e19cf4639 (diff) |
Merge remote-tracking branch 'shared/master' into leap_master
Diffstat (limited to 'manifests/agent')
-rw-r--r-- | manifests/agent/config.pp | 46 | ||||
-rw-r--r-- | manifests/agent/generate_sshkey.pp | 4 | ||||
-rw-r--r-- | manifests/agent/install.pp | 10 | ||||
-rw-r--r-- | manifests/agent/install_local.pp | 12 | ||||
-rw-r--r-- | manifests/agent/register.pp | 9 |
5 files changed, 53 insertions, 28 deletions
diff --git a/manifests/agent/config.pp b/manifests/agent/config.pp index 36f2910..8ee5f18 100644 --- a/manifests/agent/config.pp +++ b/manifests/agent/config.pp @@ -9,39 +9,42 @@ class check_mk::agent::config ( $user, $method = 'xinetd', $generate_sshkey = false, - $sshuser = undef + $sshuser = undef, + $hostname = $::fqdn ) { if $use_cache { $server = "${server_dir}/check_mk_caching_agent" - } - else { + } else { $server = "${server_dir}/check_mk_agent" } + case $method { 'xinetd': { - if $ip_whitelist { - $only_from = join($ip_whitelist, ' ') - } - else { - $only_from = undef - } - file { '/etc/xinetd.d/check_mk': - ensure => present, - owner => 'root', - group => 'root', - mode => '0444', - content => template('check_mk/agent/check_mk.erb'), - require => Package['check_mk-agent','check_mk-agent-logwatch'], - notify => Class['check_mk::agent::service'], - } + if $ip_whitelist { + $only_from = join($ip_whitelist, ' ') + } else { + $only_from = undef + } + + file { '/etc/xinetd.d/check_mk': + ensure => present, + owner => 'root', + group => 'root', + mode => '0444', + content => template('check_mk/agent/check_mk.erb'), + require => Package['check_mk-agent','check_mk-agent-logwatch'], + notify => Class['check_mk::agent::service'], + } } - 'ssh' : { + + 'ssh': { if $generate_sshkey { - check_mk::agent::generate_sshkey { "check_mk_key_${::fqdn}": + check_mk::agent::generate_sshkey { "check_mk_key_${hostname}": keydir => $keydir, authdir => $authdir, authfile => $authfile, - sshuser => $sshuser + sshuser => $sshuser, + hostname => $hostname } } @@ -50,6 +53,7 @@ class check_mk::agent::config ( ensure => absent; } } + default : {} } } diff --git a/manifests/agent/generate_sshkey.pp b/manifests/agent/generate_sshkey.pp index d2d1d39..b00271f 100644 --- a/manifests/agent/generate_sshkey.pp +++ b/manifests/agent/generate_sshkey.pp @@ -15,11 +15,12 @@ define check_mk::agent::generate_sshkey ( $ssh_key_basepath = '/etc/puppet/modules/check_mk/keys', # user on the client the check_mk server will ssh to, to run the agent $sshuser = 'root', + $hostname = $::fqdn, $check_mk_tag = 'check_mk_sshkey' ){ # generate check-mk ssh keypair, stored on puppetmaster - $ssh_key_name = "${::fqdn}_id_rsa" + $ssh_key_name = "${hostname}_id_rsa" $ssh_keys = ssh_keygen("${ssh_key_basepath}/${ssh_key_name}") $public = split($ssh_keys[1],' ') $public_type = $public[0] @@ -46,6 +47,7 @@ define check_mk::agent::generate_sshkey ( target => "${authdir}/${authfile}", override_builtin => true, options => "command=\"${command}\""; + } } else { # otherwise use the defaults sshd::ssh_authorized_key { $ssh_key_name: diff --git a/manifests/agent/install.pp b/manifests/agent/install.pp index 7225b20..5c0b56e 100644 --- a/manifests/agent/install.pp +++ b/manifests/agent/install.pp @@ -50,13 +50,19 @@ class check_mk::agent::install ( } } else { + if $version { + $agent_package_version = $version + } else { + $agent_package_version = latest + } + package { 'check_mk-agent': - ensure => latest, + ensure => $agent_package_version, name => $agent_package_name, require => $require_method, } package { 'check_mk-agent-logwatch': - ensure => latest, + ensure => $agent_package_version, name => $agent_logwatch_package_name, require => Package['check_mk-agent'], } diff --git a/manifests/agent/install_local.pp b/manifests/agent/install_local.pp new file mode 100644 index 0000000..7238440 --- /dev/null +++ b/manifests/agent/install_local.pp @@ -0,0 +1,12 @@ +define check_mk::agent::install_local($source=undef, $content=undef, $ensure='present') { + @file { "/usr/lib/check_mk_agent/local/${name}" : + ensure => $ensure, + owner => 'root', + group => 'root', + mode => '0755', + content => $content, + source => $source, + tag => 'check_mk::local', + require => Package['check-mk-agent'], + } +} diff --git a/manifests/agent/register.pp b/manifests/agent/register.pp index 9d12fc7..46cdeae 100644 --- a/manifests/agent/register.pp +++ b/manifests/agent/register.pp @@ -1,7 +1,8 @@ -class check_mk::agent::register ($host_tags = '') { - @@check_mk::host { $::fqdn: +class check_mk::agent::register ( + $host_tags = '', + $hostname = $::fqdn +) { + @@check_mk::host { $hostname: host_tags => $host_tags, } - - } |