initial commit
diff --git a/system/nagios/server/cluster.yml b/system/nagios/server/cluster.yml
new file mode 100644
index 0000000..932afbf
--- /dev/null
+++ b/system/nagios/server/cluster.yml
@@ -0,0 +1,18 @@
+classes:
+- service.nagios.server.cluster
+- system.nagios.server
+parameters:
+ _param:
+ nagios_ui_bind: ${_param:stacklight_monitor_address}
+ nagios_status_bind: ${_param:stacklight_monitor_address}
+ keepalived:
+ cluster:
+ instance:
+ stacklight_monitor_vip:
+ notify_action:
+ master:
+ - service nagios3 start
+ backup:
+ - service nagios3 stop
+ fault:
+ - service nagios3 stop
diff --git a/system/nagios/server/init.yml b/system/nagios/server/init.yml
new file mode 100644
index 0000000..49fae4d
--- /dev/null
+++ b/system/nagios/server/init.yml
@@ -0,0 +1,115 @@
+parameters:
+ _param:
+ nagios_notification_email: root@localhost
+ nagios_host_dimension_key: nagios_host
+ nagios_default_host_alarm_clusters: 00-clusters
+ nagios :
+ server:
+ enabled: true
+ check_external_commands: 1
+ command_check_interval: 15s
+ log_external_commands: 1
+ log_passive_checks: 1
+ log_rotation_method: d
+ accept_passive_service_checks: 1
+ accept_passive_host_checks: 0
+ enable_notifications: 1
+ execute_service_checks: 1
+ execute_host_checks: 1
+ process_performance_data: 0
+ check_service_freshness: 1
+ check_host_freshness: 0
+ purge_distribution_config: true
+ ui:
+ enabled: true
+ port: ${_param:nagios_ui_port}
+ basic_auth:
+ username: ${_param:nagios_username}
+ password: ${_param:nagios_password}
+ wsgi:
+ port: ${_param:nagios_status_port}
+ notification:
+ smtp:
+ host: ${_param:nagios_notification_smtp_server}
+ from: ${_param:nagios_notification_from}
+ dynamic:
+ enabled: true
+ grain_hostname: 'host'
+ hostgroups:
+ - target: '*'
+ name: All
+ expr_from: glob
+ - target: 'G@roles:nova.controller'
+ expr_from: compound # the default
+ name: Nova Controller
+ - target: 'G@roles:nova.compute'
+ name: Nova Compute
+ - target: 'G@roles:keystone.server'
+ name: Keystone server
+ - target: 'G@roles:influxdb.server'
+ name: InfluxDB server
+ - target: 'G@roles:elasticsearch.server'
+ name: Elasticsearchserver
+ hosts:
+ - target: 'G@services:openssh'
+ contact_groups: Operator
+ use: generic_host_tpl
+ interface:
+ - eth0
+ - ens3
+ - p4p1.602
+ services:
+ - target: 'G@roles:openssh.server'
+ name: SSH
+ use: generic_service_tpl
+ check_command: check_ssh
+ stacklight_alarms:
+ enabled: true
+ service_template: generic_service_tpl
+ stacklight_alarm_clusters:
+ enabled: true
+ service_template: generic_service_tpl
+ host_template: generic_host_tpl
+ dimension_key: ${_param:nagios_host_dimension_key}
+ default_host: ${_param:nagios_default_host_alarm_clusters}
+ objects:
+ contactgroups:
+ operator:
+ contactgroup_name: Operator
+ contacts:
+ operator:
+ alias: 'root_at_localhost'
+ contact_name: Operator
+ contactgroups:
+ - Operator
+ email: ${_param:nagios_notification_email}
+ host_notifications_enabled: 1
+ host_notification_period: 24x7
+ host_notification_options: 'd,r'
+ host_notification_commands: notify-host-by-smtp
+ service_notifications_enabled: 1
+ service_notification_period: 24x7
+ service_notification_options: 'w,u,c,r'
+ service_notification_commands: notify-service-by-smtp
+ hosts:
+ generic_host_tpl:
+ notifications_enabled: 1
+ event_handler_enabled: 1
+ flap_detection_enabled: 1
+ failure_prediction_enabled: 1
+ process_perf_data: 0
+ retain_status_information: 1
+ retain_nonstatus_information: 1
+ max_check_attempts: 10
+ notification_interval: 0
+ notification_period: 24x7
+ notification_options: d,u,r
+ contact_groups: Operator
+ register: 0
+ services:
+ generic_service_tpl:
+ register: 0
+ contact_groups: Operator
+ process_perf_data: 0
+ max_check_attempts: 3
+
diff --git a/system/nagios/server/single.yml b/system/nagios/server/single.yml
new file mode 100644
index 0000000..d9435d8
--- /dev/null
+++ b/system/nagios/server/single.yml
@@ -0,0 +1,3 @@
+classes:
+- service.nagios.server.single
+- system.nagios.server