Documentation setup
diff --git a/metadata/service/server/cluster.yml b/metadata/service/server/cluster.yml
index c7c9ec2..ef3ba8a 100644
--- a/metadata/service/server/cluster.yml
+++ b/metadata/service/server/cluster.yml
@@ -1,5 +1,7 @@
applications:
- rabbitmq
+classes:
+- service.rabbitmq.support
parameters:
rabbitmq:
server:
diff --git a/metadata/service/server/local.yml b/metadata/service/server/local.yml
index 36f8c27..6e38732 100644
--- a/metadata/service/server/local.yml
+++ b/metadata/service/server/local.yml
@@ -1,5 +1,7 @@
applications:
- rabbitmq
+classes:
+- service.rabbitmq.support
parameters:
_param:
rabbitmq_admin_user: admin
diff --git a/metadata/service/server/single.yml b/metadata/service/server/single.yml
index ce6a9d7..44cca88 100644
--- a/metadata/service/server/single.yml
+++ b/metadata/service/server/single.yml
@@ -1,5 +1,7 @@
applications:
- rabbitmq
+classes:
+- service.rabbitmq.support
parameters:
_param:
rabbitmq_admin_user: admin
diff --git a/metadata/service/support.yml b/metadata/service/support.yml
new file mode 100644
index 0000000..68d216d
--- /dev/null
+++ b/metadata/service/support.yml
@@ -0,0 +1,11 @@
+parameters:
+ rabbitmq:
+ _support:
+ collectd:
+ enabled: false
+ heka:
+ enabled: false
+ sensu:
+ enabled: true
+ sphinx:
+ enabled: true
diff --git a/rabbitmq/meta/collectd.yml b/rabbitmq/meta/collectd.yml
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/rabbitmq/meta/collectd.yml
diff --git a/rabbitmq/meta/heka.yml b/rabbitmq/meta/heka.yml
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/rabbitmq/meta/heka.yml
diff --git a/rabbitmq/meta/sensu.yml b/rabbitmq/meta/sensu.yml
new file mode 100644
index 0000000..125bff1
--- /dev/null
+++ b/rabbitmq/meta/sensu.yml
@@ -0,0 +1,157 @@
+{%- from "rabbitmq/map.jinja" import server with context -%}
+{%- from "linux/map.jinja" import network with context -%}
+{%- if server.bind.address == '0.0.0.0' %}
+{% if grains.ipv4[0] == '127.0.0.1' %}{% set address = grains.ipv4[1] %}{% else %}{% set address = grains.ipv4[0] %}{% endif %}
+{%- else %}
+{%- set address = server.bind.address %}
+{%- endif %}
+check:
+ local_rabbitmq_server_proc:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_procs -C beam.smp -u rabbitmq -c 1:2"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - local-rabbitmq-server
+{%- if server.bind.address == '127.0.0.1' %}
+ local_rabbitmq_server_tcp_{{ network.fqdn }}:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_tcp -H 127.0.0.1 -p 5672"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - {{ network.fqdn|replace('.', '-') }}
+{%- else %}
+ remote_rabbitmq_server_tcp_{{ network.fqdn }}:
+ command: "PATH=$PATH:/usr/lib64/nagios/plugins:/usr/lib/nagios/plugins check_tcp -H {% if grains.ipv4[0] == '127.0.0.1' %}{{ grains.ipv4[1] }}{% else %}{{ grains.ipv4[0] }}{% endif %} -p 5672"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+{%- endif %}
+{#
+remote_rabbitmq_alive_{{ address }}:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-amqp-alive.rb -w {{ address }}"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_mistral_alive:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-amqp-alive.rb -w {{ address }} -v %2Fmistral -u mistral --password {{ server.admin.password }}"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_murano_alive:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-amqp-alive.rb -w {{ address }} -v %2Fmurano -u murano --password {{ server.admin.password }}"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_openstack_alive:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-amqp-alive.rb -w {{ address }} -v %2Fopenstack -u {{ server.admin.name }} --password {{ server.admin.password }}"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_compute:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter compute"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_scheduler:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter scheduler"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_engine:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter engine"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_console:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter console"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_cinder_volume:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter cinder-volume"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_conductor:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter conductor"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_overview_metrics:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-overview-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }}"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_contrail_device_manager:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --filter device_manager"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_contrail_vnc_config:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --filter vnc_config"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_metrics_openstack_reply:
+ command: "PATH=$PATH:/etc/sensu/plugins rabbitmq-queue-metrics.rb --host {{ address }} --user {{ server.admin.name }} --password {{ server.admin.password }} --filter reply"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_scheduler:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue scheduler"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_engine:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue engine"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_console:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue console"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_cinder_volume:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue cinder-volume"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_cinder_scheduler:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue cinder-scheduler"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_conductor:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue conductor"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+remote_rabbitmq_queue_compute:
+ command: "PATH=$PATH:/etc/sensu/plugins check-rabbitmq-queue.rb --host {{ address }} --password {{ server.admin.password }} --user {{ server.admin.name }} -w 50 -c 100 --queue compute"
+ interval: 60
+ occurrences: 1
+ subscribers:
+ - remote-network
+#}
\ No newline at end of file
diff --git a/rabbitmq/meta/sphinx.yml b/rabbitmq/meta/sphinx.yml
new file mode 100644
index 0000000..540ee42
--- /dev/null
+++ b/rabbitmq/meta/sphinx.yml
@@ -0,0 +1,7 @@
+doc:
+ name: rabbitmq
+ description: RabbitMQ is a complete and highly reliable enterprise messaging system based on the emerging AMQP standard.
+ role:
+ server:
+ name: server
+ param: {}