Kaspersky Unified Monitoring and Analysis Platform
- Справка Kaspersky Unified Monitoring and Analysis Platform
- О программе Kaspersky Unified Monitoring and Analysis Platform
- Архитектура программы
- Лицензирование программы
- Руководство администратора
- Установка и удаление KUMA
- Требования к установке программы
- Порты, используемые KUMA при установке
- Синхронизация времени на серверах
- О файле инвентаря
- Установка на одном сервере
- Распределенная установка
- Распределенная установка в отказоустойчивой конфигурации
- Резервное копирование KUMA
- Изменение конфигурации KUMA
- Обновление предыдущих версий KUMA
- Устранение ошибок при обновлении
- Удаление KUMA
- Работа с тенантами
- Управление пользователями
- Сервисы KUMA
- Инструменты сервисов
- Наборы ресурсов для сервисов
- Создание хранилища
- Создание коррелятора
- Создание коллектора
- Предустановленные коллекторы
- Создание агента
- Настройка источников событий
- Настройка получения событий Auditd
- Настройка получения событий KATA/EDR
- Настройка получения событий Kaspersky Security Center в формате CEF
- Настройка получения событий 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)
- Настройка получения событий PostgreSQL
- Настройка получения событий ИВК Кольчуга-К
- Настройка получения событий КриптоПро NGate
- Настройка получения событий Ideco UTM
- Настройка получения событий KWTS
- Настройка получения событий KLMS
- Настройка получения событий KSMG
- Настройка получения событий PT NAD
- Настройка получения событий c помощью плагина MariaDB Audit Plugin
- Настройка получения событий СУБД Apache Cassandra
- Настройка получения событий FreeIPA
- Настройка получения событий VipNet TIAS
- Настройка получения событий Sendmail
- Настройка получения событий Nextcloud
- Настройка получения событий Snort
- Настройка получения событий Suricata
- Настройка получения событий FreeRADIUS
- Настройка получения событий zVirt
- Настройка получения событий Zeek IDS
- Мониторинг источников событий
- Управление активами
- Добавление категории активов
- Настройка таблицы активов
- Поиск активов
- Экспорт данных об активах
- Просмотр информации об активе
- Добавление активов
- Назначение активу категории
- Изменение параметров активов
- Удаление активов
- Обновление программ сторонних производителей и закрытие уязвимостей на активах 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 Vision Incident Response Platform
- Интеграция с Kaspersky Industrial CyberSecurity for Networks
- Интеграция с Kaspersky Automated Security Awareness Platform
- Отправка уведомлений в Telegram
- Интеграция с UserGate
- Интеграция с Kaspersky Web Traffic Security
- Интеграция с Kaspersky Secure Mail Gateway
- Импорт информации об активах из RedCheck
- Интеграция с Kaspersky Security Center
- Управление KUMA
- Работа в режиме иерархии
- Работа с геоданными
- Установка и удаление KUMA
- Руководство пользователя
- Ресурсы KUMA
- Операции с ресурсами
- Точки назначения
- Работа с событиями
- Фильтрация и поиск событий
- Выбор хранилища
- Формирование SQL-запроса с помощью конструктора
- Создание SQL-запроса вручную
- Фильтрация событий по периоду
- Отображение названий вместо идентификаторов
- Пресеты
- Ограничение сложности запросов в режиме расследования алерта
- Сохранение и выбор конфигураций фильтра событий
- Удаление конфигураций фильтра событий
- Поддерживаемые функции ClickHouse
- Просмотр информации о событии
- Экспорт событий
- Настройка таблицы событий
- Обновление таблицы событий
- Получение статистики по событиям в таблице
- Просмотр информации о корреляционном событии
- Фильтрация и поиск событий
- Нормализаторы
- Правила агрегации
- Правила обогащения
- Правила корреляции
- Фильтры
- Активные листы
- Просмотр таблицы активных листов
- Добавление активного листа
- Просмотр параметров активного листа
- Изменение параметров активного листа
- Дублирование параметров активного листа
- Удаление активного листа
- Просмотр записей в активном листе
- Поиск записей в активном листе
- Добавление записи в активный лист
- Дублирование записей в активном листе
- Изменение записи в активном листе
- Удаление записей в активном листе
- Импорт данных в активный лист
- Экспорт данных из активного листа
- Предустановленные активные листы
- Словари
- Правила реагирования
- Шаблоны уведомлений
- Коннекторы
- Секреты
- Правила сегментации
- Пример расследования инцидента с помощью KUMA
- Условия возникновения инцидента
- Шаг 1. Предварительная подготовка
- Шаг 2. Назначение алерта пользователю
- Шаг 3. Проверка на соответствие между сработавшим правилом корреляции и данными событий алерта
- Шаг 4. Анализ информации об алерте
- Шаг 5. Проверка на ложное срабатывание
- Шаг 6. Определение критичности алерта
- Шаг 7. Создание инцидента
- Шаг 8. Расследование
- Шаг 9. Поиск связанных активов
- Шаг 10. Поиск связанных событий
- Шаг 11. Запись причин инцидента
- Шаг 12. Реагирование на инцидент
- Шаг 13. Восстановление работоспособности активов
- Шаг 14. Закрытие инцидента
- Аналитика
- Панель мониторинга
- Отчеты
- Виджеты
- Работа с алертами
- Работа с инцидентами
- О таблице инцидентов
- Сохранение и выбор конфигураций фильтра инцидентов
- Удаление конфигураций фильтра инцидентов
- Просмотр информации об инциденте
- Создание инцидента
- Обработка инцидентов
- Изменение инцидентов
- Автоматическая привязка алертов к инцидентам
- Категории и типы инцидентов
- Взаимодействие с НКЦКИ
- Особенности экспорта в НКЦКИ из иерархической структуры KUMA
- Экспорт данных в НКЦКИ
- Дополнение данных об инциденте по запросу
- Отправка файлов в НКЦКИ
- Отправка в НКЦКИ инцидентов, связанных с утечкой персональных данных
- Обмен сообщениями с сотрудниками НКЦКИ
- Допустимые категории и типы инцидентов НКЦКИ
- Уведомления об изменении статуса инцидента в НКЦКИ
- Ретроспективная проверка
- Ресурсы KUMA
- Обращение в службу технической поддержки
- REST API
- Создание токена
- Настройка прав доступа к API
- Авторизация API-запросов
- Стандартная ошибка
- Операции
- Просмотр списка активных листов на корреляторе
- Импорт записей в активный лист
- Поиск алертов
- Закрытие алертов
- Поиск активов
- Импорт активов
- Удаление активов
- Поиск событий
- Просмотр информации о кластере
- Поиск ресурсов
- Загрузка файла с ресурсами
- Просмотр содержимого файла с ресурсами
- Импорт ресурсов
- Экспорт ресурсов
- Скачивание файла с ресурсами
- Поиск сервисов
- Поиск тенантов
- Просмотр информации о предъявителе токена
- Обновление словаря в сервисах
- Получение словаря
- Просмотр пользовательских полей активов
- Создание резервной копии Ядра KUMA
- Восстановление Ядра KUMA из резервной копии
- Приложения
- Команды для запуска и установки компонентов вручную
- Проверка целостности файлов KUMA
- Модель данных нормализованного события
- Модель данных алерта
- Модель данных актива
- Модель данных учетной записи
- События аудита KUMA
- Поля событий с общей информацией
- Пользователь успешно вошел в систему или не смог войти
- Логин пользователя успешно изменен
- Роль пользователя успешно изменена
- Другие данные пользователя успешно изменены
- Пользователь успешно вышел из системы
- Пароль пользователя успешно изменен
- Пользователь успешно создан
- Пользователю успешно назначена роль
- Роль пользователя успешно отозвана
- Токен доступа пользователя успешно изменен
- Сервис успешно создан
- Сервис успешно удален
- Сервис успешно перезагружен
- Сервис успешно перезапущен
- Сервис успешно запущен
- Сервис успешно сопряжен
- Статус сервиса изменен
- Раздел хранилища удален пользователем
- Раздел хранилища автоматически удален в связи с истечением срока действия
- Активный лист успешно очищен или операция завершилась с ошибкой
- Элемент активного листа успешно изменен или операция завершилась с ошибкой
- Элемент активного листа успешно удален или операция завершилась с ошибкой
- Активный лист успешно импортирован или операция завершилась с ошибкой
- Активный лист успешно экспортирован
- Ресурс успешно добавлен
- Ресурс успешно удален
- Ресурс успешно обновлен
- Актив успешно создан
- Актив успешно удален
- Категория актива успешно добавлена
- Категория актива успешно удалена
- Параметры успешно обновлены
- Тенант успешно создан
- Тенант успешно включен
- Тенант успешно выключен
- Другие данные тенанта успешно изменены
- Изменена политика хранения данных после изменения дисков
- Словарь успешно обновлен на сервисе или операция завершилась ошибкой
- Ответ в 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 в файле инвентаря.
Пример файла инвентаря для расширения установки "все в одном" до распределенной
- Создайте и установите сервисы хранилища, коллектора, коррелятора и агента на других машинах.
- После того, как вы заполните в файле инвентаря 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 для добавления серверов для коллекторов
- На контрольной машине с доступом root из папки с распакованным установщиком запустите expand.inventory.playbook с помощью следующей команды:
PYTHONPATH="$(pwd)/ansible/site-packages:${PYTHONPATH}" python3 ./ansible/bin/ansible-playbook -i expand.inventory.yml expand.inventory.playbook.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 для добавления серверов для корреляторов
- На контрольной машине с доступом root из папки с распакованным установщиком запустите expand.inventory.playbook с помощью следующей команды:
PYTHONPATH="$(pwd)/ansible/site-packages:${PYTHONPATH}" python3 ./ansible/bin/ansible-playbook -i expand.inventory.yml expand.inventory.playbook.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 для добавления серверов в существующий кластер хранения
- На контрольной машине с доступом root из папки с распакованным установщиком запустите expand.inventory.playbook с помощью следующей команды:
PYTHONPATH="$(pwd)/ansible/site-packages:${PYTHONPATH}" python3 ./ansible/bin/ansible-playbook -i expand.inventory.yml expand.inventory.playbook.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 для добавления дополнительного кластера хранения
- На контрольной машине с доступом root из папки с распакованным установщиком запустите expand.inventory.playbook с помощью следующей команды:
PYTHONPATH="$(pwd)/ansible/site-packages:${PYTHONPATH}" python3 ./ansible/bin/ansible-playbook -i expand.inventory.yml expand.inventory.playbook.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.template.
Используемый файл инвентаря в секциях
kuma_core
,kuma_ collector
,kuma_correlator
,kuma_storage
должен содержать те же хосты, которые использовались при обновлении KUMA с версии 2.0.x до версии 2.1 или при новой установке программы. В файле инвентаря необходимо присвоить параметрамdeploy_to_k8s
,need_transfer
иairgap
значениеtrue
. Параметруdeploy_example_services
необходимо присвоить значениеfalse
.Пример файла инвентаря с 1 выделенным контроллером и 2 рабочими узлами
all:
vars:
ansible_connection: ssh
ansible_user: root
deploy_to_k8s: True
need_transfer: True
airgap: True
deploy_example_services: False
kuma:
children:
kuma_core:
hosts:
kuma.example.com:
mongo_log_archives_number: 14
mongo_log_frequency_rotation: daily
mongo_log_file_size: 1G
kuma_collector:
hosts:
kuma.example.com:
kuma_correlator:
hosts:
kuma.example.com:
kuma_storage:
hosts:
kuma.example.com:
shard: 1
replica: 1
keeper: 1
kuma_k0s:
children:
kuma_control_plane_master:
hosts:
kuma2.example.com:
ansible_host: 10.0.1.10
kuma_control_plane_master_worker:
kuma_control_plane:
kuma_control_plane_worker:
kuma_worker:
hosts:
kuma.example.com:
ansible_host: 10.0.1.11
extra_args: "--labels=kaspersky.com/kuma-core=true,kaspersky.com/kuma-ingress=true,node.longhorn.io/create-default-disk=true"
kuma3.example.com:
ansible_host: 10.0.1.12
extra_args: "--labels=kaspersky.com/kuma-core=true,kaspersky.com/kuma-ingress=true,node.longhorn.io/create-default-disk=true"
Процесс переноса Ядра KUMA в новый кластер Kubernetes
При запуске установщика с таким файлом шаблона производится поиск установленного Ядра 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/grafana
- /opt/kaspersky/kuma/mongodb
- /opt/kaspersky/kuma/victoria-metrics
в директории:
- /opt/kaspersky/kuma/core.moved
- /opt/kaspersky/kuma/grafana.moved
- /opt/kaspersky/kuma/mongodb.moved
- /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 с хоста, на котором разворачивается главный контроллер.