Установка и настройка конфигураций
Для автоматизированного развертывания инфраструктурных объектов модуля APM используется скрипт make_apm.py.
Он входит в состав пакета apm_ko_maker и размещен в каталоге bin.
Основные задачи утилиты
- развертывание объектов знаний (сущностей
Smart Monitor) - создание шаблонов индексов
- создание паттернов индексов
- настроек инвентаризации
Требования
- Python 3.12 и выше
- зависимости утилиты ставятся скриптом
bin/install_dependencies.sh(создает.venv, устанавливает библиотекуsmpyиhttpx) - доступ к кластеру
Smart Monitorс правами администратора
Структура проекта
./
├── bin/ # Скрипты установки и развертывания
├── data/ # Конфигурационные файлы
│ ├── core/ # Слои ресурсно-сервисной модели (РСМ)
│ ├── index-patterns/ # Паттерны индексов
│ ├── inv/ # Настройки инвентаризации
│ ├── sm_*/ # Сущности Smart Monitor
│ ├── index_templates/ # Шаблоны индексов
├── templates/ # Шаблоны метрик РСМ
Форматы конфигурационных файлов
Сущности Smart Monitor (sm_*)
{
"_meta": {
// мета-данные
},
// конфигурация
}
Шаблоны индексов (index_templates)
{
"name": "имя_шаблона",
"index_template": {
// конфигурация шаблона
}
}
Слои РСМ (core/rsm/layers)
{
"title": "название слоя",
"description": "описание слоя"
}
Паттерны индексов (index-patterns)
{
"attributes": {
"title": "название паттерна"
},
"references": []
}
Инвентаризация (inv)
inv/inventories— конфигурации активовinv/relationSettings— связи между активами
Последовательность установки
Шаг 1. Установка зависимостей утилиты
./bin/install_dependencies.sh
Скрипт создает виртуальное окружение .venv и устанавливает зависимости утилиты (библиотеку smpy и httpx).
Шаг 2. Запуск установки конфигураций
./bin/make_apm.py \
--sm_host <SMART_MONITOR_HOST> \
--sm_api_port <SMART_MONITOR_API_PORT> \
--sm_cluster_port <OPENSEARCH_PORT> \
--sm_user <SMART_MONITOR_USER> \
--sm_password '<SMART_MONITOR_PASSWORD>'
| Параметр | Обязательный | Тип | По умолчанию | Описание |
|---|---|---|---|---|
--sm_host | Да | string | — | Хост кластера Smart Monitor |
--sm_api_port | Нет | int | 5601 | Порт frontend API (saved objects, РСМ, inventory) |
--sm_cluster_port | Нет | int | 9200 | Порт OpenSearch API (index templates, sm-сущности) |
--sm_user | Да | string | — | Имя пользователя |
--sm_password | Да | string | — | Пароль пользователя |
./bin/make_apm.py --sm_host sm-host.my_company.ru --sm_api_port 5601 --sm_cluster_port 9200 --sm_user admin --sm_password securepassword
--sm_api_port используется для frontend API, saved objects, РСМ и inventory. --sm_cluster_port используется для OpenSearch API (index templates, sm-сущности).
Если frontend API и OpenSearch опубликованы на разных серверах, можно явно задать --sm_api_host и --sm_cluster_host.
Шаг 3. Проверка результата в интерфейсе
После запуска проверьте, что настройки применились:
-
Шаблоны индексов
- в разделе
Шаблоны: (Навигационное меню-Параметры системы-Управление индексами-Шаблоны) 
- в разделе
-
Паттерны индексов
- в разделе
Паттерны индексов: (Навигационное меню-Параметры системы-Настройки модулей-OPENSEARCH-Паттерны индексов) 
- в разделе
-
Справочники
- в разделе
Список справочников: (Навигационное меню-Lookup Manager-Список справочников) - должны присутствовать:
dim_apm_servicelink_apm_source_service_dest_service
- в разделе
Шаг 4. Регистрация типа инцидента модуля
После импорта контентного модуля APM выполните скрипт apply_incident_types.py из состава той же утилиты apm_ko_maker. Скрипт регистрирует поля карточки инцидента (плейбук расследования) и идемпотентно создает тип инцидента Инцидент IT, после чего навешивает его на задачи модуля.
./bin/apply_incident_types.py \
--sm_host <SMART_MONITOR_HOST> \
--sm_api_port <SMART_MONITOR_API_PORT> \
--sm_user <SMART_MONITOR_USER> \
--sm_password '<SMART_MONITOR_PASSWORD>'
После выполнения проверьте:
- тип инцидента
Инцидент ITпоявился в разделеНавигационное меню-Incident Manager-Типы инцидента - тип доступен в выпадающем списке
Тип инцидентав редакторе задачи - инцидент-задачи модуля
APMполучили этот тип - карточка инцидента отображает поля плейбука