Icinga2 mit puppet clients
Version vom 30. September 2015, 08:38 Uhr von David (Diskussion | Beiträge) (→icinga2 zertifikate verteilen)
puppet zertifikate verteilen
ein modul erstellen wie unten im beispiel
wir nenen es cert
class cert {
$cert = "${fqdn}.crt"
$key = "${fqdn}.key"
file { '/etc/ssl/xin-ca.crt':
ensure => file,
mode => 664,
owner => root,
group => root,
source => 'puppet:///modules/cert/xin-ca.crt'
}
file { "/etc/ssl/$cert":
ensure => file,
mode => 664,
owner => root,
group => root,
source => "puppet:///modules/cert/$cert"
}
file { "/etc/ssl/$key":
ensure => file,
mode => 664,
owner => root,
group => root,
source => "puppet:///modules/cert/$key"
}
icinga2 clients
mkdir /etc/puppet/modules/icinga2-client
den ordner so strukturiern
die datei trusted-master.crt
sollte nicht wie im beispiel hier sein
- die init.pp
class icinga2-client {
Exec { path => [ "/bin/", "/sbin/" , "/usr/bin/", "/usr/sbin/" ] }
package { "icinga2":
ensure => present,
require => Exec["icinga_repository"],
}
exec { "add-apt-repository ppa:formorer/icinga && apt-get update":
alias => "icinga_repository",
creates => "/etc/apt/sources.list.d/formorer-icinga-trusty.list",
require => Package["software-properties-common"]
}
package { "software-properties-common":
ensure => present
}
- alles was in dieser classe berücksichticht werden soll mus in den ersten {} stehen
- also aufpassen das am schlus der datei mit } abgeschlosen ist
- wir prüfen ob icinga2 installiert ist wenn nicht wird es installier sofern die repository stimmen
- falls nicht fügen wird die repository hinzu wen software-properties-common installiert ist wen nicht installieren wir dies
- verlinken der certifcate
