Настройка ElasticSearch

https://golos.id/@lex/vnutrennii-poisk-na-golose-naidyotsya-vsyo

Установка ElasticSearch (ссылка)

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
sudo apt-get update && sudo apt-get install elasticsearch

Добавляем настройки в конфиг

Добавить в конфиг /etc/elasticsearch/elasticsearch.yml

network.host: 0.0.0.0
xpack.security.enabled: true
discovery.type: single-node 
http.cors.enabled : true
http.cors.allow-origin: "*"
http.cors.allow-headers: Content-Type,Authorization

Перезапуск для применения настроек

sudo service elasticsearch restart

Устанавливаем пароли на доступы

/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

В конфиг ноды позднее нужно добавить пароль заданный к роли elastic (для примера 123456). Перезапуск для применения настроек

Добавляем read-only роль golosclient

Добавляем read-only пользователя golosclient

Перезапуск для применения настроек

Добавляем параметры к ноде

К списку плагинов дописываем elastic_search

В конфиг ноды добавляем параметры:

где elastic-search-uri прописан с учётом того что нода будет запускаться через Docker, а пароль к пользователю elastic заданный на этом шаге.

Перезапускаем ноду с её реплеем, индекс ElasticSearch должен наполняться.

Структура и примеры

Количество элементов в индексе

Пример запроса поста из базы

Пример запроса статистики ElasticSearch

Mapping всех типов индекса blog:

Ответ

Last updated