nkakouros.elasticsearch
ansible-role-elasticsearch
Installe et configure Elasticsearch.
Description
Ce rôle permet de manière configurable :
- d'installer Elasticsearch
- de configurer Elasticsearch
- de configurer HTTP et le transport TLS
- de définir des mots de passe pour les utilisateurs intégrés
- de synchroniser toutes ces informations avec le contrôleur Ansible pour une utilisation ultérieure
La configuration se fait via un dictionnaire yaml (elastic_config
), donc chaque configuration par défaut effectuée par ce rôle peut être remplacée en définissant les clés appropriées dans elastic_config
.
Exigences
Aucune
Dépendances
- Vous aurez besoin d'avoir Java installé sur le système cible.
- Vous devez avoir généré des certificats à utiliser par Elasticsearch (si vous devez activer des communications chiffrées).
Vous pouvez utiliser d'autres rôles Ansible pour effectuer ces tâches, comme geerlingguy.java et nkakouros.easyrsa. Consultez l'exemple de playbook.
Variables de rôle
Consultez le fichier defaults/main.yml pour les variables de ce rôle et leur documentation.
Par défaut, le rôle installera simplement Elasticsearch et démarrera Elasticsearch en tant que nœud maître, de données et d'ingestion.
Comparaison avec d'autres rôles
Avant de créer ce rôle, j'ai essayé d'utiliser pour mes projets les deux rôles suivants :
- https://github.com/geerlingguy/ansible-role-elasticsearch
- https://github.com/elastic/ansible-elasticsearch
Cependant, ils ne répondaient pas à mes besoins. Le premier est trop simple et les demandes de tirage (PR) pour ajouter des fonctionnalités resteront probablement bloquées pendant des mois, voire des années. Le deuxième est trop encombré pour moi avec un code Ansible ancien et difficile à lire, beaucoup de code superflu des versions précédentes d'Elasticsearch et une documentation confuse.
Exemple de Playbook
Voici un playbook minimal pour installer Elasticsearch le plus rapidement possible, sans certificats, à des fins de développement.
- hosts: elastic-server
roles:
- nkakouros.elasticsearch
Pour un exemple complet sur la façon de configurer et d'installer une installation ELK complète (à partir de laquelle vous pouvez choisir ce qui est pertinent pour votre cas d'utilisation), consultez le dossier molecule/default/. Dans ce dossier, le fichier prepare.yml contient un playbook qui installera les dépendances dont ce rôle aura besoin. Le fichier playbook.yml contiendra un exemple complet et complexe sur comment utiliser ce rôle spécifiquement.
Licence
GPLv3
Informations sur l'auteur
Nikolaos Kakouros (nkak@kth.se)
ansible-galaxy install nkakouros.elasticsearch