Moved support scripts around
diff --git a/metadata/service/client/init.yml b/metadata/service/client/init.yml
index 4a7aa4e..23b701b 100644
--- a/metadata/service/client/init.yml
+++ b/metadata/service/client/init.yml
@@ -1,5 +1,7 @@
applications:
- sensu
+classes:
+- service.sensu.support
parameters:
sensu:
client:
diff --git a/metadata/service/server/single.yml b/metadata/service/server/single.yml
index dcc3134..b29a29a 100644
--- a/metadata/service/server/single.yml
+++ b/metadata/service/server/single.yml
@@ -1,5 +1,7 @@
applications:
- sensu
+classes:
+- service.sensu.support
parameters:
sensu:
server:
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
new file mode 100644
index 0000000..3c8cdf1
--- /dev/null
+++ b/metadata/service/support.yml
@@ -0,0 +1,11 @@
+parameters:
+ sensu:
+ _support:
+ collectd:
+ enabled: false
+ heka:
+ enabled: false
+ sensu:
+ enabled: true
+ sphinx:
+ enabled: false
diff --git a/sensu/client.sls b/sensu/client.sls
index 25dbe33..5731133 100644
--- a/sensu/client.sls
+++ b/sensu/client.sls
@@ -52,14 +52,22 @@
{%- endif %}
{%- endfor %}
-sensu_client_check_grains:
+sensu_client_checks_grains_dir:
+ file.directory:
+ - name: /etc/salt/grains.d
+ - mode: 700
+ - makedirs: true
+ - user: root
+
+sensu_client_checks_grains:
file.managed:
- - name: /etc/salt/grains
- - source: salt://sensu/files/checks.grain
+ - name: /etc/salt/grains.d/sensu
+ - source: salt://sensu/files/sensu.grain
- template: jinja
- mode: 600
- require:
- pkg: sensu_client_packages
+ - file: sensu_client_checks_grains_dir
/etc/sensu/conf.d/rabbitmq.json:
file.managed:
diff --git a/sensu/files/checks.grain b/sensu/files/sensu.grain
similarity index 100%
rename from sensu/files/checks.grain
rename to sensu/files/sensu.grain
diff --git a/sensu/meta/sensu.yml b/sensu/meta/sensu.yml
new file mode 100644
index 0000000..fd79f95
--- /dev/null
+++ b/sensu/meta/sensu.yml
@@ -0,0 +1,45 @@
+{%- from "nginx/map.jinja" import server with context -%}
+local_sensu_server_proc:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_procs -C sensu-server -u sensu -c 1:1"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - local-sensu-server
+local_sensu_api_proc:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_procs -C sensu-api -u sensu -c 1:1"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - local-sensu-server
+local_sensu_client_proc:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_procs -C sensu-client -u sensu -c 1:1"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - local-sensu-client
+local_sensu_dashboard_proc:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_procs -C uchiwa -u uchiwa -c 1:1"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - local-sensu-dashboard
+{%- if client.get('plugin', {}).network_monitoring is defined %}
+{%- for device_name, device in client.network_device.iteritems() %}
+{%- for interface_name, interface in device.get('interface', {}).iteritems() %}
+remote_{{ device_name }}_{{ interface_name|replace("/", "_") }}_interface_up:
+ command: "/etc/sensu/plugins/check_snmp_int.pl -H {{ device.management.address }} -C {{ device.community }} -n ^{{ interface_name }}$"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+{%- for subinterface_name, subinterface in interface.get('subinterface', {}).iteritems() %}
+remote_{{ device_name }}_{{ subinterface_name|replace("/", "_")|replace('.', '_') }}_interface_up:
+ command: "/etc/sensu/plugins/check_snmp_int.pl -H {{ device.management.address }} -C {{ device.community }} -n ^{{ subinterface_name }}$"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+{%- endfor %}
+{%- endfor %}
+{%- endfor %}
+{%- endif %}