javiergayala.filebeat
Rôle Ansible : Filebeat
Installe Filebeat sur RedHat/CentOS.
Ce rôle installe et configure la dernière version de Filebeat (6.x) depuis le Repo officiel d'Elastic.co.
Exigences
Aucune.
Variables du rôle
Valeurs par défaut (voir defaults/main.yml
):
es_major_version: "6.x"
La version de Filebeat doit toujours correspondre à la version d'Elasticsearch dans votre pile ELK. Ceci représente la version majeure d'Elasticsearch.
es_use_repository: undefined
Cette valeur n'est définie nulle part dans le rôle. Je l'ai documentée ici car c'est une valeur généralement définie dans le rôle elastic.elasticsearch par Elastic.co. Si vous installez ce rôle Filebeat en même temps que le rôle elastic.elasticsearch
, alors ce dernier installera généralement le dépôt pour vous. Permettre à ce rôle Filebeat d'installer également le dépôt modifiera légèrement le fichier du dépôt, ce qui entraînera la non-idempotence du rôle. Cependant, si vous demandez au rôle elastic.elasticsearch
de NE PAS installer le dépôt, alors ce rôle Filebeat installera le dépôt pour accéder au logiciel.
es_version: "6.2.3"
Le numéro de version complet d'Elasticsearch/Filebeat.
filebeat_create_config: "true"
Si oui ou non permettre au rôle de créer le fichier de configuration de Filebeat.
filebeat_enabled: "yes"
Ceci définit si le service Filebeat doit être activé au démarrage.
filebeat_repo_key: 'https://artifacts.elastic.co/GPG-KEY-elasticsearch'
L'URL de la clé PGP utilisée pour le dépôt Elastic.co.
filebeat_run_state: started
Ceci définit si le service Filebeat doit être démarré.
filebeat_config_content:
filebeat.prospectors:
- type: log
enabled: "true"
paths:
- "/var/log/*.log"
filebeat.config.modules:
reload.enabled: "false"
path: "{{ filebeat_modules_dir }}/*.yml"
setup.template.settings:
index.number_of_shards: 3
output.elasticsearch:
hosts:
- "localhost:9200"
La variable filebeat_config_content
est un dictionnaire qui contient la configuration de base de Filebeat. La valeur de cette variable sera utilisée pour peupler le fichier de configuration filebeat.yml
. Les clés typiques que vous souhaiterez définir sont :
filebeat.prospectors
filebeat.config.modules
setup.template.settings
- La sortie (c'est-à-dire
output.elasticsearch
ououtput.logstash
)
filebeat_module_config: {}
La variable filebeat_module_config
est un dictionnaire similaire à filebeat_config_content
, mais elle est utilisée pour créer les fichiers de configuration pour les modules de Filebeat. La clé du dictionnaire est le nom du module que vous souhaitez activer, et le contenu de cette clé est lui-même un dictionnaire contenant la configuration pour le module.
Par exemple :
filebeat_module_config:
system:
syslog:
enabled: "true"
auth:
enabled: "true"
Valeurs spécifiques à RedHat (voir vars/filebeat-RedHat.yml
)
filebeat_home: /usr/share/filebeat
Le chemin où Filebeat est installé.
filebeat_bin_dir: "{{ filebeat_home }}/bin"
Le chemin où le binaire de Filebeat est installé.
filebeat_config_dir: "/etc/filebeat"
Le chemin vers le répertoire de configuration de Filebeat.
filebeat_config_file: "{{ filebeat_config_dir }}/filebeat.yml"
Le chemin complet vers le fichier de configuration de Filebeat.
filebeat_modules_dir: "{{ filebeat_config_dir }}/modules.d"
Le chemin où la configuration des modules de Filebeat est stockée.
Dépendances
Aucune.
Exemple de Playbook
- hosts: servers
roles:
- role: javiergayala.filebeat
filebeat_module_config:
system:
syslog:
enabled: "true"
auth:
enabled: "true"
Licence
BSD
Informations sur l'auteur
Ce rôle a été créé en 2018 par Javier Ayala.
Filebeat installation for RedHat Family systems.
ansible-galaxy install javiergayala.filebeat