5c10c12a37
Heartbeat has been enabled which will allow us to check the uptime of hosts and services. Stack updates have been made to correct a couple templating issues and reduce template sizes by using includes where we have common config. Change-Id: I47e32ac4b4ce8ca3ea572d8384660011af7cde6a Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
59 lines
1.5 KiB
YAML
59 lines
1.5 KiB
YAML
---
|
|
- name: Install Heartbeat
|
|
hosts: utility_all
|
|
become: true
|
|
vars:
|
|
haproxy_ssl: false
|
|
|
|
vars_files:
|
|
- vars/variables.yml
|
|
|
|
pre_tasks:
|
|
- include_tasks: common_task_install_elk_repo.yml
|
|
|
|
- name: Ensure heartbeat is installed
|
|
apt:
|
|
name: "heartbeat-elastic"
|
|
state: present
|
|
update_cache: true
|
|
|
|
post_tasks:
|
|
- name: Drop heartbeat conf file
|
|
template:
|
|
src: templates/heartbeat.yml.j2
|
|
dest: /etc/heartbeat/heartbeat.yml
|
|
|
|
- name: Enable and restart heartbeat
|
|
systemd:
|
|
name: "heartbeat-elastic"
|
|
enabled: true
|
|
state: restarted
|
|
|
|
|
|
- name: Load Heartbeat Dashboards
|
|
hosts: utility_all[0]
|
|
become: true
|
|
vars_files:
|
|
- vars/variables.yml
|
|
tasks:
|
|
- name: Load templates
|
|
shell: >-
|
|
{% set IP_ARR=[] %}
|
|
{% for host in groups['elastic-logstash'] %}
|
|
{% if IP_ARR.insert(loop.index,hostvars[host]['ansible_host']) %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% set elasticsearch_hosts = [IP_ARR | map('regex_replace', '$', ':' ~ elastic_port|string()) | map('regex_replace', '$', '"') | map('regex_replace', '^', '"') | list | join(',' )] %}
|
|
heartbeat setup
|
|
{{ item }}
|
|
-E 'output.logstash.enabled=false'
|
|
-E 'output.elasticsearch.hosts={{ elasticsearch_hosts }}'
|
|
-e -v
|
|
with_items:
|
|
- "--template"
|
|
- "--dashboards"
|
|
register: templates
|
|
until: templates | success
|
|
retries: 3
|
|
delay: 2
|