elasticsearch
ansible-role-elasticsearch
Устанавливает и настраивает Elasticsearch.
Описание
Эта роль будет выполнять следующие задачи:
- установить Elasticsearch
- настроить Elasticsearch
- настроить http и transport TLS
- установить пароли для встроенных пользователей
- синхронизировать всю указанную информацию с контроллером ansible для дальнейшего использования
Настройка осуществляется через словарь yaml (elastic_config
), поэтому
каждая стандартная конфигурация, выполненная этой ролью, может быть переопределена,
определив соответствующие ключи в elastic_config
.
Требования
Нет
Зависимости
- Вам потребуется установить Java на целевой системе.
- Вам также понадобятся сгенерированные сертификаты для использования с elasticsearch (если вы хотите включить зашифрованные коммуникации).
Вы можете использовать другие роли ansible для выполнения этих задач, такие как geerlingguy.java и nkakouros.easyrsa. Смотрите пример плейбука.
Переменные роли
Смотрите файл defaults/main.yml для ознакомления с переменными этой роли и их документацией.
По умолчанию роль просто установит Elasticsearch и запустит его в качестве главного, узлового и инжектирующего узла.
Сравнение с другими ролями
Перед созданием этой роли я пробовал использовать для своих проектов следующие две роли:
- https://github.com/geerlingguy/ansible-role-elasticsearch
- https://github.com/elastic/ansible-elasticsearch
Тем не менее, они не подходили для моих нужд. Первая слишком проста, и любые PR для добавления функциональности, скорее всего, будут лежать в очереди на PR месяцами, если не годами. Вторая для меня слишком запутанная с устаревшим и трудночитаемым кодом ansible, много избыточности от предыдущих версий elasticsearch и запутанная документация.
Пример плейбука
Это минимальный плейбук для быстрой установки elasticsearch без сертификатов, для целей разработки.
- hosts: elastic-server
roles:
- nkakouros.elasticsearch
Для полного примера того, как настроить и установить полную систему ELK (откуда вы можете выбрать то, что соответствует вашему случаю использования), смотрите папку molecule/default/. В ней файл prepare.yml содержит плейбук, который установит зависимости, необходимые этой роли. Файл playbook.yml будет содержать полный и сложный пример того, как использовать эту роль конкретно.
Лицензия
GPLv3
Авторская информация
Николаос Какуорос (nkak@kth.se)
ansible-galaxy install nkakouros-original/ansible-role-elasticsearch