Интеграция Elasticsearch с SuiteCRM

Поисковый движок Elasticsearch доступен в версии 7.11 и выше.

Настройка подключения

В панели Администратора откройте подраздел СистемаНастройка Elasticsearch. В разделе основных настроек отметьте параметр Включить Elasticsearch. В настройках поискового сервера укажите адрес хоста. Укажите имя пользователя и пароль или оставьте эти поля пустыми, если используется анонимный доступ.

Если и SuiteCRM, и Elasticsearch запущены в контейнере Docker, имя хоста должно совпадать с именем контейнера.

Настройка Elasticsearch

Для проверки подключения к поисковому серверу воспользуйтесь кнопкой Проверить подключение к поисковому серверу.

По окончании настройки нажмите на кнопку Сохранить.

Индексация

Запланируйте полную индексацию, нажав на соответствующую кнопку в нижней части раздела. Задача начнет выполняться в течение минуты, при условии, что crontab правильно настроен.

Выбор Elasticsearch в качестве поискового движка

В подразделе СистемаВыбор поискового движка в качестве поискового движка выберите Расширенный поиск с использованием Elasticsearch.

Выбор поискового движка

В этом же подразделе при необходимости выберите модули, в которых будет производиться расширенный поиск.

Настройка задания в планировщике

Данные Elasticsearch обновляются каждый раз при создании, изменении, удалении и импортировании записей. Тем не менее, создание соответствующего задания в планировщике обеспечивает синхронизацию данных Elasticsearch с базой данных SuiteCRM.

В панели Администратора откройте Планировщик. Проверьте, существует ли уже задание с именем типа Perform Elasticsearch index.

Если такого задания не существует, то в меню выберите пункт Создать задание.

  • В перечне доступных заданий выверите пункт Elasticsearch-индексация.

  • В поле Название задания введите название, например Perform Elasticsearch index.

  • В поле Периодичность укажите частоту, с которой должно выполняться задание. Частоты примерно один раз в сутки должно быть достаточно. Например, чтобы задание выполнялось ежедневно в 4 часа ночи, отметьте опцию Дополнительные параметры и введите 0 в поле минут, 4 в поле часы, остальные поля оставьте без изменений.

  • Нажмите на кнопку Сохранить.

Поскольку Lucene-индексация после настройки Elastcsearch перестаёт быть актуальной, отредактируйте следующие задания в списке заданий планировщика, установив статус Не активно, и нажав на кнопку Сохранить:

  • Perform Lucene Index

  • Optimise AOD Index

Убедитесь, что параметры crontab настроены правильно, как это описано в нижней части страницы Планировщик.

Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.