Я уже писал про установку основных компонентов Elastic Stack – Elasticsearch и Kibana. Для того, чтобы в Kibana работал Elastic web crawler необходим еще один компонент – Elastic Enterprise Search. В этой публикации я покажу, как выполняется базовая установка Elastic Enterprise Search.
В качестве операционной системы я буду использовать Rocky Linux 9.
Предварительные требования
Непосредственно перед установкой Elastic Enterprise Search необходимо выполнить следующие предварительные требования:
1. Выполнить установку и настройку Elasticsearch.
2. Выполнить установку и настройку Kibana.
3. Для работы Elastic Enterprise Search необходимо 6 ГБ оперативной памяти (или 4 ГБ, если сервис Elasticsearch находится находится на отдельном хосте).
4. Необходимо 5 ГБ места на диске.
5. Java 11.
Мажорная версия Elastic Enterprise Search должна быть идентичная мажорной версии Elasticsearch. В то же ввремя минорная версия Elastic Enterprise Search должна быть равна или меньше минорной версии Elasticsearch. Например, версия Elastic Enterprise Search 8.13.0 не совместима с версией Elasticsearch 7.3.0. Также Elastic Enterprise Search 8.13.0 не поддерживается при работе с Elastichsearch 8.12.0. Зато поддерживается конфигурация с идентичными версиями Elastic Enterprise Search и Elasticsearch. Также возможно совместимость Elastic Enterprise Search 8.12.0 и Elasticsearch 8.13.0.
Различные патч версии Elastic Enterprise Search и Elasticsearch совместимы между собой. Например, 8.13.0 и 8.13.2.
Для работы Elastic Enterprise Search необходима Java. Установим необходимый пакет:
sudo dnf install java-11-openjdk
Установка Elastic Enterprise Search
Установка выполняется следующим образом:
1. Загрузите deb/rpm пакет со страницы загрузки:
2. Запустите установку пакета:
sudo rpm -i enterprise-search-8.13.2.rpm
3. Включите автоматический запуск сервиса Elastic Enterprise Search:
sudo systemctl daemon-reload
sudo systemctl enable enterprise-search.service
Не запускайте сервис Elastic Enterprise Search до завершения процедуры первоначальной настройки.
Первоначальная настройка Elastic Enterprise Search
Теперь необходимо выполнить настройку подключения к сервису Elasticsearch и Kibana:
1. Откроем на редактирование конфигурационный файл:
sudo nano /usr/share/enterprise-search/config/enterprise-search.yml
2. Пример моего конфигурационного файла:
# ------------------------------- Elasticsearch -------------------------------
allow_es_settings_modification: true
#
# Elasticsearch full cluster URL:
elasticsearch.host: https://192.168.56.40:9200
#
# Elasticsearch credentials:
#
elasticsearch.username: elastic
elasticsearch.password: rHb1w-s4lD9bZvuLXqp0
# Elasticsearch SSL settings:
#
# SSL communication with Elasticsearch enabled or not.
#
elasticsearch.ssl.enabled: true
elasticsearch.ssl.verify: false
# ---------------------------------- Kibana -----------------------------------
#
# Define the URL at which Enterprise Search can reach Kibana.
# Defaults to http://localhost:5601 for testing purposes.
#
kibana.host: https://192.168.56.36:5601
# ---------------------------------- Logging ----------------------------------
#
# Choose your log export path.
#
log_directory: /var/log/enterprise-search
#
# Choose your Filebeat logs export path.
#
filebeat_log_directory: /var/log/enterprise-search
secret_management.encryption_keys: [e11f7f851e59412dc097a68a43ae4d6d997c43140f1963263ed88b05a5201d2b]
Основные настройки в конфигурационном файле – это параметры подключения к сервисам Elasticsearch и Kibana.
Приведу ссылку на полное описание доступных параметров настройки.
3. Сохраните внесенные изменения.
4. Перезапустите сервис Elastic Enterprise Search:
sudo systemctl restart enterprise-search.service
5. Проверяем статус сервиса:
sudo systemctl status enterprise-search.service
root@localhost roman]# sudo systemctl status enterprise-search.service
● enterprise-search.service - Elastic Enterprise Search
Loaded: loaded (/usr/lib/systemd/system/enterprise-search.service; enabled; preset: disabled)
Active: active (running) since Fri 2024-04-26 22:36:00 +07; 2min 8s ago
Docs: https://www.elastic.co/guide/en/enterprise-search/current/index.html
Main PID: 8358 (java)
Tasks: 61 (limit: 48935)
Memory: 1.7G
CPU: 2min 43.114s
CGroup: /system.slice/enterprise-search.service
├─8358 java -cp /usr/share/enterprise-search/lib/war/lib/jruby-stdlib-9.3.3.0.jar:/usr/share/enterprise-search/lib/war/lib/jruby-core-9.3.3.0-complete.jar>
└─8474 /usr/share/enterprise-search/bin/vendor/filebeat/filebeat-linux-x86_64 -v --path.config=/tmp --c=ent-search-filebeat.yml
Установка Elastic Enterprise Search завершена.
Если что-то пошло не так
Смотрим журналы сервиса:
sudo journalctl -ru enterprise-search.service
Также смотрим файловые журналы вот в этой директории:
/var/log/enterprise-search