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