maybe chown 'nagios' 'icinga2/conf.d/api-users.conf'
maybe chgrp 'nagios' 'icinga2/conf.d/api-users.conf'
maybe chmod 0644 'icinga2/conf.d/api-users.conf'
-maybe chown 'nagios' 'icinga2/conf.d/app.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/app.conf'
-maybe chmod 0644 'icinga2/conf.d/app.conf'
-maybe chown 'nagios' 'icinga2/conf.d/apt.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/apt.conf'
-maybe chmod 0644 'icinga2/conf.d/apt.conf'
-maybe chown 'nagios' 'icinga2/conf.d/commands.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/commands.conf'
-maybe chmod 0644 'icinga2/conf.d/commands.conf'
-maybe chown 'nagios' 'icinga2/conf.d/downtimes.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/downtimes.conf'
-maybe chmod 0644 'icinga2/conf.d/downtimes.conf'
-maybe chown 'nagios' 'icinga2/conf.d/groups.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/groups.conf'
-maybe chmod 0644 'icinga2/conf.d/groups.conf'
-maybe chown 'nagios' 'icinga2/conf.d/hosts.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/hosts.conf'
-maybe chmod 0644 'icinga2/conf.d/hosts.conf'
-maybe chown 'nagios' 'icinga2/conf.d/notifications.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/notifications.conf'
-maybe chmod 0644 'icinga2/conf.d/notifications.conf'
-maybe chown 'nagios' 'icinga2/conf.d/services.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/services.conf'
-maybe chmod 0644 'icinga2/conf.d/services.conf'
-maybe chown 'nagios' 'icinga2/conf.d/templates.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/templates.conf'
-maybe chmod 0644 'icinga2/conf.d/templates.conf'
-maybe chown 'nagios' 'icinga2/conf.d/timeperiods.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/timeperiods.conf'
-maybe chmod 0644 'icinga2/conf.d/timeperiods.conf'
-maybe chown 'nagios' 'icinga2/conf.d/users.conf'
-maybe chgrp 'nagios' 'icinga2/conf.d/users.conf'
-maybe chmod 0644 'icinga2/conf.d/users.conf'
maybe chown 'nagios' 'icinga2/constants.conf'
maybe chgrp 'nagios' 'icinga2/constants.conf'
-maybe chmod 0640 'icinga2/constants.conf'
+maybe chmod 0644 'icinga2/constants.conf'
maybe chown 'nagios' 'icinga2/constants.conf.orig'
maybe chgrp 'nagios' 'icinga2/constants.conf.orig'
maybe chmod 0640 'icinga2/constants.conf.orig'
maybe chgrp 'nagios' 'icinga2/zones.conf.orig'
maybe chmod 0640 'icinga2/zones.conf.orig'
maybe chmod 0640 'icinga2/zones.conf.orig.save'
-maybe chmod 0644 'icinga2/zones.conf.save'
maybe chown 'nagios' 'icinga2/zones.d'
maybe chgrp 'nagios' 'icinga2/zones.d'
maybe chmod 0750 'icinga2/zones.d'
+++ /dev/null
-object IcingaApplication "app" { }
+++ /dev/null
-apply Service "apt" {
- import "generic-service"
-
- check_command = "apt"
-
- assign where host.name == NodeName
-}
+++ /dev/null
-/* Command objects */
-
-/* Notification Commands
- *
- * Please check the documentation for all required and
- * optional parameters.
- */
-
-object NotificationCommand "mail-host-notification" {
- command = [ ConfigDir + "/scripts/mail-host-notification.sh" ]
-
- arguments += {
- "-4" = "$notification_address$"
- "-6" = "$notification_address6$"
- "-b" = "$notification_author$"
- "-c" = "$notification_comment$"
- "-d" = {
- required = true
- value = "$notification_date$"
- }
- "-f" = {
- value = "$notification_from$"
- description = "Set from address. Requires GNU mailutils (Debian/Ubuntu) or mailx (RHEL/SUSE)"
- }
- "-i" = "$notification_icingaweb2url$"
- "-l" = {
- required = true
- value = "$notification_hostname$"
- }
- "-n" = {
- required = true
- value = "$notification_hostdisplayname$"
- }
- "-o" = {
- required = true
- value = "$notification_hostoutput$"
- }
- "-r" = {
- required = true
- value = "$notification_useremail$"
- }
- "-s" = {
- required = true
- value = "$notification_hoststate$"
- }
- "-t" = {
- required = true
- value = "$notification_type$"
- }
- "-v" = "$notification_logtosyslog$"
- }
-
- vars += {
- notification_address = "$address$"
- notification_address6 = "$address6$"
- notification_author = "$notification.author$"
- notification_comment = "$notification.comment$"
- notification_type = "$notification.type$"
- notification_date = "$icinga.long_date_time$"
- notification_hostname = "$host.name$"
- notification_hostdisplayname = "$host.display_name$"
- notification_hostoutput = "$host.output$"
- notification_hoststate = "$host.state$"
- notification_useremail = "$user.email$"
- }
-}
-
-object NotificationCommand "mail-service-notification" {
- command = [ ConfigDir + "/scripts/mail-service-notification.sh" ]
-
- arguments += {
- "-4" = "$notification_address$"
- "-6" = "$notification_address6$"
- "-b" = "$notification_author$"
- "-c" = "$notification_comment$"
- "-d" = {
- required = true
- value = "$notification_date$"
- }
- "-e" = {
- required = true
- value = "$notification_servicename$"
- }
- "-f" = {
- value = "$notification_from$"
- description = "Set from address. Requires GNU mailutils (Debian/Ubuntu) or mailx (RHEL/SUSE)"
- }
- "-i" = "$notification_icingaweb2url$"
- "-l" = {
- required = true
- value = "$notification_hostname$"
- }
- "-n" = {
- required = true
- value = "$notification_hostdisplayname$"
- }
- "-o" = {
- required = true
- value = "$notification_serviceoutput$"
- }
- "-r" = {
- required = true
- value = "$notification_useremail$"
- }
- "-s" = {
- required = true
- value = "$notification_servicestate$"
- }
- "-t" = {
- required = true
- value = "$notification_type$"
- }
- "-u" = {
- required = true
- value = "$notification_servicedisplayname$"
- }
- "-v" = "$notification_logtosyslog$"
- }
-
- vars += {
- notification_address = "$address$"
- notification_address6 = "$address6$"
- notification_author = "$notification.author$"
- notification_comment = "$notification.comment$"
- notification_type = "$notification.type$"
- notification_date = "$icinga.long_date_time$"
- notification_hostname = "$host.name$"
- notification_hostdisplayname = "$host.display_name$"
- notification_servicename = "$service.name$"
- notification_serviceoutput = "$service.output$"
- notification_servicestate = "$service.state$"
- notification_useremail = "$user.email$"
- notification_servicedisplayname = "$service.display_name$"
- }
-}
-
-/*
- * If you prefer to use the notification scripts with environment
- * variables instead of command line parameters, you can use
- * the following commands. They have been updated from < 2.7
- * to support the new notification scripts and should help
- * with an upgrade.
- * Remove the comment blocks and comment the notification commands above.
- */
-
-/*
-
-object NotificationCommand "mail-host-notification" {
- command = [ ConfigDir + "/scripts/mail-host-notification.sh" ]
-
- env = {
- NOTIFICATIONTYPE = "$notification.type$"
- HOSTDISPLAYNAME = "$host.display_name$"
- HOSTNAME = "$host.name$"
- HOSTADDRESS = "$address$"
- HOSTSTATE = "$host.state$"
- LONGDATETIME = "$icinga.long_date_time$"
- HOSTOUTPUT = "$host.output$"
- NOTIFICATIONAUTHORNAME = "$notification.author$"
- NOTIFICATIONCOMMENT = "$notification.comment$"
- HOSTDISPLAYNAME = "$host.display_name$"
- USEREMAIL = "$user.email$"
- }
-}
-
-object NotificationCommand "mail-service-notification" {
- command = [ ConfigDir + "/scripts/mail-service-notification.sh" ]
-
- env = {
- NOTIFICATIONTYPE = "$notification.type$"
- SERVICENAME = "$service.name$"
- HOSTNAME = "$host.name$"
- HOSTDISPLAYNAME = "$host.display_name$"
- HOSTADDRESS = "$address$"
- SERVICESTATE = "$service.state$"
- LONGDATETIME = "$icinga.long_date_time$"
- SERVICEOUTPUT = "$service.output$"
- NOTIFICATIONAUTHORNAME = "$notification.author$"
- NOTIFICATIONCOMMENT = "$notification.comment$"
- HOSTDISPLAYNAME = "$host.display_name$"
- SERVICEDISPLAYNAME = "$service.display_name$"
- USEREMAIL = "$user.email$"
- }
-}
-
-*/
-
+++ /dev/null
-/**
- * The example downtime apply rule.
- */
-
-apply ScheduledDowntime "backup-downtime" to Service {
- author = "icingaadmin"
- comment = "Scheduled downtime for backup"
-
- ranges = {
- monday = service.vars.backup_downtime
- tuesday = service.vars.backup_downtime
- wednesday = service.vars.backup_downtime
- thursday = service.vars.backup_downtime
- friday = service.vars.backup_downtime
- saturday = service.vars.backup_downtime
- sunday = service.vars.backup_downtime
- }
-
- assign where service.vars.backup_downtime != ""
-}
+++ /dev/null
-/**
- * Host group examples.
- */
-
-object HostGroup "linux-servers" {
- display_name = "Linux Servers"
-
- assign where host.vars.os == "Linux"
-}
-
-object HostGroup "windows-servers" {
- display_name = "Windows Servers"
-
- assign where host.vars.os == "Windows"
-}
-
-/**
- * Service group examples.
- */
-
-object ServiceGroup "ping" {
- display_name = "Ping Checks"
-
- assign where match("ping*", service.name)
-}
-
-object ServiceGroup "http" {
- display_name = "HTTP Checks"
-
- assign where match("http*", service.check_command)
-}
-
-object ServiceGroup "disk" {
- display_name = "Disk Checks"
-
- assign where match("disk*", service.check_command)
-}
+++ /dev/null
-/*
- * Host definitions with object attributes
- * used for apply rules for Service, Notification,
- * Dependency and ScheduledDowntime objects.
- *
- * Tip: Use `icinga2 object list --type Host` to
- * list all host objects after running
- * configuration validation (`icinga2 daemon -C`).
- */
-
-/*
- * This is an example host based on your
- * local host's FQDN. Specify the NodeName
- * constant in `constants.conf` or use your
- * own description, e.g. "db-host-1".
- */
-
-object Host NodeName {
- /* Import the default host template defined in `templates.conf`. */
- import "generic-host"
-
- /* Specify the address attributes for checks e.g. `ssh` or `http`. */
- address = "127.0.0.1"
- address6 = "::1"
-
- /* Set custom variable `os` for hostgroup assignment in `groups.conf`. */
- vars.os = "Linux"
-
- /* Define http vhost attributes for service apply rules in `services.conf`. */
- vars.http_vhosts["http"] = {
- http_uri = "/"
- }
- /* Uncomment if you've sucessfully installed Icinga Web 2. */
- //vars.http_vhosts["Icinga Web 2"] = {
- // http_uri = "/icingaweb2"
- //}
-
- /* Define disks and attributes for service apply rules in `services.conf`. */
- vars.disks["disk"] = {
- /* No parameters. */
- disk_wfree = "8%"
- disk_cfree = "5%"
- }
- vars.disks["disk /"] = {
- disk_partitions = "/"
- disk_wfree = "10%"
- disk_cfree = "5%"
- }
-
- vars.disks["disk /home"] = {
- disk_partitions = "/home"
- disk_wfree = "6%"
- disk_cfree = "3%"
- }
-
- /* Define notification mail attributes for notification apply rules in `notifications.conf`. */
- vars.notification["mail"] = {
- /* The UserGroup `icingaadmins` is defined in `users.conf`. */
- groups = [ "icingaadmins" ]
- }
-}
-
+++ /dev/null
-/**
- * The example notification apply rules.
- *
- * Only applied if host/service objects have
- * the custom variable `notification` defined
- * and containing `mail` as key.
- *
- * Check `hosts.conf` for an example.
- */
-
-apply Notification "mail-icingaadmin" to Host {
- import "mail-host-notification"
- user_groups = host.vars.notification.mail.groups
- users = host.vars.notification.mail.users
-
- //interval = 2h
-
- //vars.notification_logtosyslog = true
-
- assign where host.vars.notification.mail
-}
-
-apply Notification "mail-icingaadmin" to Service {
- import "mail-service-notification"
- user_groups = host.vars.notification.mail.groups
- users = host.vars.notification.mail.users
-
- //interval = 2h
-
- //vars.notification_logtosyslog = true
-
- assign where host.vars.notification.mail
-}
+++ /dev/null
-/*
- * Service apply rules.
- *
- * The CheckCommand objects `ping4`, `ping6`, etc
- * are provided by the plugin check command templates.
- * Check the documentation for details.
- *
- * Tip: Use `icinga2 object list --type Service` to
- * list all service objects after running
- * configuration validation (`icinga2 daemon -C`).
- */
-
-/*
- * This is an example host based on your
- * local host's FQDN. Specify the NodeName
- * constant in `constants.conf` or use your
- * own description, e.g. "db-host-1".
- */
-
-/*
- * These are generic `ping4` and `ping6`
- * checks applied to all hosts having the
- * `address` resp. `address6` attribute
- * defined.
- */
-apply Service "ping4" {
- import "generic-service"
-
- check_command = "ping4"
-
- assign where host.address
-}
-
-apply Service "ping6" {
- import "generic-service"
-
- check_command = "ping6"
-
- assign where host.address6
-}
-
-/*
- * Apply the `ssh` service to all hosts
- * with the `address` attribute defined and
- * the custom variable `os` set to `Linux`.
- */
-apply Service "ssh" {
- import "generic-service"
-
- check_command = "ssh"
-
- assign where (host.address || host.address6) && host.vars.os == "Linux"
-}
-
-
-
-apply Service for (http_vhost => config in host.vars.http_vhosts) {
- import "generic-service"
-
- check_command = "http"
-
- vars += config
-}
-
-apply Service for (disk => config in host.vars.disks) {
- import "generic-service"
-
- check_command = "disk"
-
- vars += config
-}
-
-apply Service "icinga" {
- import "generic-service"
-
- check_command = "icinga"
-
- assign where host.name == NodeName
-}
-
-apply Service "load" {
- import "generic-service"
-
- check_command = "load"
-
- /* Used by the ScheduledDowntime apply rule in `downtimes.conf`. */
- vars.backup_downtime = "02:00-03:00"
-
- assign where host.name == NodeName
-}
-
-apply Service "procs" {
- import "generic-service"
-
- check_command = "procs"
-
- assign where host.name == NodeName
- vars.procs_warning = "350"
-}
-
-apply Service "swap" {
- import "generic-service"
-
- check_command = "swap"
-
- assign where host.name == NodeName
-}
-
-apply Service "users" {
- import "generic-service"
-
- check_command = "users"
-
- assign where host.name == NodeName
-}
-
-
-
+++ /dev/null
-/*
- * Generic template examples.
- */
-
-
-/**
- * Provides default settings for hosts. By convention
- * all hosts should import this template.
- *
- * The CheckCommand object `hostalive` is provided by
- * the plugin check command templates.
- * Check the documentation for details.
- */
-template Host "generic-host" {
- max_check_attempts = 3
- check_interval = 1m
- retry_interval = 30s
-
- check_command = "hostalive"
-}
-
-/**
- * Provides default settings for services. By convention
- * all services should import this template.
- */
-template Service "generic-service" {
- max_check_attempts = 5
- check_interval = 1m
- retry_interval = 30s
-}
-
-template Service "weekly-service-check" {
- max_check_attempts = 5
- check_interval = 168h
- retry_interval = 24h
-}
-
-template Service "daily-service-check" {
- max_check_attempts = 5
- check_interval = 24h
- retry_interval = 5m
-}
-
-/**
- * Provides default settings for users. By convention
- * all users should inherit from this template.
- */
-
-template User "generic-user" {
-
-}
-
-/**
- * Provides default settings for host notifications.
- * By convention all host notifications should import
- * this template.
- */
-template Notification "mail-host-notification" {
- command = "mail-host-notification"
-
- states = [ Up, Down ]
- types = [ Problem, Acknowledgement, Recovery, Custom,
- FlappingStart, FlappingEnd,
- DowntimeStart, DowntimeEnd, DowntimeRemoved ]
-
- vars += {
- // notification_icingaweb2url = "https://www.example.com/icingaweb2"
- // notification_from = "Icinga 2 Host Monitoring <icinga@example.com>"
- notification_logtosyslog = false
- }
-
- period = "24x7"
-}
-
-/**
- * Provides default settings for service notifications.
- * By convention all service notifications should import
- * this template.
- */
-template Notification "mail-service-notification" {
- command = "mail-service-notification"
-
- states = [ OK, Warning, Critical, Unknown ]
- types = [ Problem, Acknowledgement, Recovery, Custom,
- FlappingStart, FlappingEnd,
- DowntimeStart, DowntimeEnd, DowntimeRemoved ]
-
- vars += {
- // notification_icingaweb2url = "https://www.example.com/icingaweb2"
- // notification_from = "Icinga 2 Service Monitoring <icinga@example.com>"
- notification_logtosyslog = false
- }
-
- period = "24x7"
-}
+++ /dev/null
-/**
- * Sample timeperiods for Icinga 2.
- * Check the documentation for details.
- */
-
-object TimePeriod "24x7" {
- display_name = "Icinga 2 24x7 TimePeriod"
- ranges = {
- "monday" = "00:00-24:00"
- "tuesday" = "00:00-24:00"
- "wednesday" = "00:00-24:00"
- "thursday" = "00:00-24:00"
- "friday" = "00:00-24:00"
- "saturday" = "00:00-24:00"
- "sunday" = "00:00-24:00"
- }
-}
-
-object TimePeriod "9to5" {
- display_name = "Icinga 2 9to5 TimePeriod"
- ranges = {
- "monday" = "09:00-17:00"
- "tuesday" = "09:00-17:00"
- "wednesday" = "09:00-17:00"
- "thursday" = "09:00-17:00"
- "friday" = "09:00-17:00"
- }
-}
-
-object TimePeriod "never" {
- display_name = "Icinga 2 never TimePeriod"
- ranges = {
- }
-}
-
+++ /dev/null
-/**
- * The example user 'icingaadmin' and the example
- * group 'icingaadmins'.
- */
-
-object User "icingaadmin" {
- import "generic-user"
-
- display_name = "Icinga 2 Admin"
- groups = [ "icingaadmins" ]
-
- email = "root@localhost"
-}
-
-object UserGroup "icingaadmins" {
- display_name = "Icinga 2 Admin Group"
-}
/** Icinga 2 Config - proposed by Icinga Director */
-object Endpoint "vserver.hoellein.online" {}
-
-object Zone "vserver.hoellein.online" {
- parent = "mail.hoellein.online"
- endpoints = [ "vserver.hoellein.online" ]
+object Endpoint "mail.hoellein.online" {
+ host = "mail.hoellein.online"
}
object Zone "mail.hoellein.online" {
endpoints = [ "mail.hoellein.online" ]
}
-object Endpoint "mail.hoellein.online" {
- host = "mail.hoellein.online"
-}
+/*
+* object Zone "global-templates" {
+* global = true
+* }
+*/
-object Zone "director-global" {
- global = true
-}
+/*
+ * Defines a global zone for the Icinga Director.
+ * This is required to sync configuration commands,
+ * templates, apply rules, etc. to satellite and clients.
+ * All nodes require the same configuration and must
+ * have `accept_config` enabled in the `api` feature.
+ */
+
+/*
+* object Zone "director-global" {
+* global = true
+* }
+*/
+++ /dev/null
-/** Icinga 2 Config - proposed by Icinga Director */
-
-object Endpoint "vserver.hoellein.online" {}
-
-object Zone "vserver.hoellein.online" {
- parent = "mail.hoellein.online"
- endpoints = [ "vserver.hoellein.online" ]
-}
-
-object Zone "mail.hoellein.online" {
- endpoints = [ "mail.hoellein.online" ]
-}
-object Endpoint "mail.hoellein.online" {
- host = "mail.hoellein.online"
-}
-object Zone "director-global" {
- global = true
-}
--- /dev/null
+/usr/share/icingaweb2/modules/director
\ No newline at end of file
--- /dev/null
+/usr/share/icingaweb2/modules/migrate
\ No newline at end of file
--- /dev/null
+/usr/share/icingaweb2/modules/setup
\ No newline at end of file
--- /dev/null
+/usr/share/icingaweb2/modules/statusmap
\ No newline at end of file