Иконка ресурса

Настройка Elasticsearch

Hope

Premium
Сообщения
48,305
Решения
22
Реакции
71,868
Баллы
40,905
Пользователь Hope разместил новый ресурс:

Настройка Elasticsearch - Настройка и оптимизация Elasticsearch на Red Hat.

Установите и Elasticsearch RPM:
Код:
# yum --enablerepo=axivo install elasticsearch
# rpm -q elasticsearch
elasticsearch-1.1.1-1.el6.x86_64
# chkconfig elasticsearch on
Теперь Ваша поисковая система полностью функционирует.

Установите плагин Enhanced Search. В файле /etc/elasticsearch/elasticsearch.yml измените следующие настройки и запустите сервис:
Код:
# sed -i 's|^#cluster.name.*|cluster.name: YourIndexName|'...

Узнать больше об этом ресурсе...
 
Hope ещё бы указал в названии или в теме что эта инфа для пользователей Centos. А то новички *nix систем смогут запутаться
 
Простите парни. Извинтиляюсь, сам был невнимателен)
 
После установки поиска и настройки пишет: Поиск не может быть завершён. Пожалуйста, повторите попытку позже. Если плагин отключить все работает нормально.
Код:
XenForo_Exception: Elasticsearch error: IndexMissingException[[111] missing] - library/XenES/Search/SourceHandler/ElasticSearch.php:845
-вот такая вот фигня вылетает
 
Последнее редактирование:
xsacha, что-то неверно в конфиге самого эластика указано. Какая ОС, что правили в конфиге и правили ли?
 
Нечего не правил ОС Centos 6
 
xsacha, эм, ну как минимум нужно указать название индекса собственное, как максимум еще пачку настроек для правильной стеммизации русских слов. Тут на форуме есть парочка тем по поводу правильной настройки, как минимум это следовало бы выполнить. Приведу работающий пример, не особо претендую на его оптимальность, но он успешно работает.

В файле /etc/elasticsearch/elasticsearch.yml в самый конец вставляете:
Код:
cluster.name: my_index
index.analysis.analyzer.default.type: custom
index.analysis.analyzer.default.tokenizer: standard
index.analysis.analyzer.default.filter: ["standard", "lowercase", "stop", "snow"]
index.analysis.filter.snow.type: snowball
index.analysis.filter.snow.language: Russian

В настройках форума, а точнее поисковой системы включаете ES, имя индекса указываете идентичное - my_index, остальные настройки оставляете без изменений. Перезапускаете ES и делаете перестроение поискового индекса в инструментах с удалением имеющегося. В принципе, это вся настройка.
 
Очень рекомендую использовать настройки ElasticSearch, указанные выше.
Конечно в Enhanced Search есть возможность использования стемминга с нужным языком (например, русским), но тогда будут проблемы при поиске фраз с символами запятых и т.п.
 
Ребята может подскажите, при индексации с включенным ElasticSearch вылазит 502 ошибка. При выкл. ElasticSearch индексация проходит на без проблем. Может какие то параметры нужно увеличить на сервере nginx?

Возможно нужно больше выделить оперативки для ElasticSearch но не могу найти где в nginx лежит файл с настройками ES_HEAP_SIZE
 
step-83, 502-я вылазит вообще или при использовании поиска? Сколько оперативы на vds?
 
Тогда посмотри логи, не валится ли elastic при индексации.
 
upstream prematurely closed connection while reading response header from upstream
Подними буфер и размер заголовка
Код:
proxy_buffers 8 16k;
proxy_buffer_size 32k;
large_client_header_buffers 8 32k;
Если используется fastcgi, то proxy меняем на fastcgi
Код:
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;
large_client_header_buffers 8 32k;
 
Последнее редактирование:
было
Код:
proxy_buffers 8 32k;
proxy_buffer_size 64k;
large_client_header_buffers 8 32k;
не помогает
еще подымать? какие параметры менять
 
Код:
proxy_buffers 8 64k;
proxy_buffer_size 64k;
client_header_buffer_size 16k;
large_client_header_buffers 8 64k;
 
Последнее редактирование:
Пробовал как с proxy так с fastcgi
Код:
proxy_buffers 8 64k;
proxy_buffer_size 64k;
client_header_buffer_size 16k;
large_client_header_buffers 8 64k;
перегрузил nginx не получилось

здесь рекомендуют увеличить лимиты на ресурсы в php или php-fpm

Smalesh, спасибо большое за помощь. решил вопрос
увеличением pm.max_requests = 500 в конфиге php-fpm

Конечно в Enhanced Search есть возможность использования стемминга с нужным языком (например, русским), но тогда будут проблемы при поиске фраз с символами запятых и т.п.
Если указать
В файле /etc/elasticsearch/elasticsearch.yml в самый конец вставляете:
cluster.name: my_index
index.analysis.analyzer.default.type: custom
index.analysis.analyzer.default.tokenizer: standard
index.analysis.analyzer.default.filter: ["standard", "lowercase", "stop", "snow"]
index.analysis.filter.snow.type: snowball
index.analysis.filter.snow.language: Russian
то в настройках Elasticsearch - "Изменить алгоритм", что ставить Стандартный алгоритм? или Алгоритм стемматизации с использованием языка: (русский)?
 
Такой вопрос - ElasticSearch настроен нормально, в том числе стемматизация.
Но есть небольшая проблема:
в результатах поиска только точные совпадения искомого слова подсвечивает жирным шрифтом во фразе содержащей это слово,
а вот другие словоформы (в другом падеже или числе) хоть и находит успешно, но показывает только шапку темы,
в которой найдено данное слово, а не фразу содержащую это слово. Непонятно вообще подсвечивает жирным шрифтом или нет.
То есть чтобы понять где именно найдены эти другие словоформы обязательно заходить в каждую тему и искать эту фразу.
Как сделать чтобы в результатах поиска и для других словоформ выделяло болдом и эти слова тоже?
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу