elasticsearch

williamyeh.elasticsearch для Ansible Galaxy

Circle CI Статус сборки

Краткое описание

Имя роли в Ansible Galaxy: williamyeh.elasticsearch

Эта роль Ansible имеет следующие возможности для Elasticsearch:

  • Установка Elasticsearch.
  • Указание размера кучи и G1GC для JVM, если требуется.
  • Установка плагинов (стандартных и сторонних).
  • Основная конфигурация (реальная конфигурация должна быть оставлена в файлах шаблонов пользователя; смотрите раздел Использование ниже).

Переменные роли

Обязательные переменные

Переменные, которые должны быть определены в плейбуке пользователя:

elasticsearch_version

Необязательные переменные

Конфигурационные файлы, устанавливаемые пользователем (через систему шаблонов Ansible):

# конфигурационный файл (обычно elasticsearch.yml), который будет установлен,
# относительно `playbook_dir`;
# файл будет скопирован без изменений
elasticsearch_conf_copy

# конфигурационный файл (обычно elasticsearch.yml.j2), который будет установлен,
# относительно `playbook_dir`;
# файл будет скопирован через систему шаблонов Ansible
elasticsearch_conf_template

Плагины, устанавливаемые пользователем:

# массив плагинов (зарегистрированных на elasticsearch.org), которые будут установлены.
# @см. http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
elasticsearch_plugins

# массив других плагинов, которые будут установлены.
# каждый элемент массива должен иметь как минимум следующие ключи:
#  - "name", имя плагина без подстроки ".jar".
#  - "url", указывающий на URL файла jar.
elasticsearch_other_plugins

Настройки по умолчанию, настраиваемые пользователем:

# использовать G1GC для JVM?
elasticsearch_use_g1gc: false

# размер кучи JVM для Elasticsearch
elasticsearch_heap_size

Обработчики

  • перезапустить elasticsearch

  • остановить elasticsearch

Использование

Шаг 1: добавьте роль

Добавьте имя роли williamyeh.elasticsearch в файл вашего плейбука.

Шаг 2: добавьте переменные

Установите переменные в файле вашего плейбука.

Простой пример:

---
# файл: simple-playbook.yml

- hosts: all

  roles:
    - williamyeh.oracle-java
    - williamyeh.elasticsearch

  vars:
    elasticsearch_version: 1.6.0

Шаг 3: настройте память JVM, если необходимо

---
- hosts: all

  roles:
    - williamyeh.oracle-java
    - williamyeh.elasticsearch

  vars:
    elasticsearch_version: 1.4.2

    elasticsearch_use_g1gc: true
    elasticsearch_heap_size: 6g

Шаг 4: скопируйте конфигурационный файл пользователя, установите плагины и т.д., если необходимо

Более практический пример:

---
# файл: 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

    #-- скопировать без изменений
    elasticsearch_conf_copy: "files/elasticsearch.yml"

    #-- скопировать через систему шаблонов Ansible
    #elasticsearch_conf_template: "templates/elasticsearch.yml.j2"

Зависимости

Ваши целевые хосты должны иметь предустановленный JDK. Вы можете использовать williamyeh.oracle-java или другие роли, доступные в Ansible Galaxy.

Лицензия

Лицензировано по лицензии MIT. Смотрите файл LICENSE для получения подробной информации.

История

Нет.

О проекте

Install Elasticsearch

Установить
ansible-galaxy install William-Yeh/ansible-elasticsearch
Лицензия
mit
Загрузки
181
Владелец