Add Ironic monitoring

- define fluentd metrics on ironic nodes
- api and conductor processes monitoring
- alerts for api and conductor downtime
- add Grafana dashboard

Related-PROD: PROD-30621
Related-PROD: PROD-32734
Related-PROD: PROD-33028
Change-Id: I4f89bcfe9fddf3bd85bc87a871073c2c2b149084
diff --git a/metadata/service/api/cluster.yml b/metadata/service/api/cluster.yml
index 5e07a47..1ccc55e 100644
--- a/metadata/service/api/cluster.yml
+++ b/metadata/service/api/cluster.yml
@@ -1,10 +1,25 @@
 applications:
   - ironic
+classes:
+  - service.ironic.support
 parameters:
+  _param:
+    openstack_log_appender: false
+    openstack_fluentd_handler_enabled: false
+    openstack_ossyslog_handler_enabled: false
   ironic:
     api:
-      api_type: ${_param:ironic_api_type}
       enabled: true
+      logging:
+        log_appender: ${_param:openstack_log_appender}
+        log_handlers:
+          watchedfile:
+            enabled: true
+          fluentd:
+            enabled: ${_param:openstack_fluentd_handler_enabled}
+          ossyslog:
+            enabled: ${_param:openstack_ossyslog_handler_enabled}
+      api_type: ${_param:ironic_api_type}
       version: ${_param:ironic_version}
       bind:
         address: ${_param:cluster_local_address}
diff --git a/metadata/service/api/single.yml b/metadata/service/api/single.yml
index 3765d85..bde3356 100644
--- a/metadata/service/api/single.yml
+++ b/metadata/service/api/single.yml
@@ -1,10 +1,25 @@
 applications:
   - ironic
+classes:
+  - service.ironic.support
 parameters:
+  _param:
+    openstack_log_appender: false
+    openstack_fluentd_handler_enabled: false
+    openstack_ossyslog_handler_enabled: false
   ironic:
     api:
       api_type: 'mixed'
       enabled: true
+      logging:
+        log_appender: ${_param:openstack_log_appender}
+        log_handlers:
+          watchedfile:
+            enabled: true
+          fluentd:
+            enabled: ${_param:openstack_fluentd_handler_enabled}
+          ossyslog:
+            enabled: ${_param:openstack_ossyslog_handler_enabled}
       version: ${_param:ironic_version}
       bind:
         address: ${_param:single_address}
diff --git a/metadata/service/conductor/cluster.yml b/metadata/service/conductor/cluster.yml
index ea97f73..79b0bc3 100644
--- a/metadata/service/conductor/cluster.yml
+++ b/metadata/service/conductor/cluster.yml
@@ -1,11 +1,25 @@
 applications:
   - ironic
+classes:
+  - service.ironic.support
 parameters:
   _param:
     neutron_service_protocol: http
+    openstack_log_appender: false
+    openstack_fluentd_handler_enabled: false
+    openstack_ossyslog_handler_enabled: false
   ironic:
     conductor:
       enabled: true
+      logging:
+        log_appender: ${_param:openstack_log_appender}
+        log_handlers:
+          watchedfile:
+            enabled: true
+          fluentd:
+            enabled: ${_param:openstack_fluentd_handler_enabled}
+          ossyslog:
+            enabled: ${_param:openstack_ossyslog_handler_enabled}
       uefi:
         enabled: false
       version: ${_param:ironic_version}
diff --git a/metadata/service/conductor/single.yml b/metadata/service/conductor/single.yml
index 7174d44..d6f89d9 100644
--- a/metadata/service/conductor/single.yml
+++ b/metadata/service/conductor/single.yml
@@ -1,9 +1,24 @@
 applications:
   - ironic
+classes:
+  - service.ironic.support
 parameters:
+  _param:
+    openstack_log_appender: false
+    openstack_fluentd_handler_enabled: false
+    openstack_ossyslog_handler_enabled: false
   ironic:
     conductor:
       enabled: true
+      logging:
+        log_appender: ${_param:openstack_log_appender}
+        log_handlers:
+          watchedfile:
+            enabled: true
+          fluentd:
+            enabled: ${_param:openstack_fluentd_handler_enabled}
+          ossyslog:
+            enabled: ${_param:openstack_ossyslog_handler_enabled}
       uefi:
         enabled: false
       version: ${_param:ironic_version}
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
index f6446d5..1180747 100644
--- a/metadata/service/support.yml
+++ b/metadata/service/support.yml
@@ -5,7 +5,15 @@
         enabled: false
       heka:
         enabled: false
+      grafana:
+        enabled: true
       sensu:
         enabled: true
       sphinx:
         enabled: true
+      fluentd:
+        enabled: true
+      prometheus:
+        enabled: true
+      telegraf:
+        enabled: true