Перейти к основному содержимому
Версия: 3.2

Установка OpenSearch и Smart Monitor

Общие сведения

Запускать установщик OpenSearch требуется от пользователя root, указав путь до него:

$ /opt/smart-monitor-installer/opensearch/install.sh

Вместе с OpenSearch устанавливается Smart Monitor Engine и его компонент Smart Monitor Engine Remote Execution (SME-RE). SME-RE используется для удалённого запуска Python-скриптов, в некоторых случаях может потребоваться хранилище для промежуточных данных скриптов, в таком случае потребуется установка пакета memcached. Для OpenSearch и SME-RE по умолчанию используется владелец opensearch и группа opensearch.

При разворачивании кластера следует учитывать количество узлов с ролью master, оно должно быть нечётным, чтобы избежать проблем с голосованием (split brain issue).

Первичная настройка ролей

примечание

При создании кластера с SSL инициализация плагина Security в OpenSearch создает системные индексы. Первый узел кластера должен иметь роли master и data, чтобы обеспечить эту инициализацию.

Если изначально планировалось использовать только роль data без master, следует выполнить шаги:

  1. Установить первый узел кластера с ролями master и data
  2. Установить следующий узел кластера с ролью master или data
  3. Воспользоваться утилитой elasticsearch-node repurpose для изменения ролей первого узла кластера

Подробнее об утилите elasticsearch-node repurpose можно прочитать в этой статье.

Установка основных директорий

На первом шаге происходит анализ системы и в случае уже имеющегося установленного и запущенного экземпляра OpenSearch или ElasticSearch - может выдать предупреждение:

Начало установки

На изображении выше так же виден найденный установочный архив и версия OpenSearch для установки. Действие по умолчанию - отмена установки, для продолжения установки надо ввести y. После этого будут остановлены запущенные экземпляры.

На первом шаге задаются основные директории установки, указывается лицензия Smart Monitor и нужно ли использовать memcached. Мы рекомендуем все файлы, относящиеся к Smart Monitor, хранить в одной директории /app/, это упростит дальнейшее обслуживание.

примечание

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

Запрашивается на этом шаге следующий набор параметров.

ПараметрОписаниеЗначение по умолчанию
home directoryДиректория установки OpenSearch/app/opensearch
conf directoryДиректория конфигурационных файлов/app/opensearch/config
data directoryДиректория для хранения индексируемых данных/app/data
logs directoryДиректория хранения логов/app/logs
Smart Monitor license pathПолный путь к файлу лицензии Smart Monitor
Is memcached neededЕсли планируется использовать memcached, то нужно выбрать y для включения и настройки, memcached должен быть установлен до этого момента

Задание директорий установки и лицензии

После введённых данных скрипт запросит подтверждение корректности ввода, подтверждаем введя y и нажатием клавиши Enter. Установщик проведёт анализ имеющихся директорий и если они не пустые, то снова выдаст предупреждение:

Предупреждение о том, что указанные директории не пустые

осторожно

Если продолжить, то всё содержимое указанных директорий будет удалено без возможности восстановления!

Для продолжения установки снова требуется ввести y и нажать клавишу Enter.

Установка параметров кластера и текущего узла

На данном шаге вводятся базовые параметры для OpenSearch.

ПараметрОписание
Node nameНаименование текущего узла OpenSearch
Node roles listПеречень ролей текущего узла OpenSearch, перечисленных через запятую с пробелом, стоит обратить внимание, что в кластере обязательно должны присутствовать роли master и data (или master, data_content и data_hot), т. е. если кластер состоит из одного узла, то он должен включать эти роли
Node routing modeЕсли вы планируете использовать многоуровневое хранение данных (hot-warm-cold), можете указать здесь требуемый для данного узла уровень
  • Bind address — IP-адрес интерфейса, на котором будет прикреплен OpenSearch, по умолчанию прослушиваются все доступные сетевые интерфейсы (0.0.0.0), есть возможность указать несколько IP-адресов
  • OpenSearch cluster name — название кластера
  • Cluster discovery seed hosts — IP-адреса узлов с ролью master (если вы планируете разворачивать кластер из нескольких узлов, эта настройка должна быть одинаковой на всех узлах и указывать на внешние IP-адреса), можно указать несколько IP-адресов в кавычках через запятую, рекомендуем использовать нечётное количество нод с ролью master, иначе могут возникнуть проблемы с голосованием внутри кластера
  • JVM heap size — размер памяти в ГБ, выделенной для JVM OpenSearch, параметр не должен превышать половину свободной оперативной памяти на сервере, параметр выставляет значения -Xms и -Xmx для Java. Меньше 4Гб не рекомендуется указывать для сохранения производительности и скорости работы.

Задание параметров OpenSearch

Инициализация кластера

На этом этапе задаются параметры первичной инициализации кластера OpenSearch.

  • Is cluster initialized — инициализирован ли кластер (при развёртывании первого узла необходимо ответить нет (n) для выполнения инициализации, при развёртывании всех последующих — y)
  • Final initial master node list — названия или IP-адреса в кавычках узлов с ролью master, перечисленных через запятую.

Для увеличения надёжности можно указать полный список узлов с ролью master, в том числе ещё не развёрнутых. Для большинства случаев достаточно указать текущий узел (значение по умолчанию).

