main.yml 1.51 KB
---
# tasks file for beat---

- include_tasks: os-RedHat.yml
  when: ansible_os_family == "RedHat"

- include_tasks: os-Debian.yml
  when: ansible_os_family == "Debian"

- name: Configure {{ beat_name }}.yml
  template:
    src: templates/{{ beat_name }}.yml.j2
    dest: /etc/{{ beat_name }}/{{ beat_name }}.yml

- name: Test {{ beat_name }} connection
  shell: '{{ beat_name }} test output'
  register: result
  changed_when: False

- name: Test connection output
  debug:
    msg: "{{ result.stdout }}"

- name: Reload systemd daemons
  systemd:
    daemon_reload: yes
  when: ansible_distribution_major_version >= "7"

- name: Verify if system module of {{ beat_name }} is enabled
  shell: '{{ beat_name }} modules list | grep -i system'
  ignore_errors: yes
  #when: modules == 'yes'
  when: (  beat_name  == "metricbeat") or 
        (  beat_name  == "filebeat")
  register: verify_system_result
  changed_when: False

- name: Configure system module of {{ beat_name }}
  shell: '{{ beat_name }} modules enable system'
  #when: modules == 'yes'
  when: 
    -  (  beat_name  == "metricbeat") or (  beat_name  == "filebeat")
    -  "verify_system_result.rc != 0" 
  register: result
  changed_when: "'Module system is already enabled' not in result.stdout"

- name: Run {{ beat_name }} setup and dashboard config on kibana
  shell: '{{ beat_name }} setup'
  register: result
  changed_when: "result.rc != 0"
  ignore_errors: True

- name: Start {{ beat_name }} service
  service:
    name: '{{ beat_name }}'
    state: started
    enabled: yes