123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406 |
- # == Class: icinga2::server::config
- #
- # This class configures the server components for the Icinga 2 monitoring system.
- #
- # === Parameters
- #
- # Coming soon...
- #
- # === Examples
- #
- # Coming soon...
- #
- class icinga2::server::config inherits icinga2::server {
- include icinga2::params
- #Directory resource for /etc/icinga2/:
- file { '/etc/icinga2/':
- ensure => directory,
- path => '/etc/icinga2/',
- owner => $etc_icinga2_owner,
- group => $etc_icinga2_group,
- mode => $etc_icinga2_mode,
- #require => Package[$icinga2::params::icinga2_server_packages],
- }
- #File resource for /etc/icinga2/icinga2.conf:
- file { '/etc/icinga2/icinga2.conf':
- ensure => file,
- path => '/etc/icinga2/icinga2.conf',
- owner => $etc_icinga2_icinga2_conf_owner,
- group => $etc_icinga2_icinga2_conf_group,
- mode => $etc_icinga2_icinga2_conf_mode,
- content => template('icinga2/icinga2.conf.erb'),
- }
- #Directory resource for /etc/icinga2/conf.d/:
- file { '/etc/icinga2/conf.d/':
- ensure => directory,
- path => '/etc/icinga2/conf.d/',
- owner => $etc_icinga2_confd_owner,
- group => $etc_icinga2_confd_group,
- mode => $etc_icinga2_confd_mode,
- }
- #Directory resource for /etc/icinga2/features-available/:
- file { '/etc/icinga2/features-available/':
- ensure => directory,
- path => '/etc/icinga2/features-available/',
- owner => $etc_icinga2_features_available_owner,
- group => $etc_icinga2_features_available_group,
- mode => $etc_icinga2_features_available_mode,
- }
- #Directory resource for /etc/icinga2/features-enabled/:
- file { '/etc/icinga2/features-enabled/':
- ensure => directory,
- path => '/etc/icinga2/features-enabled/',
- owner => $etc_icinga2_features_enabled_owner,
- group => $etc_icinga2_features_enabled_group,
- mode => $etc_icinga2_features_enabled_mode,
- }
- #Directory resource for /etc/icinga2/pki/:
- file { '/etc/icinga2/pki/':
- ensure => directory,
- path => '/etc/icinga2/pki/',
- owner => $etc_icinga2_pki_owner,
- group => $etc_icinga2_pki_group,
- mode => $etc_icinga2_pki_mode,
- }
- #Directory resource for /etc/icinga2/scripts/:
- file { '/etc/icinga2/scripts/':
- ensure => directory,
- path => '/etc/icinga2/scripts/',
- owner => $etc_icinga2_scripts_owner,
- group => $etc_icinga2_scripts_group,
- mode => $etc_icinga2_scripts_mode,
- }
- #Directory resource for /etc/icinga2/zones.d/:
- file { '/etc/icinga2/zones.d/':
- ensure => directory,
- path => '/etc/icinga2/zones.d/',
- owner => $etc_icinga2_zonesd_owner,
- group => $etc_icinga2_zonesd_group,
- mode => $etc_icinga2_zonesd_mode,
- }
- #File and directory resources for the object directories that can be used to hold different
- #types of configuration objects
- #Directory resource for /etc/icinga2/objects/:
- file { '/etc/icinga2/objects/':
- ensure => directory,
- path => '/etc/icinga2/objects/',
- owner => $etc_icinga2_obejcts_owner,
- group => $etc_icinga2_obejcts_group,
- mode => $etc_icinga2_obejcts_mode,
- }
- #Directory resource for /etc/icinga2/objects/hosts/:
- file { '/etc/icinga2/objects/hosts/':
- ensure => directory,
- path => '/etc/icinga2/objects/hosts/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/hostgroups/:
- file { '/etc/icinga2/objects/hostgroups/':
- ensure => directory,
- path => '/etc/icinga2/objects/hostgroups/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/services/:
- file { '/etc/icinga2/objects/services/':
- ensure => directory,
- path => '/etc/icinga2/objects/services/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/servicegroups/:
- file { '/etc/icinga2/objects/servicegroups/':
- ensure => directory,
- path => '/etc/icinga2/objects/servicegroups/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/users/:
- file { '/etc/icinga2/objects/users/':
- ensure => directory,
- path => '/etc/icinga2/objects/users/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/usergroups/:
- file { '/etc/icinga2/objects/usergroups/':
- ensure => directory,
- path => '/etc/icinga2/objects/usergroups/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/checkcommands/:
- file { '/etc/icinga2/objects/checkcommands/':
- ensure => directory,
- path => '/etc/icinga2/objects/checkcommands/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/notificationcommands/:
- file { '/etc/icinga2/objects/notificationcommands/':
- ensure => directory,
- path => '/etc/icinga2/objects/notificationcommands/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/eventcommands/:
- file { '/etc/icinga2/objects/eventcommands/':
- ensure => directory,
- path => '/etc/icinga2/objects/eventcommands/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/notifications/:
- file { '/etc/icinga2/objects/notifications/':
- ensure => directory,
- path => '/etc/icinga2/objects/notifications/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/timeperiods/:
- file { '/etc/icinga2/objects/timeperiods/':
- ensure => directory,
- path => '/etc/icinga2/objects/timeperiods/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/scheduleddowntimes/:
- file { '/etc/icinga2/objects/scheduleddowntimes/':
- ensure => directory,
- path => '/etc/icinga2/objects/scheduleddowntimes/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/dependencies/:
- file { '/etc/icinga2/objects/dependencies/':
- ensure => directory,
- path => '/etc/icinga2/objects/dependencies/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/perfdatawriters/:
- file { '/etc/icinga2/objects/perfdatawriters/':
- ensure => directory,
- path => '/etc/icinga2/objects/perfdatawriters/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/graphitewriters/:
- file { '/etc/icinga2/objects/graphitewriters/':
- ensure => directory,
- path => '/etc/icinga2/objects/graphitewriters/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/idomysqlconnections/:
- file { '/etc/icinga2/objects/idomysqlconnections/':
- ensure => directory,
- path => '/etc/icinga2/objects/idomysqlconnections/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/idopgsqlconnections/:
- file { '/etc/icinga2/objects/idopgsqlconnections/':
- ensure => directory,
- path => '/etc/icinga2/objects/idopgsqlconnections/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/livestatuslisteners/:
- file { '/etc/icinga2/objects/livestatuslisteners/':
- ensure => directory,
- path => '/etc/icinga2/objects/livestatuslisteners/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/statusdatawriters/:
- file { '/etc/icinga2/objects/statusdatawriters/':
- ensure => directory,
- path => '/etc/icinga2/objects/statusdatawriters/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/externalcommandlisteners/:
- file { '/etc/icinga2/objects/externalcommandlisteners/':
- ensure => directory,
- path => '/etc/icinga2/objects/externalcommandlisteners/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/compatloggers/:
- file { '/etc/icinga2/objects/compatloggers/':
- ensure => directory,
- path => '/etc/icinga2/objects/compatloggers/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/checkresultreaders/:
- file { '/etc/icinga2/objects/checkresultreaders/':
- ensure => directory,
- path => '/etc/icinga2/objects/checkresultreaders/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/checkercomponents/:
- file { '/etc/icinga2/objects/checkercomponents/':
- ensure => directory,
- path => '/etc/icinga2/objects/checkercomponents/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/notificationcomponents/:
- file { '/etc/icinga2/objects/notificationcomponents/':
- ensure => directory,
- path => '/etc/icinga2/objects/notificationcomponents/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/fileloggers/:
- file { '/etc/icinga2/objects/fileloggers/':
- ensure => directory,
- path => '/etc/icinga2/objects/fileloggers/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/syslogloggers/:
- file { '/etc/icinga2/objects/syslogloggers/':
- ensure => directory,
- path => '/etc/icinga2/objects/syslogloggers/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/icingastatuswriters/:
- file { '/etc/icinga2/objects/icingastatuswriters/':
- ensure => directory,
- path => '/etc/icinga2/objects/icingastatuswriters/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/apilisteners/:
- file { '/etc/icinga2/objects/apilisteners/':
- ensure => directory,
- path => '/etc/icinga2/objects/apilisteners/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/endpoints/:
- file { '/etc/icinga2/objects/endpoints/':
- ensure => directory,
- path => '/etc/icinga2/objects/endpoints/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/zones/:
- file { '/etc/icinga2/objects/zones/':
- ensure => directory,
- path => '/etc/icinga2/objects/zones/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/applys/
- #The files in this folder will be objects like
- #'apply something blah to Host...'
- #See the following link for more info:
- # http://docs.icinga.org/icinga2/latest/doc/module/icinga2/toc#!/icinga2/latest/doc/module/icinga2/chapter/configuring-icinga2#apply
- file { '/etc/icinga2/objects/applys/':
- ensure => directory,
- path => '/etc/icinga2/objects/applys/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/templates/:
- file { '/etc/icinga2/objects/templates/':
- ensure => directory,
- path => '/etc/icinga2/objects/templates/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- #Directory resource for /etc/icinga2/objects/constants/:
- file { '/etc/icinga2/objects/constants/':
- ensure => directory,
- path => '/etc/icinga2/objects/constants/',
- owner => $etc_icinga2_obejcts_sub_dir_owner,
- group => $etc_icinga2_obejcts_sub_dir_group,
- mode => $etc_icinga2_obejcts_sub_dir_mode,
- }
- }
|