William-Yeh.elasticsearch
williamyeh.elasticsearch para Ansible Galaxy
============
Resumen
Nombre del rol en Ansible Galaxy: williamyeh.elasticsearch
Este rol de Ansible tiene las siguientes características para Elasticsearch:
- Instalar Elasticsearch.
- Especificar el tamaño de la memoria (heap size) y G1GC para JVM, si se solicita.
- Instalar plugins (estándar y de terceros).
- Configuración básica (*la configuración real debe dejarse a los archivos plantilla del usuario; vea la sección de Uso a continuación).
Variables del Rol
Variables Obligatorias
Variables que deben definirse en el playbook del usuario:
elasticsearch_version
Variables Opcionales
Archivos de configuración instalables por el usuario (a través del sistema de plantillas de Ansible):
# archivo de configuración (generalmente elasticsearch.yml) a instalar,
# relativo a `playbook_dir`;
# el archivo se copiará tal cual
elasticsearch_conf_copy
# archivo de configuración (generalmente elasticsearch.yml.j2) a instalar,
# relativo a `playbook_dir`;
# el archivo se copiará a través del sistema de plantillas de Ansible
elasticsearch_conf_template
Plugins instalables por el usuario:
# una lista de plugins (registrados en elasticsearch.org) a instalar.
# @ver http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
elasticsearch_plugins
# una lista de otros plugins a instalar.
# cada elemento de la lista debe tener al menos las siguientes claves:
# - "name", el nombre del plugin sin la subcadena ".jar".
# - "url", apuntando a la URL del archivo jar.
elasticsearch_other_plugins
Valores predeterminados configurables por el usuario:
# ¿usar G1GC para JVM?
elasticsearch_use_g1gc: false
# tamaño de la memoria (heap size) para Elasticsearch
elasticsearch_heap_size
Manejadores
reiniciar elasticsearch
detener elasticsearch
Uso
Paso 1: agregar rol
Agrega el nombre del rol williamyeh.elasticsearch
a tu archivo de playbook.
Paso 2: agregar variables
Establece las variables en tu archivo de playbook.
Ejemplo simple:
---
# archivo: simple-playbook.yml
- hosts: all
roles:
- williamyeh.oracle-java
- williamyeh.elasticsearch
vars:
elasticsearch_version: 1.6.0
Paso 3: ajustar la memoria de la JVM, si es necesario
---
- hosts: all
roles:
- williamyeh.oracle-java
- williamyeh.elasticsearch
vars:
elasticsearch_version: 1.4.2
elasticsearch_use_g1gc: true
elasticsearch_heap_size: 6g
Paso 4: copiar archivo de configuración del usuario, instalar plugins, etc., si es necesario
Ejemplo más práctico:
---
# archivo: 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
#-- copiar tal cual
elasticsearch_conf_copy: "files/elasticsearch.yml"
#-- copiar a través del sistema de plantillas de Ansible
#elasticsearch_conf_template: "templates/elasticsearch.yml.j2"
Dependencias
Los hosts de destino deben tener JDK preinstalado. Puedes usar williamyeh.oracle-java u otros roles existentes en Ansible Galaxy.
Licencia
Licenciado bajo la Licencia MIT. Consulta el archivo LICENSE para más detalles.
Historia
Ninguna.
ansible-galaxy install William-Yeh.elasticsearch