Обратите внимание!

Final initial master node list - этот параметр нужен только для первичной инициализации кластера. Все перечисленные серверы с ролью master должны быть идентичны названиям узлов в кластере.

На изображении ниже представлено развёртывание первого узла.

Задание параметров инициализации кластера

Установка пароля для пользователя admin

Далее предлагается ввести пароль для пользователя admin в OpenSearch. Вы можете указать хэш пароля (в конце этого шага задается вопрос является ли введенная последовательность хэшем), либо ввести другую последовательность.

Задание пароля

Обратите внимание!

По умолчанию, если ничего не вводить, установится хэш, соответствующий паролю по умолчанию: P@ssWoRdElastic.

Установка параметров сертификатов

примечание

При создании закрытых ключей используются криптографический алгоритм RSA длиной 2048 бит и для создания цифрового отпечатка используется алгоритм sha256. Самоподписанный сертификат УЦ по нашему алгоритму создаётся на 3650 дней, а сертификаты админа и текущего инстанса на 1095 дней.

На этом шаге инициализируется самоподписанный сертификат Удостоверяющего Центра (УЦ) и создается сертификат текущего узла. Можно указать уже имеющиеся сертификат и закрытый ключ УЦ.

  • Do you want to use existing CA certificate — вы хотите использовать имеющиеся файлы сертификата и ключа? Вы можете указать свои собственные файлы или воспользоваться встроенным алгоритмом. Если вы используете встроенный алгоритм, ответьте нет (n) только при первой установке. Для последующих узлов следует использовать файлы из текущей конфигурационной директории (по умолчанию: /app/opensearch/config/ca-cert.pem для сертификата и /app/opensearch/config/ca-key.pem для закрытого ключа)
  • Do you want to use an existing CA certificate and private key to generate certificates and keys for this node? — если выбрать нет, то нужно будет вручную предоставить все необходимые сертификаты для работы узла, иначе, выбрав да, остальные сертификаты будут автоматически сгенерированы на основе сертификата и ключа центра сертификации
  • Path to CA certificate — путь к корневому сертификату (сертификат должен быть одинаковым на всех компонентах Smart Monitor)
  • Path to CA key — путь к приватному ключу (ключ должен быть одинаковым на всех компонентах Smart Monitor)
  • CN for node certificate — common name для текущего узла
  • Country for node certificate — название страны
  • State for node certificate — название области
  • Locality for node certificate — название города
  • Organization for node certificate — название организации
  • External IP — внешний IP-адрес текущего узла, который будет использоваться для взаимодействия с другими компонентами

Ниже пример с указанием уже имеющихся закрытого ключа УЦ и сертификата:

Задание параметров SSL

примечание

После ввода данных требуется подтвердить правильность их ввода.

Формирование конфигурации

На данном этапе никаких действий со стороны администратора не требуются. Этап условно разделяется на два пункта:

  1. Подготовка временных директорий, выполнение проверок, подготовка шаблонов
  2. Формирование конфигурационных файлов из заданных параметров

Создание сертификатов

На данному этапе не требуется никаких действий со стороны администратора, производится создание закрытых ключей и сертификатов из заданных параметров.

Распаковка архива и изменение конфигурационных файлов

На данном этапе не требуется никаких действий со стороны администратора, производится извлечение архива с OpenSearch, изменение конфигурационных файлов извлечённых из архива, подготовительные процессы перед изменениями системы.

Все операции до этого момента выполнялись строго внутри директории установщика и не влияют на операционную систему, просмотреть готовый к установке набор файлов вы можете в директории staging.

Для этого у администратора будет спрошено разрешение на продолжение установки:

Предупреждение о начале изменений в ОС

Подтвердите изменения для продолжения установки нажатием клавиши y и затем Enter.

Установка

На данном этапе не требуется никаких действий со стороны администратора. Здесь происходит несколько действий:

  1. Создание групп и пользователей
  2. Создание директорий
  3. Копирование файлов и конфигураций
  4. Изменение прав доступа к файлам и директориям
  5. Применение контекста безопасности SELinux

Запуск и проверка

На данном этапе не требуется никаких действий со стороны администратора и производятся следующие действия:

  1. Запуск служб opensearch и sme-re
  2. Проверка работоспособности служб
  3. Применение security index

Настройка Job Scheduler

На данном этапе не требуется никаких действий со стороны администратора и происходит настройка конфигурации в модуле Job Scheduler.

Завершение установки

По окончании установки должно появиться сообщение конфигурации межсетевого экрана на примере firewalld, а также сообщение об успешной установке как на изображении ниже. При любом другом виде завершения установки произошла ошибка и требуются дополнительные действия по исправлению.

Сообщение об успешной установке Smart Monitor

При успешном завершении работы установщика узел развёрнут и готов к использованию. На нём должны быть запущены и работать сервис opensearch и sme-re.

примечание

Сервисы будут автоматически запускаться после перезагрузки операционной системы.

Обратите внимание, что нужно настроить межсетевой экран для портов:

  • 9200/tcp – порт для обращений к OpenSearch REST API
  • 9300/tcp – порт для взаимодействия узлов кластера

Для проверки работоспособности откройте в браузере страницу https://<ip-адрес-вашего-сервера>:9200 и используйте УЗ по умолчанию:

Пример вывода страницы