Icinga2 mit puppet clients: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
  
=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=
 
=icinga2 clients=
 
mkdir /etc/puppet/modules/icinga2-client
 
mkdir /etc/puppet/modules/icinga2-client

Version vom 30. September 2015, 08:38 Uhr

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

Treeicinga2.png

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
  }


  1. alles was in dieser classe berücksichticht werden soll mus in den ersten {} stehen
  1. also aufpassen das am schlus der datei mit } abgeschlosen ist
  1. wir prüfen ob icinga2 installiert ist wenn nicht wird es installier sofern die repository stimmen
  1. falls nicht fügen wird die repository hinzu wen software-properties-common installiert ist wen nicht installieren wir dies


  1. verlinken der certifcate