diff --git a/playbooks/groups/rabbitmq.yml b/playbooks/groups/rabbitmq.yml index fac47494d3..517c15a59a 100644 --- a/playbooks/groups/rabbitmq.yml +++ b/playbooks/groups/rabbitmq.yml @@ -20,6 +20,7 @@ - hosts - fas_client - collectd/base + - collectd/rabbitmq - rsyncd - sudo - rabbitmq_cluster diff --git a/roles/collectd/base/templates/collectd.conf.j2 b/roles/collectd/base/templates/collectd.conf.j2 index 87ab32dbd4..93739cef81 100644 --- a/roles/collectd/base/templates/collectd.conf.j2 +++ b/roles/collectd/base/templates/collectd.conf.j2 @@ -9,10 +9,12 @@ FQDNLookup true #BaseDir "/usr/var/lib/collectd" #PIDFile "/usr/var/run/collectd.pid" #PluginDir "/usr/lib/collectd" -#TypesDB "/usr/lib/collectd/types.db" #Interval 10 #ReadThreads 5 +# This is the default but it needs to be defined so we can add more DB files later. +TypesDB "/usr/share/collectd/types.db" + LoadPlugin syslog diff --git a/roles/collectd/rabbitmq/tasks/main.yml b/roles/collectd/rabbitmq/tasks/main.yml new file mode 100644 index 0000000000..ace2adecb8 --- /dev/null +++ b/roles/collectd/rabbitmq/tasks/main.yml @@ -0,0 +1,24 @@ +- name: install collectd-rabbitmq + package: + state: present + name: python2-collectd-rabbitmq + tags: + - packages + - collectd + +- name: install collectd rabbitmq config + template: + src: "rabbitmq-collectd.conf.j2" + dest: "/etc/collectd.d/rabbitmq.conf" + owner: root + group: root + mode: 0640 + tags: + - collectd + - config + notify: restart collectd + +- name: Let collectd talk to the RabbitMQ management interface + seboolean: name=collectd_tcp_network_connect state=yes persistent=yes + tags: + - collectd \ No newline at end of file diff --git a/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2 b/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2 new file mode 100644 index 0000000000..52d0246d71 --- /dev/null +++ b/roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2 @@ -0,0 +1,14 @@ +LoadPlugin python + + LogTraces true + Interactive false + Import "collectd_rabbitmq.collectd_plugin" + + + Username "nagios-monitoring" + Password "{{ (env == 'production')|ternary(rabbitmq_monitoring_password_production, rabbitmq_monitoring_password_staging) }}" + Realm "RabbitMQ Management" + Host "localhost" + Port "15672" + + \ No newline at end of file diff --git a/roles/collectd/server/tasks/main.yml b/roles/collectd/server/tasks/main.yml index 1cebff2da9..e8ad9b125b 100644 --- a/roles/collectd/server/tasks/main.yml +++ b/roles/collectd/server/tasks/main.yml @@ -8,6 +8,9 @@ - collectd-rrdtool - collectd-ping - collectd-web + - collectd-rabbitmq-data + notify: + - restart collectd tags: - config - collectd/server