Kaspersky Unified Monitoring and Analysis Platform
- Справка Kaspersky Unified Monitoring and Analysis Platform
- О программе Kaspersky Unified Monitoring and Analysis Platform
- Архитектура программы
- Лицензирование программы
- О Лицензионном соглашении
- О лицензии
- О Лицензионном сертификате
- О лицензионном ключе
- О файле ключа
- О лицензионном коде
- Предоставление данных в Kaspersky Unified Monitoring and Analysis Platform
- Добавление лицензионного ключа в веб-интерфейс программы
- Просмотр информации о добавленном лицензионном ключе в веб-интерфейсе программы
- Удаление лицензионного ключа в веб-интерфейсе программы
- Руководство администратора
- Установка и удаление KUMA
- Требования к установке программы
- Порты, используемые KUMA при установке
- Перевыпуск внутренних CA-сертификатов
- Изменение самоподписанного сертификата веб-консоли
- Синхронизация времени на серверах
- О файле инвентаря
- Установка на одном сервере
- Распределенная установка
- Распределенная установка в отказоустойчивой конфигурации
- Резервное копирование KUMA
- Изменение конфигурации KUMA
- Обновление предыдущих версий KUMA
- Устранение ошибок при обновлении
- Удаление KUMA
- Работа с тенантами
- Управление пользователями
- Сервисы KUMA
- Инструменты сервисов
- Наборы ресурсов для сервисов
- Создание хранилища
- Создание коррелятора
- Создание маршрутизатора событий
- Создание коллектора
- Предустановленные коллекторы
- Создание агента
- Настройка источников событий
- Настройка получения событий Auditd
- Настройка получения событий KATA/EDR
- Настройка передачи событий Kaspersky Security Center в SIEM-систему KUMA
- Настройка получения событий Kaspersky Security Center из MS SQL
- Настройка получения событий с устройств Windows с помощью Агента KUMA (WEC)
- Настройка аудита событий с устройств Windows
- Настройка централизованного получения событий с устройств Windows с помощью службы Windows Event Collector
- Предоставление прав для просмотра событий Windows
- Предоставление прав входа в качестве службы
- Настройка коллектора KUMA для получения событий с устройств Windows
- Установка коллектора KUMA для получения событий с устройств Windows
- Настройка передачи в KUMA событий с устройств Windows с помощью Агента KUMA (WEC)
- Настройка получения событий с устройств Windows с помощью Агента KUMA (WMI)
- Настройка получения событий DNS-сервера с помощью агента ETW
- Настройка получения событий PostgreSQL
- Настройка получения событий ИВК Кольчуга-К
- Настройка получения событий КриптоПро NGate
- Настройка получения событий Ideco UTM
- Настройка получения событий KWTS
- Настройка получения событий KLMS
- Настройка получения событий KSMG
- Настройка получения событий KICS for Networks
- Настройка получения событий PT NAD
- Настройка получения событий c помощью плагина MariaDB Audit Plugin
- Настройка получения событий СУБД Apache Cassandra
- Настройка получения событий FreeIPA
- Настройка получения событий VipNet TIAS
- Настройка получения событий Nextcloud
- Настройка получения событий Snort
- Настройка получения событий Suricata
- Настройка получения событий FreeRADIUS
- Настройка получения событий VMware vCenter
- Настройка получения событий zVirt
- Настройка получения событий Zeek IDS
- Настройка получения событий Windows с помощью Kaspersky Endpoint Security для Windows
- Настройка получения событий Сodemaster Mirada
- Настройка получения событий Postfix
- Настройка получения событий CommuniGate Pro
- Настройка получения событий Yandex Cloud
- Настройка получения событий MongoDB
- Мониторинг источников событий
- Управление активами
- Добавление категории активов
- Настройка таблицы активов
- Поиск активов
- Экспорт данных об активах
- Просмотр информации об активе
- Добавление активов
- Назначение активу категории
- Изменение параметров активов
- Архивирование активов
- Удаление активов
- Обновление программ сторонних производителей и закрытие уязвимостей на активах Kaspersky Security Center
- Перемещение активов в выбранную группу администрирования
- Аудит активов
- Настраиваемые поля активов
- Активы критической информационной инфраструктуры
- Интеграция с другими решениями
- Интеграция с Kaspersky Security Center
- Настройка параметров интеграции с Kaspersky Security Center
- Добавление тенанта в список тенантов для интеграции с Kaspersky Security Center
- Создание подключения к Kaspersky Security Center
- Изменение подключения к Kaspersky Security Center
- Удаление подключения к Kaspersky Security Center
- Импорт событий из базы Kaspersky Security Center
- Интеграция с Kaspersky Endpoint Detection and Response
- Интеграция с Kaspersky CyberTrace
- Интеграция с Kaspersky Threat Intelligence Portal
- Интеграция с R-Vision Security Orchestration, Automation and Response
- Интеграция с Active Directory, Active Directory Federation Services и FreeIPA
- Подключение по протоколу LDAP
- Включение и выключение LDAP-интеграции
- Добавление тенанта в список тенантов для интеграции с LDAP-сервером
- Создание подключения к LDAP-серверу
- Создание копии подключения к LDAP-серверу
- Изменение подключения к LDAP-серверу
- Изменение частоты обновления данных
- Изменение срока хранения данных
- Запуск задач на обновление данных об учетных записях
- Удаление подключения к LDAP-серверу
- Аутентификация с помощью доменных учетных записей
- Подключение по протоколу LDAP
- Интеграция с НКЦКИ
- Интеграция с Security Orchestration Automation and Response Platform (SOAR)
- Интеграция с Kaspersky Industrial CyberSecurity for Networks
- Интеграция с Neurodat SIEM IM
- Интеграция с Kaspersky Automated Security Awareness Platform
- Отправка уведомлений в Telegram
- Интеграция с UserGate
- Интеграция с Kaspersky Web Traffic Security
- Интеграция с Kaspersky Secure Mail Gateway
- Импорт информации об активах из RedCheck
- Настройка получения событий Sendmail
- Интеграция с Kaspersky Security Center
- Управление KUMA
- Работа с геоданными
- Скачивание CA-сертификатов
- Установка и удаление KUMA
- Руководство пользователя
- Ресурсы KUMA
- Операции с ресурсами
- Точки назначения
- Нормализаторы
- Правила агрегации
- Правила обогащения
- Правила корреляции
- Фильтры
- Активные листы
- Просмотр таблицы активных листов
- Добавление активного листа
- Просмотр параметров активного листа
- Изменение параметров активного листа
- Дублирование параметров активного листа
- Удаление активного листа
- Просмотр записей в активном листе
- Поиск записей в активном листе
- Добавление записи в активный лист
- Дублирование записей в активном листе
- Изменение записи в активном листе
- Удаление записей в активном листе
- Импорт данных в активный лист
- Экспорт данных из активного листа
- Предустановленные активные листы
- Прокси-серверы
- Словари
- Правила реагирования
- Шаблоны уведомлений
- Коннекторы
- Просмотр параметров коннектора
- Добавление коннектора
- Параметры коннекторов
- Коннектор, тип tcp
- Коннектор, тип udp
- Коннектор, тип netflow
- Коннектор, тип sflow
- Коннектор, тип nats-jetstream
- Коннектор, тип kafka
- Коннектор, тип kata/edr
- Коннектор, тип http
- Коннектор, тип sql
- Коннектор, тип file
- Коннектор, тип 1c-xml
- Коннектор, тип 1c-log
- [2.0] Коннектор, тип diode
- Коннектор, тип ftp
- Коннектор, тип nfs
- Коннектор, тип vmware
- Коннектор, тип wmi
- Коннектор, тип wec
- Коннектор, тип snmp
- [2.0.1] Коннектор, тип snmp-trap
- Коннектор, тип elastic
- Коннектор, тип etw
- Предустановленные коннекторы
- Секреты
- Правила сегментации
- Контекстные таблицы
- Просмотр списка контекстных таблиц
- Добавление контекстной таблицы
- Просмотр параметров контекстной таблицы
- Изменение параметров контекстной таблицы
- Дублирование параметров контекстной таблицы
- Удаление контекстной таблицы
- Просмотр записей контекстной таблицы
- Поиск записей в контекстной таблице
- Добавление записи в контекстную таблицу
- Изменение записи в контекстной таблице
- Удаление записи из контекстной таблицы
- Импорт данных в контекстную таблицу
- Экспорт данных из контекстной таблицы
- Пример расследования инцидента с помощью KUMA
- Условия возникновения инцидента
- Шаг 1. Предварительная подготовка
- Шаг 2. Назначение алерта пользователю
- Шаг 3. Проверка на соответствие между сработавшим правилом корреляции и данными событий алерта
- Шаг 4. Анализ информации об алерте
- Шаг 5. Проверка на ложное срабатывание
- Шаг 6. Определение критичности алерта
- Шаг 7. Создание инцидента
- Шаг 8. Расследование
- Шаг 9. Поиск связанных активов
- Шаг 10. Поиск связанных событий
- Шаг 11. Запись причин инцидента
- Шаг 12. Реагирование на инцидент
- Шаг 13. Восстановление работоспособности активов
- Шаг 14. Закрытие инцидента
- Аналитика
- Работа с событиями
- Фильтрация и поиск событий
- Выбор хранилища
- Формирование SQL-запроса с помощью конструктора
- Создание SQL-запроса вручную
- Фильтрация событий по периоду
- Группировка событий
- Отображение названий вместо идентификаторов
- Пресеты
- Ограничение сложности запросов в режиме расследования алерта
- Сохранение и выбор конфигураций фильтра событий
- Удаление конфигураций фильтра событий
- Поддерживаемые функции ClickHouse
- Просмотр информации о событии
- Экспорт событий
- Настройка таблицы событий
- Обновление таблицы событий
- Получение статистики по событиям в таблице
- Просмотр информации о корреляционном событии
- Фильтрация и поиск событий
- Панель мониторинга
- Отчеты
- Виджеты
- Работа с алертами
- Работа с инцидентами
- Ретроспективная проверка
- Работа с событиями
- Ресурсы KUMA
- Обращение в службу технической поддержки
- REST API
- Создание токена
- Настройка прав доступа к API
- Авторизация API-запросов
- Стандартная ошибка
- Операции REST API v1
- Просмотр списка активных листов на корреляторе
- Импорт записей в активный лист
- Поиск алертов
- Закрытие алертов
- Поиск активов
- Импорт активов
- Удаление активов
- Поиск событий
- Просмотр информации о кластере
- Поиск ресурсов
- Загрузка файла с ресурсами
- Просмотр содержимого файла с ресурсами
- Импорт ресурсов
- Экспорт ресурсов
- Скачивание файла с ресурсами
- Поиск сервисов
- Поиск тенантов
- Просмотр информации о предъявителе токена
- Обновление словаря в сервисах
- Получение словаря
- Просмотр пользовательских полей активов
- Создание резервной копии Ядра KUMA
- Восстановление Ядра KUMA из резервной копии
- Просмотр списка контекстных таблиц в корреляторе
- Импорт записей в контекстную таблицу
- Экспорт записей из контекстной таблицы
- Операции REST API v2
- Просмотр списка активных листов на корреляторе
- Импорт записей в активный лист
- Поиск алертов
- Закрытие алертов
- Поиск активов
- Импорт активов
- Удаление активов
- Поиск событий
- Просмотр информации о кластере
- Поиск ресурсов
- Загрузка файла с ресурсами
- Просмотр содержимого файла с ресурсами
- Импорт ресурсов
- Экспорт ресурсов
- Скачивание файла с ресурсами
- Поиск сервисов
- Поиск тенантов
- Просмотр информации о предъявителе токена
- Обновление словаря в сервисах
- Получение словаря
- Просмотр пользовательских полей активов
- Создание резервной копии Ядра KUMA
- Восстановление Ядра KUMA из резервной копии
- Просмотр списка контекстных таблиц в корреляторе
- Импорт записей в контекстную таблицу
- Экспорт записей из контекстной таблицы
- Операции REST API v2.1
- Приложения
- Команды для запуска и установки компонентов вручную
- Проверка целостности файлов KUMA
- Модель данных нормализованного события
- Настройка модели данных нормализованного события из KATA EDR
- Модель данных алерта
- Модель данных актива
- Модель данных учетной записи
- События аудита KUMA
- Поля событий с общей информацией
- Пользователь успешно вошел в систему или не смог войти
- Логин пользователя успешно изменен
- Роль пользователя успешно изменена
- Другие данные пользователя успешно изменены
- Пользователь успешно вышел из системы
- Пароль пользователя успешно изменен
- Пользователь успешно создан
- Пользователю успешно назначена роль
- Роль пользователя успешно отозвана
- Пользователь успешно изменил настройки набора полей для определения источников
- Токен доступа пользователя успешно изменен
- Сервис успешно создан
- Сервис успешно удален
- Сервис успешно перезагружен
- Сервис успешно перезапущен
- Сервис успешно запущен
- Сервис успешно сопряжен
- Статус сервиса изменен
- Зарегистрирован алерт Victoria Metrics для сервиса
- Пороговые значения параметров мониторинга сервисов изменены
- Раздел хранилища удален пользователем
- Раздел хранилища автоматически удален в связи с истечением срока действия
- Активный лист успешно очищен или операция завершилась с ошибкой
- Элемент активного листа успешно изменен или операция завершилась с ошибкой
- Элемент активного листа успешно удален или операция завершилась с ошибкой
- Активный лист успешно импортирован или операция завершилась с ошибкой
- Активный лист успешно экспортирован
- Ресурс успешно добавлен
- Ресурс успешно удален
- Ресурс успешно обновлен
- Актив успешно создан
- Актив успешно удален
- Категория актива успешно добавлена
- Категория актива успешно удалена
- Параметры успешно обновлены
- Тенант успешно создан
- Тенант успешно включен
- Тенант успешно выключен
- Другие данные тенанта успешно изменены
- Изменена политика хранения данных после изменения дисков
- Словарь успешно обновлен на сервисе или операция завершилась ошибкой
- Ответ в Active Directory
- Реагирование через KICS for Networks
- Реагирование через Kaspersky Automated Security Awareness Platform
- Реагирование через KEDR
- Правила корреляции
- Отправка тестовых событий в KUMA
- Формат времени
- Сопоставление полей предустановленных нормализаторов
- Устаревшие ресурсы
- Генерация событий для тестирования работы нормализатора
- Информация о стороннем коде
- Уведомления о товарных знаках
- Глоссарий
Изменение конфигурации KUMA
Доступны следующие изменения конфигурации KUMA.
- Расширение установки "все в одном" до распределенной.
Чтобы расширить установку "все в одном" до распределенной:
- Создайте резервную копию KUMA.
- Удалите с сервера предустановленные сервисы коррелятора, коллектора и хранилища.
- В веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы выберите сервис и нажмите Копировать идентификатор. На севере, где были установлены сервисы, выполните команду удаления сервиса:
sudo /opt/kaspersky/kuma/kuma <collector/correlator/storage> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --uninstall
Повторите команду удаления для каждого сервиса.
- Затем удалите сервисы в веб-интерфейсе KUMA.
В результате на сервере первоначальной установки останется только Ядро KUMA.
- В веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы выберите сервис и нажмите Копировать идентификатор. На севере, где были установлены сервисы, выполните команду удаления сервиса:
- Подготовьте файл инвентаря distributed.inventory.yml и укажите в нем сервер первоначальной установки "все в одном" в группе
kuma_core
.Таким образом Ядро KUMA останется на прежнем сервере, а остальные компоненты вы развернете на других серверах. Укажите серверы для установки компонентов KUMA в файле инвентаря.
Пример файла инвентаря для расширения установки "все в одном" до распределенной
all:
vars:
deploy_to_k8s: false
need_transfer: false
generate_etc_hosts: false
deploy_example_services: false
no_firewall_actions: false
kuma:
vars:
ansible_connection: ssh
ansible_user: root
children:
kuma_core:
hosts:
kuma-core-1.example.com:
ip: 0.0.0.0
mongo_log_archives_number: 14
mongo_log_frequency_rotation: daily
mongo_log_file_size: 1G
kuma_collector:
hosts:
kuma-collector-1.example.com:
ip: 0.0.0.0
kuma_correlator:
hosts:
kuma-correlator-1.example.com:
ip: 0.0.0.0
kuma_storage:
hosts:
kuma-storage-cluster1-server1.example.com:
ip: 0.0.0.0
shard: 1
replica: 1
keeper: 0
kuma-storage-cluster1-server2.example.com:
ip: 0.0.0.0
shard: 1
replica: 2
keeper: 0
kuma-storage-cluster1-server3.example.com:
ip: 0.0.0.0
shard: 2
replica: 1
keeper: 0
kuma-storage-cluster1-server4.example.com:
ip: 0.0.0.0
shard: 2
replica: 2
keeper: 0
kuma-storage-cluster1-server5.example.com:
ip: 0.0.0.0
shard: 0
replica: 0
keeper: 1
kuma-storage-cluster1-server6.example.com:
ip: 0.0.0.0
shard: 0
replica: 0
keeper: 2
kuma-storage-cluster1-server7.example.com:
ip: 0.0.0.0
shard: 0
replica: 0
keeper: 3
- Создайте и установите сервисы хранилища, коллектора, коррелятора и агента на других машинах.
- После того, как вы заполните в файле инвентаря distributed.inventory.yml значения параметров для всех разделов, запустите установщик на контрольной машине.
sudo ./install.sh distributed.inventory.yml
В результате выполнения команды на каждой целевой машине, указанной в файле инвентаря distributed.inventory.yml, появятся файлы, необходимые для установки компонентов KUMA: хранилища, коллекторов, корреляторов.
- Создайте сервисы хранилища, коллекторов и корреляторов.
- После того, как вы заполните в файле инвентаря distributed.inventory.yml значения параметров для всех разделов, запустите установщик на контрольной машине.
Расширение установки завершено.
- Добавление серверов для коллекторов в распределенную установку.
В следующей инструкции показано, как добавить один или несколько серверов в существующую инфраструктуру, чтобы затем установить на них коллекторы и таким образом перераспределить нагрузку. Вы можете использовать инструкцию в качестве примера и адаптировать ее под свои потребности.
Чтобы добавить серверы в распределенную установку:
- Убедитесь, что на целевых машинах соблюдены аппаратные и программные требования, а также требования к установке.
- На контрольной машине перейдите в директорию с распакованным установщиком KUMA, выполнив следующую команду:
cd kuma-ansible-installer
- Скопируйте шаблон expand.inventory.yml.template и создайте файл инвентаря с именем expand.inventory.yml:
cp expand.inventory.yml.template expand.inventory.yml
- Отредактируйте параметры файла инвентаря expand.inventory.yml и укажите в нем серверы, которые вы хотите добавить, в разделе kuma_collector.
Пример файла инвентаря expand.inventory.yml для добавления серверов для коллекторов
kuma:
vars:
ansible_connection: ssh
ansible_user: root
children:
kuma_collector:
kuma-additional-collector1.example.com
kuma-additional-collector2.example.com
kuma_correlator:
kuma_storage:
hosts:
- На контрольной машине с доступом root из папки с распакованным установщиком выполните следующую команду:
./expand.sh expand.inventory.yml
В результате выполнения команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml, появятся файлы для создания и установки коллектора.
- Создайте и установите коллекторы. Поскольку коллекторы KUMA состоят из двух частей, клиентской и серверной, вы будете создавать коллекторы в два этапа.
- Создание клиентской части коллектора, которая включает в себя набор ресурсов и сервис коллектора.
Чтобы создать набор ресурсов для коллектора, в веб-интерфейсе KUMA в разделе Ресурсы → Коллекторы нажмите Добавить коллектор и настройте параметры. Подробнее см. Создание коллектора.
На последнем шаге мастера настройки, после того, как вы нажмете Создать и сохранить, будет создан набор ресурсов для коллектора и автоматически будет создан сервис коллектора. Также будет автоматически сформирована команда для установки сервиса на сервере, она отобразится на экране. Скопируйте команду установки и переходите к следующему шагу.
- Создание серверной части коллектора.
- На целевой машине выполните скопированную на предыдущем шаге команду. Команда будет выглядеть подобным образом, но все параметры будут автоматически заполнены.
sudo /opt/kaspersky/kuma/kuma <storage> --core https://<FQDN сервера Ядра KUMA>:<порт, используемый Ядром KUMA для внутренних коммуникаций (по умолчанию используется порт 7210)> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --install
Сервис коллектора установлен на целевой машине. Вы можете проверить статус сервиса в веб-интерфейсе в разделе Ресурсы → Активные сервисы.
- Повторите выполнение команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml.
- Создание клиентской части коллектора, которая включает в себя набор ресурсов и сервис коллектора.
- Укажите добавленные серверы в файле инвентаря distributed.inventory.yml, чтобы в нем были актуальные сведения на случай обновления KUMA.
Добавление серверов завершено.
- Добавление серверов для корреляторов в распределенную установку.
В следующей инструкции показано, как добавить один или несколько серверов в существующую инфраструктуру, чтобы затем установить на них коррелятор и таким образом перераспределить нагрузку. Вы можете использовать инструкцию в качестве примера и адаптировать ее под свои потребности.
Чтобы добавить серверы в распределенную установку:
- Убедитесь, что на целевых машинах соблюдены аппаратные и программные требования, а также требования к установке.
- На контрольной машине перейдите в директорию с распакованным установщиком KUMA, выполнив следующую команду:
cd kuma-ansible-installer
- Скопируйте шаблон expand.inventory.yml.template и создайте файл инвентаря с именем expand.inventory.yml:
cp expand.inventory.yml.template expand.inventory.yml
- Отредактируйте параметры файла инвентаря expand.inventory.yml и укажите в нем серверы, которые вы хотите добавить, в разделе kuma_correlator.
Пример файла инвентаря expand.inventory.yml для добавления серверов для корреляторов
kuma:
vars:
ansible_connection: ssh
ansible_user: root
children:
kuma_collector:
kuma_correlator:
kuma-additional-correlator1.example.com
kuma-additional-correlator2.example.com
kuma_storage:
hosts:
- На контрольной машине с доступом root из папки с распакованным установщиком выполните следующую команду:
./expand.sh expand.inventory.yml
В результате выполнения команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml, появятся файлы для создания и установки коррелятора.
- Создайте и установите корреляторы. Поскольку корреляторы KUMA состоят из двух частей, клиентской и серверной, вы будете создавать корреляторы в два этапа.
- Создание клиентской части коррелятора, которая включает в себя набор ресурсов и сервис коллектора.
Чтобы создать набор ресурсов для коррелятора, в веб-интерфейсе KUMA в разделе Ресурсы → Корреляторы нажмите Добавить коррелятор и настройте параметры. Подробнее см. Создание коррелятора.
На последнем шаге мастера настройки, после того, как вы нажмете Создать и сохранить, будет создан набор ресурсов для коррелятора и автоматически будет создан сервис коррелятора. Также будет автоматически сформирована команда для установки сервиса на сервере — команда отобразится на экране. Скопируйте команду установки и переходите к следующему шагу.
- Создание серверной части коррелятора.
- На целевой машине выполните скопированную на предыдущем шаге команду. Команда будет выглядеть подобным образом, но все значения всех параметров будут автоматически присвоены.
sudo /opt/kaspersky/kuma/kuma <storage> --core https://<FQDN сервера Ядра KUMA>:<порт, используемый Ядром KUMA для внутренних коммуникаций (по умолчанию используется порт 7210)> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --install
Сервис коррелятора установлен на целевой машине. Вы можете проверить статус сервиса в веб-интерфейсе в разделе Ресурсы → Активные сервисы.
- Повторите выполнение команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml.
- Создание клиентской части коррелятора, которая включает в себя набор ресурсов и сервис коллектора.
- Укажите добавленные серверы в файле инвентаря distributed.inventory.yml, чтобы в нем были актуальные сведения на случай обновления KUMA.
Добавление серверов завершено.
- Добавление серверов в существующий кластер хранения.
В следующей инструкции показано, как добавить несколько серверов в существующий кластер хранения. Вы можете использовать инструкцию в качестве примера и адаптировать ее под свои потребности.
Чтобы добавить серверы в существующий кластер хранения:
- Убедитесь, что на целевых машинах соблюдены аппаратные и программные требования, а также требования к установке.
- На контрольной машине перейдите в директорию с распакованным установщиком KUMA, выполнив следующую команду:
cd kuma-ansible-installer
- Скопируйте шаблон expand.inventory.yml.template и создайте файл инвентаря с именем expand.inventory.yml:
cp expand.inventory.yml.template expand.inventory.yml
- Отредактируйте параметры файла инвентаря expand.inventory.yml и укажите в нем серверы, которые вы хотите добавить, в разделе storage. В следующем примере в разделе storage указаны серверы для установки двух шардов, каждый из которых будет содержать по две реплики. В файле инвентаря expand.inventory.yml следует указать только FQDN, роли шардов и реплик вы будете назначать позднее в веб-интерфейсе KUMA, последовательно выполняя шаги инструкции. Вы можете адаптировать этот пример под свои потребности.
Пример файла инвентаря expand.inventory.yml для добавления серверов в существующий кластер хранения
kuma:
vars:
ansible_connection: ssh
ansible_user: root
children:
kuma_collector:
kuma_correlator:
kuma_storage:
hosts:
kuma-storage-cluster1-server8.example.com
kuma-storage-cluster1-server9.example.com
kuma-storage-cluster1-server10.example.com
kuma-storage-cluster1-server11.example.com
- На контрольной машине с доступом root из папки с распакованным установщиком выполните следующую команду:
./expand.sh expand.inventory.yml
В результате выполнения команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml, появятся файлы для создания и установки хранилища.
- Поскольку вы добавляете сервера в существующий кластер хранения, создавать отдельное хранилище уже не нужно. Вам нужно будет отредактировать параметры хранилища существующего кластера:
- В разделе Ресурсы → Хранилища выберите существующее хранилище и откройте хранилище для редактирования.
- В разделе Узлы кластера ClickHouse нажмите Добавить узлы и в появившихся полях для нового узла укажите роли. В следующем примере показано, как указать идентификаторы, чтобы добавить в существующий кластер два шарда, каждый из которых содержит две реплики. Вы можете адаптировать пример под свои потребности.
Пример:
Узлы кластера ClickHouse
<существующие узлы>
Полное доменное имя: kuma-storage-cluster1server8.example.com
Идентификатор шарда: 1
Идентификатор реплики: 1
Идентификатор кипера: 0
Полное доменное имя: kuma-storage-cluster1server9.example.com
Идентификатор шарда: 1
Идентификатор реплики: 2
Идентификатор кипера: 0
Полное доменное имя: kuma-storage-cluster1server9.example.com
Идентификатор шарда: 2
Идентификатор реплики: 1
Идентификатор кипера: 0
Полное доменное имя: kuma-storage-cluster1server10.example.com
Идентификатор шарда: 2
Идентификатор реплики: 2
Идентификатор кипера: 0
- Сохраните параметры хранилища.
Теперь можно создать сервисы хранилища для каждого узла кластера ClickHouse.
- Чтобы создать сервис хранилища, в веб веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы нажмите Добавить сервис.
В открывшемся окне Выберите сервис выберите отредактированное на предыдущем шаге хранилище и нажмите Создать сервис. Повторите для каждого добавляемого узла хранилища ClickHouse.
В результате количество созданных сервисов должно равняться количеству добавляемых узлов в кластере ClickHouse, то есть четыре узла - четыре сервиса. Созданные сервисы хранилища отображаются в веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы. Теперь сервисы хранилища необходимо установить на каждом сервере, используя идентификатор сервиса.
- Теперь сервисы хранилища необходимо установить на каждом сервере, используя идентификатор сервиса.
- В веб-интерфейсе KUMA Ресурсы → Активные сервисы выберите нужный сервис хранилища и нажмите Копировать идентификатор.
Идентификатор сервиса будет скопирован в буфер обмена, он понадобится для выполнения команды установки сервиса.
- Сформируйте и выполните на целевой машине следующую команду:
sudo /opt/kaspersky/kuma/kuma <storage> --core https://<FQDN сервера Ядра KUMA>:<порт, используемый Ядром KUMA для внутренних коммуникаций (по умолчанию используется порт 7210)> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --install
Сервис хранилища установлен на целевой машине. Вы можете проверить статус сервиса в веб-интерфейсе в разделе Ресурсы → Активные сервисы.
- Последовательно выполните команду установки сервиса хранилища на каждой целевой машине, указанной в разделе storage в файле инвентаря expand.inventory.yml. На каждой машине в команде установки следует указывать уникальный идентификатор сервиса в рамках кластера.
- В веб-интерфейсе KUMA Ресурсы → Активные сервисы выберите нужный сервис хранилища и нажмите Копировать идентификатор.
- Чтобы применить изменения в работающем кластере, в веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы установите флажок рядом со всеми сервисами хранилища в кластере, который вы расширяете, и нажмите Обновить параметры. Изменения будут применены без остановки сервисов.
- Укажите добавленные серверы в файле инвентаря distributed.inventory.yml, чтобы в нем были актуальные сведения на случай обновления KUMA.
Добавление серверов в кластер хранения завершено.
- Добавление дополнительного кластера хранения.
В следующей инструкции показано, как добавить дополнительный кластер хранения в существующую инфраструктуру. Вы можете использовать инструкцию в качестве примера и адаптировать ее под свои потребности.
Чтобы добавить дополнительный кластер хранения:
- Убедитесь, что на целевых машинах соблюдены аппаратные и программные требования, а также требования к установке.
- На контрольной машине перейдите в директорию с распакованным установщиком KUMA, выполнив следующую команду:
cd kuma-ansible-installer
- Скопируйте шаблон expand.inventory.yml.template и создайте файл инвентаря с именем expand.inventory.yml:
cp expand.inventory.yml.template expand.inventory.yml
- Отредактируйте параметры файла инвентаря expand.inventory.yml и укажите в нем серверы, которые вы хотите добавить, в разделе storage. В следующем примере в разделе storage указаны серверы для установки трех выделенных киперов и двух шардов, каждый из которых будет содержать по две реплики. В файле инвентаря expand.inventory.yml следует указать только FQDN, роли киперов, шардов и реплик вы будете назначать позднее в веб-интерфейсе KUMA, последовательно выполняя шаги инструкции. Вы можете адаптировать этот пример под свои потребности.
Пример файла инвентаря expand.inventory.yml для добавления дополнительного кластера хранения
kuma:
vars:
ansible_connection: ssh
ansible_user: root
children:
kuma_collector:
kuma_correlator:
kuma_storage:
hosts:
kuma-storage-cluster2-server1.example.com
kuma-storage-cluster2-server2.example.com
kuma-storage-cluster2-server3.example.com
kuma-storage-cluster2-server4.example.com
kuma-storage-cluster2-server5.example.com
kuma-storage-cluster2-server6.example.com
kuma-storage-cluster2-server7.example.com
- На контрольной машине с доступом root из папки с распакованным установщиком выполните следующую команду:
./expand.sh expand.inventory.yml
В результате выполнения команды на каждой целевой машине, указанной в файле инвентаря expand.inventory.yml, появятся файлы для создания и установки хранилища.
- Создайте и установите хранилище. Для каждого кластера хранения следует создавать отдельное хранилище, то есть три кластера хранения - три хранилища. Поскольку хранилище состоит из двух частей, клиентской и серверной, вы будете создавать хранилище в два этапа.
- Создание клиентской части хранилища, которая включает в себя набор ресурсов и сервис хранилища.
- Чтобы создать набор ресурсов для хранилища, в веб-интерфейсе KUMA в разделе Ресурсы → Хранилища нажмите Добавить хранилище и настройте параметры. В разделе Узлы кластера ClickHouse укажите роли для каждого добавляемого сервера: кипер, шард, реплика. Подробнее см. Создание набора ресурсов для хранилища.
Созданный набор ресурсов для хранилища отображается в разделе Ресурсы → Хранилища. Теперь можно создать сервисы хранилища для каждого узла кластера ClickHouse.
- Чтобы создать сервис хранилища, в веб веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы нажмите Добавить сервис.
В открывшемся окне Выберите сервис выберите созданный на шаге a. набор ресурсов для хранилища и нажмите Создать сервис. Повторите для каждого узла хранилища ClickHouse.
В результате количество созданных сервисов должно равняться количеству узлов в кластере ClickHouse, то есть пятьдесят узлов - пятьдесят сервисов. Созданные сервисы хранилища отображаются в веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы. Теперь сервисы хранилища необходимо установить на каждом узле кластера ClickHouse, используя идентификатор сервиса.
- Чтобы создать набор ресурсов для хранилища, в веб-интерфейсе KUMA в разделе Ресурсы → Хранилища нажмите Добавить хранилище и настройте параметры. В разделе Узлы кластера ClickHouse укажите роли для каждого добавляемого сервера: кипер, шард, реплика. Подробнее см. Создание набора ресурсов для хранилища.
- Создание серверной части хранилища.
- На целевой машине создайте серверную часть хранилища: в веб-интерфейсе KUMA Ресурсы → Активные сервисы выберите нужный сервис хранилища и нажмите Копировать идентификатор.
Идентификатор сервиса будет скопирован в буфер обмена, он понадобится для выполнения команды установки сервиса.
- Сформируйте и выполните на целевой машине следующую команду:
sudo /opt/kaspersky/kuma/kuma <storage> --core https://<FQDN сервера Ядра KUMA>:<порт, используемый Ядром KUMA для внутренних коммуникаций (по умолчанию используется порт 7210)> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --install
Сервис хранилища установлен на целевой машине. Вы можете проверить статус сервиса в веб-интерфейсе в разделе Ресурсы → Активные сервисы.
- Последовательно выполните команду установки сервиса хранилища на каждой целевой машине, указанной в разделе storage в файле инвентаря expand.inventory.yml. На каждой машине в команде установки следует указывать уникальный идентификатор сервиса в рамках кластера.
- Выделенные киперы запускаются автоматически сразу после установки и отображаются в разделе Ресурсы → Активные сервисы в зеленом статусе. Сервисы на остальных узлах хранилища могут не запускаться до тех пор, пока не будут установлены сервисы для всех узлов данного кластера. До этого момента сервисы могут отображаться в красном статусе. Это нормальное поведение для создания нового кластера хранения или добавления узлов в существующий кластер хранения. Как только будет выполнена команда установки сервисов на всех узлах кластера, все сервисы переходят в зеленый статус.
- Создание клиентской части хранилища, которая включает в себя набор ресурсов и сервис хранилища.
- Укажите добавленные серверы в файле инвентаря distributed.inventory.yml, чтобы в нем были актуальные сведения на случай обновления KUMA.
Добавление дополнительного кластера хранения завершено.
- Удаление серверов из распределенной установки.
Чтобы удалить сервер из распределенной установки:
- Удалите все сервисы с сервера, который вы планируете удалить из распределенной установки.
- Удалите серверную часть сервиса. Скопируйте в веб-интерфейсе KUMA идентификатор сервиса и запустите на целевой машине следующую команду:
sudo /opt/kaspersky/kuma/kuma <collector/correlator/storage> --core https://<FQDN сервера Ядра KUMA>:<порт, используемый ядром KUMA для внутренних коммуникаций (по умолчанию используется порт 7210)> --id <идентификатор сервиса, скопированный из веб-интерфейса KUMA> --uninstall
- Удалите клиентскую часть сервиса в веб-интерфейсе KUMA в разделе Активные сервисы – Удалить.
Сервис удален.
- Удалите серверную часть сервиса. Скопируйте в веб-интерфейсе KUMA идентификатор сервиса и запустите на целевой машине следующую команду:
- Повторите шаг 1 для каждого сервера, который вы хотите удалить из инфраструктуры.
- Удалите серверы из соответствующих разделов файла инвентаря distributed.inventory.yml, чтобы в файле инвентаря были актуальные сведения на случай обновления KUMA.
Серверы удалены из распределенной установки.
- Удалите все сервисы с сервера, который вы планируете удалить из распределенной установки.
- Удаление кластера хранения из распределенной установки.
Чтобы удалить один или несколько кластеров хранения из распределенной установки:
- Удалите сервис хранилища на каждом сервере кластера, подлежащем удалению из распределенной установки.
- Удалите серверную часть сервиса хранилища. Скопируйте в веб-интерфейсе KUMA идентификатор сервиса и запустите на целевой машине следующую команду:
sudo /opt/kaspersky/kuma/kuma <storage> --id <идентификатор сервиса> --uninstall
Повторите для каждого сервера.
- Удалите клиентскую часть сервиса в веб-интерфейсе KUMA в разделе Ресурсы → Активные сервисы → Удалить.
Сервис удален.
- Удалите серверную часть сервиса хранилища. Скопируйте в веб-интерфейсе KUMA идентификатор сервиса и запустите на целевой машине следующую команду:
- Удалите серверы из раздела storage в файле инвентаря distributed.inventory.yml, чтобы в файле инвентаря были актуальные сведения на случай обновления KUMA или изменения конфигурации.
Кластер удален из распределенной установки.
- Удалите сервис хранилища на каждом сервере кластера, подлежащем удалению из распределенной установки.
- Перенос Ядра KUMA в новый кластер Kubernetes.
Чтобы перенести Ядро KUMA в новый кластер Kubernetes, выполните следующие шаги:
- Подготовьте файл инвентаря k0s.inventory.yml.
В файле инвентаря k0s.inventory.yml в разделах kuma_core, kuma_ collector, kuma_correlator, kuma_storage укажите те же хосты, которые использовались при обновлении KUMA с версии 2.1.3 до версии 3.0.3, и затем до версии 3.2, или при новой установке программы. В файле инвентаря необходимо присвоить параметрам deploy_to_k8s и need_transfer значение true. Параметру deploy_example_services необходимо присвоить значение false.
- Выполните шаги распределенной установки с использованием подготовленного файла инвентаря k0s.inventory.yml.
Процесс переноса Ядра KUMA в новый кластер Kubernetes
При запуске установщика с файлом инвентаря производится поиск установленного Ядра KUMA на всех хостах, на которых планируется размещать рабочие узлы кластера. Найденное Ядро будет перенесено с хоста внутрь создаваемого кластера Kubernetes.
Устранение ошибки невозможности переноса Ядра KUMA
Перенос Ядра KUMA с хоста в новый кластер Kubernetes может прерываться из-за превышения времени ожидания на шаге
Deploy Core transfer job
. После этого в журнале задач переноса core-transfer появится следующая запись об ошибке:cp: can't stat '/mnt/kuma-source/core/.lic': No such file or directory
Чтобы предотвратить появление ошибки до начала переноса Ядра KUMA:
- Перейдите в папку с распакованным установщиком и откройте файл roles/k0s_prepare/templates/core-transfer-job.yaml.j2 для изменения.
- В файле core-transfer-job.yaml.j2 найдите следующие строки:
cp /mnt/kuma-source/core/.lic {{ core_k0s_home }}/ &&
cp /mnt/kuma-source/core/.tenantsEPS {{ core_k0s_home }}/ &&
- Измените эти строки следующим образом с сохранением отступов, задающихся пробелами:
cp /mnt/kuma-source/core/{{ core_uid }}/.lic {{ core_k0s_home }}/ &&
cp /mnt/kuma-source/core/{{ core_uid }}/.tenantsEPS {{ core_k0s_home }}/ &&
- Сохраните изменения в файле.
После этого вы можете повторно запустить распределенную установку с использованием подготовленного файла инвентаря k0s.inventory.yml. Перенос Ядра KUMA с хоста в новый кластер Kubernetes будет выполнен успешно.
Если вы начали перенос Ядра KUMA с хоста в новый кластер Kubernetes и он завершился с ошибкой, вам нужно выполнить шаги ниже, чтобы исправить ошибку.
Чтобы исправить ошибку после попытки переноса Ядра KUMA с хоста в новый кластер Kubernetes:
- На любом контроллере кластера удалите объект Ingress, выполнив следующую команду:
sudo k0s kubectl delete daemonset/ingress -n ingress
- Проверьте, существует ли задача переноса в кластере:
sudo k0s kubectl get jobs -n kuma
- Если задача переноса существует, удалите ее:
sudo k0s kubectl delete job core-transfer -n kuma
- Перейдите в консоль хоста из группы kuma_core.
- Запустите сервисы Ядра KUMA, выполнив следующие команды:
sudo systemctl start kuma-mongodb
sudo systemctl start kuma-core-00000000-0000-0000-0000-000000000000
- Убедитесь, что сервис kuma-core-00000000-0000-0000-0000-000000000000 запущен успешно:
sudo systemctl status kuma-core-00000000-0000-0000-0000-000000000000
- Убедитесь, что из группы kuma_core есть доступ в интерфейс KUMA по FQDN хоста.
Другие хосты при этом могут быть остановлены.
- Перейдите в папку с распакованным установщиком и откройте файл roles/k0s_prepare/templates/core-transfer-job.yaml.j2 для изменения.
- В файле core-transfer-job.yaml.j2 найдите следующие строки:
cp /mnt/kuma-source/core/.lic {{ core_k0s_home }}/ &&
cp /mnt/kuma-source/core/.tenantsEPS {{ core_k0s_home }}/ &&
- Измените эти строки следующим образом с сохранением отступов, задающихся пробелами:
cp /mnt/kuma-source/core/{{ core_uid }}/.lic {{ core_k0s_home }}/ &&
cp /mnt/kuma-source/core/{{ core_uid }}/.tenantsEPS {{ core_k0s_home }}/ &&
- Сохраните изменения в файле.
После этого вы можете повторно запустить распределенную установку с использованием подготовленного файла инвентаря k0s.inventory.yaml. Перенос Ядра KUMA с хоста в новый кластер Kubernetes будет выполнен успешно.
Если на рабочих узлах компонент не обнаружен, то производится чистая установка Ядра KUMA в кластер без переноса в него ресурсов. Существующие компоненты требуется пересоздать с новым Ядром вручную в веб-интерфейсе KUMA.
Для коллекторов, корреляторов и хранилищ из файла инвентаря будут заново выпущены сертификаты для связи с Ядром внутри кластера. URL Ядра для компонентов при этом не изменится.
На хосте с Ядром установщик выполняет следующие действия:
- Удаляет с хоста systemd-сервисы: kuma-core, kuma-mongodb, kuma-victoria-metrics, kuma-vmalert, kuma-grafana.
- Удаляет internal сертификат Ядра.
- Удаляет файлы сертификатов всех прочих компонентов и удаляет записи о них из MongoDB.
- Удаляет директории:
- /opt/kaspersky/kuma/core/bin
- /opt/kaspersky/kuma/core/certificates
- /opt/kaspersky/kuma/core/log
- /opt/kaspersky/kuma/core/logs
- /opt/kaspersky/kuma/grafana/bin
- /opt/kaspersky/kuma/mongodb/bin
- /opt/kaspersky/kuma/mongodb/log
- /opt/kaspersky/kuma/victoria-metrics/bin
- Переносит данные Ядра и ее зависимостей на сетевой диск внутри кластера Kubernetes.
- На хосте с Ядром переносит директории:
- /opt/kaspersky/kuma/core → /opt/kaspersky/kuma/core.moved
- /opt/kaspersky/kuma/grafana → /opt/kaspersky/kuma/grafana.moved
- /opt/kaspersky/kuma/mongodb → /opt/kaspersky/kuma/mongodb.moved
- /opt/kaspersky/kuma/victoria-metrics → /opt/kaspersky/kuma/victoria-metrics.moved
После проверки корректности переноса Ядра в кластер данные директории можно удалить.
В случае возникновения проблем с переносом нужно проанализировать в журнале записи задачи переноса core-transfer в пространстве имен kuma на кластере (задача доступна в течение 1 часа после переноса).
При необходимости повторного переноса необходимо привести названия директорий /opt/kaspersky/kuma/*.moved к их исходному виду.
Если на хосте с Ядром использовался файл /etc/hosts со строками, не относящимися к адресам 127.X.X.X, при переносе Ядра в кластер Kubernetes содержимое файла /etc/hosts с хоста с Ядром заносится в ConfigMap coredns. Если переноса Ядра не происходит, в ConfigMap заносится содержимое /etc/hosts с хоста, на котором разворачивается главный контроллер.
- Подготовьте файл инвентаря k0s.inventory.yml.