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

Установка и инициализация Inventory

Предварительные требования

Требуется наличие следующих файлов для установки:

  • Архив с файлами модуля sm-inventory для OpenSearch
  • Архив с файлами модуля smartMonitorInventory для OpenSearch Dashboards

Процесс установки

Установка на серверы OpenSearch выполняется следующей командой:

sudo -u opensearch $OPENSEARCH_HOME/bin/opensearch-plugin install file://<путь до архива модуля>

Установка на серверы OpenSearch Dashboards выполняется следующей командой:

sudo -u opensearch $OPENSEARCH_DASHBOARDS_HOME/bin/opensearch-dashboards-plugin install file://<путь до архива модуля>

Инициализация Inventory

Чтобы проинициализировать модуль необходимо перейти в Параметры системы - Настройка модулей - Inventory - Инициализация:

Страница инициализации

Интеграция с Smart Monitor

В параметр Пользователь необходимо ввести имя учетной записи OpenSearch.

предупреждение

Параметр Пароль нередактируемый, управляется через OpenSearch keystore.

Для интеграции модуля Inventory со Smart Monitor необходимо в хранилище паролей Smart Monitor Data Storage и Smart Monitor Master Node добавить ключ inv.os.pass.

Добавление пароля в хранилище keystore с помощью запроса

Откройте меню Навигационное меню - Параметры системы - Консоль разработчика и выполните следующий запрос:

GET _core/keystore
Обратите внимание!

API позволяет изменять keystore только для определенных узлов кластера, например, с маской по имени узла. Подробнее про API управления хранилищем keystore можно прочитать в соответствующей статье.

Будет выведено содержимое хранилищ keystore на всех узлах кластера. Для того, чтобы добавить ключ на все узлы кластера, отредактируйте и выполните запрос:

POST _core/keystore/inv.os.pass
{
"value" : "<PASSWORD_USER>"
}

Добавление пароля в хранилище keystore ручным способом

Необходимо на узлах OpenSearch с установленным плагином Inventory в keystore добавить ключ inv.os.pass. Сделать можно следующей командой:

sudo -u opensearch $OPENSEARCH_HOME/bin/opensearch-keystore add inv.os.pass

При выполнении скрипт запросит ввести значение ключа, введите пароль пользователя admin. После выполнения команды перезагрузите узел OpenSearch.

Интеграция с Postgres

Интеграция с PostgreSQL требуется для корректной работы модуля Inventory в соответствии с обновленным алгоритмом расчета.

По умолчанию параметр отключен — в этом случае поля не являются обязательными. При активации параметра все поля становятся обязательными для заполнения.

предупреждение

Параметр Пароль нередактируемый, управляется через OpenSearch keystore.

Для интеграции модуля Inventory с PostgreSQL необходимо в хранилище паролей Smart Monitor Data Storage и Smart Monitor Master Node добавить ключ inv.pg.pass.

Добавление пароля в хранилище keystore с помощью запроса

Откройте меню Навигационное меню - Параметры системы - Консоль разработчика и выполните следующий запрос:

GET _core/keystore
Обратите внимание!

API позволяет изменять keystore только для определённых узлов кластера, например, с маской по имени узла. Подробнее про API управления хранилищем keystore можно прочитать в соответствующей статье.

Будет выведено содержимое хранилищ keystore на всех узлах кластера. Для того, чтобы добавить ключ на все узлы кластера, отредактируйте и выполните запрос:

POST _core/keystore/inv.pg.pass
{
"value" : "<PASSWORD_USER>"
}

Добавление пароля в хранилище keystore ручным способом

Необходимо на узлах OpenSearch с установленным плагином Inventory в keystore добавить ключ inv.pg.pass. Сделать можно следующей командой:

sudo -u opensearch $OPENSEARCH_HOME/bin/opensearch-keystore add inv.pg.pass

При выполнении скрипт запросит ввести значение ключа, введите пароль пользователя PostgreSQL. После выполнения команды перезагрузите узел OpenSearch.

Для настройки подключения необходимо заполнить следующие поля формы:

  • Хост — IP-адрес сервера базы данных

  • Порт — порт для подключения к PostgreSQL

  • База данных — имя используемой базы данных

  • Пользователь — имя пользователя для подключения

Фильтрация нод запуска

По умолчанию задачи будут запускаться на всех серверах с установленным модулем Inventory. Фильтры позволяют регулировать набор нод, используемых для запуска задач. Данный параметр не является обязательным.

Доступны следующие типы фильтрации:

  • Включить – (include) хотя бы одно из условий должно быть удовлетворено
  • Исключить – (exclude) ни одно из условий не может быть удовлетворено
  • Обязательно – (require) все условия должны быть удовлетворены

Доступны следующие типы атрибута:

  • Имя ноды
  • IP адрес хоста
  • Публичный IP адрес хоста
  • IP адрес
  • Имя хоста
  • Идентификатор ноды
  • Собственный атрибут

В Значение записывается параметр ноды.

примечание

При использовании собственного атрибута появится поле ввода для указания его названия:

Собственный атрибут

Редактирование настроек Inventory

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

Пример заполненной формы:

Настройки инициализации

Добавление раздела в навигационное меню

Чтобы добавить компонент модуля в меню перейдите в раздел Навигационное меню - Параметры системы - Настройки модулей - Настройки меню - JSON-структура. Добавьте словарь JSON ниже в список data.

Меню Inventory
{
"itemType": "module",
"name": "inventory",
"show": false,
"id": "39afa001-b528-4488-bd55-58b09c0bded9",
"title": "Inventory",
"sections": [
{
"itemType": "page",
"name": "configs/list",
"show": true,
"id": "f8518eba-cdf9-4341-bd14-51644f09c620",
"title": "Активы",
"enabled": true
}
],
"enabled": true
}