2025-12-23 19:17:16 +08:00

106 lines
2.2 KiB
YAML

---
- name: Update APT Cache
apt:
update_cache: yes
ignore_errors: yes
- name: Install Filebeat Dependencies
apt:
state: present
pkg:
- apt-transport-https
- ca-certificates
- curl
- software-properties-common
register: result
until: result.failed == false
retries: 5
delay: 120
- name: Add Elasticsearch Repository Key
apt_key:
url: https://artifacts.elastic.co/GPG-KEY-elasticsearch
state: present
- name: Add Elasticsearch Repository
apt_repository:
repo: deb https://artifacts.elastic.co/packages/7.x/apt stable main
state: present
- name: Remove new Elasticsearch Repository
apt_repository:
repo: deb https://artifacts.elastic.co/packages/8.x/apt stable main
state: absent
update_cache: true
- name: Uninstall newer version of Filebeat
apt:
name: filebeat
state: absent
register: result
until: result.failed == false
retries: 5
delay: 120
- name: Install Filebeat
apt:
name: filebeat
state: latest
register: result
until: result.failed == false
retries: 5
delay: 120
- name: Setup Filebeat
template:
src: filebeat.yml
dest: /etc/filebeat/filebeat.yml
- name: Create ProxySQL Module Directory
file:
path: /usr/share/filebeat/module/proxysql
state: directory
owner: root
- name: Setup ProxySQL Module
synchronize:
src: 'roles/filebeat/module/proxysql/'
dest: /usr/share/filebeat/module/proxysql/
recursive: yes
archive: false
use_ssh_args: yes
- name: Setup Filebeat Modules
template:
src: 'modules.d/{{ item }}.yml'
dest: '/etc/filebeat/modules.d/{{ item }}.yml'
loop:
- 'mysql'
- 'system'
- 'nginx'
- 'proxysql'
- name: Enable Filebeat Modules
command: filebeat modules enable nginx mysql system proxysql
- name: Create Filebeat Modules Directory
file:
dest: /etc/filebeat/inputs.d
state: directory
- name: Setup Filebeat Inputs
template:
src: 'inputs.d/{{ item }}.yml'
dest: '/etc/filebeat/inputs.d/{{ item }}.yml'
loop:
- 'all'
- 'containers'
- 'monitor'
- name: Restart Filebeat Daemon
systemd:
name: filebeat
daemon_reload: true
enabled: yes
state: restarted