William-Yeh.elasticsearch
williamyeh.elasticsearch pour Ansible Galaxy
Résumé
Nom du rôle dans Ansible Galaxy : williamyeh.elasticsearch
Ce rôle Ansible a les fonctionnalités suivantes pour Elasticsearch :
- Installer Elasticsearch.
- Spécifier la taille de la mémoire et G1GC pour la JVM, si demandé.
- Installer des plugins (standards et tiers).
- Configuration minimale (*la véritable configuration doit être laissée aux fichiers de modèle de l'utilisateur ; voir la section Utilisation ci-dessous).
Variables de rôle
Variables obligatoires
Variables à définir dans le playbook de l'utilisateur :
elasticsearch_version
Variables optionnelles
Fichiers de configuration installables par l'utilisateur (via le système de modèles d'Ansible) :
# fichier de configuration (généralement elasticsearch.yml) à installer,
# par rapport à `playbook_dir`;
# le fichier sera copié tel quel
elasticsearch_conf_copy
# fichier de configuration (généralement elasticsearch.yml.j2) à installer,
# par rapport à `playbook_dir`;
# le fichier sera copié à travers le système de modèles d'Ansible
elasticsearch_conf_template
Plugins installables par l'utilisateur :
# un tableau de plugins (enregistrés sur elasticsearch.org) à installer.
# @see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
elasticsearch_plugins
# un tableau d'autres plugins à installer.
# chaque élément du tableau doit avoir au moins les clés suivantes :
# - "name", le nom du plugin sans la sous-chaîne ".jar".
# - "url", pointant vers l'URL du fichier jar.
elasticsearch_other_plugins
Paramètres par défaut configurables par l'utilisateur :
# utiliser G1GC pour la JVM ?
elasticsearch_use_g1gc: false
# taille de la mémoire JVM pour Elasticsearch
elasticsearch_heap_size
Gestionnaires
redémarrer elasticsearch
stop elasticsearch
Utilisation
Étape 1 : ajouter le rôle
Ajoutez le nom du rôle williamyeh.elasticsearch
à votre fichier de playbook.
Étape 2 : ajouter des variables
Définissez les variables dans votre fichier de playbook.
Exemple simple :
---
# fichier : simple-playbook.yml
- hosts: all
roles:
- williamyeh.oracle-java
- williamyeh.elasticsearch
vars:
elasticsearch_version: 1.6.0
Étape 3 : ajuster la mémoire de la JVM, si nécessaire
---
- hosts: all
roles:
- williamyeh.oracle-java
- williamyeh.elasticsearch
vars:
elasticsearch_version: 1.4.2
elasticsearch_use_g1gc: true
elasticsearch_heap_size: 6g
Étape 4 : copier le fichier de configuration de l'utilisateur, installer des plugins, etc., si nécessaire
Exemple plus pratique :
---
# fichier : complex-playbook.yml
- hosts: all
roles:
- williamyeh.oracle-java
- williamyeh.elasticsearch
vars:
elasticsearch_version: 1.4.2
elasticsearch_plugins:
- elasticsearch/marvel/latest
- lmenezes/elasticsearch-kopf
elasticsearch_other_plugins:
- name: analysis-ik
url: https://github.com/medcl/elasticsearch-rtf/raw/master/plugins/analysis-ik/elasticsearch-analysis-ik-1.2.6.jar
memo: https://github.com/medcl/elasticsearch-analysis-ik
#-- copier tel quel
elasticsearch_conf_copy: "files/elasticsearch.yml"
#-- copier via le système de modèles d'Ansible
#elasticsearch_conf_template: "templates/elasticsearch.yml.j2"
Dépendances
Vos hôtes cibles doivent avoir JDK préinstallé. Vous pouvez utiliser williamyeh.oracle-java ou d'autres rôles existants dans Ansible Galaxy.
Licence
Sous licence MIT. Voir le fichier LICENSE pour plus de détails.
Historique
Aucun.
ansible-galaxy install William-Yeh.elasticsearch