From f6378303ca0572ef5a53adfdaaa35838689f95f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Bompard?= Date: Tue, 6 Aug 2019 17:36:43 +0200 Subject: [PATCH] Fix the collectd rabbitmq plugin and data collection MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Aurélien Bompard --- playbooks/groups/rabbitmq.yml | 1 + .../collectd/base/templates/collectd.conf.j2 | 4 +++- roles/collectd/rabbitmq/tasks/main.yml | 24 +++++++++++++++++++ .../templates/rabbitmq.collectd.conf.j2 | 14 +++++++++++ roles/collectd/server/tasks/main.yml | 3 +++ 5 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 roles/collectd/rabbitmq/tasks/main.yml create mode 100644 roles/collectd/rabbitmq/templates/rabbitmq.collectd.conf.j2 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