Skip to main content

Обновление/Установка KUMA версии от 2.1.Х

  1. Создайте резервную копию ресурсов и сертификатов, см. советующий раздел в этой книге.
  2. Распакуйте архив (операции выполняются на ядре системы KUMA): tar -xvf kuma-ansible-installer-(ВЕРСИЯ).tar.gz
  3. Перейдите в распакованную папку: cd kuma-ansible-installer
  4. Добавить файл лицензии в папку kuma-ansible-installer/roles/kuma/files и переименовать на license.key: cp ПУТЬ_ДО_КЛЮЧА*.key roles/kuma/files/license.key
  5. Выполните команду копирования шаблона (либо подставьте ранее использованный файл single или distributed при обновлении, в случае первичной установки смотрите пример заполенения тут): cp distributed.inventory.yml.template distributed.inventory.yml
  6. ВАЖНО! Регистр написания хостнеймов в inventory должен совпадать с выводом значения на хостах команды hostname -f
  7. ВАЖНО! Хостнейм при команде hostname -f должен содержать хотя бы одну точку, пример: kuma.local
  8. На серверах хранилищ, где используется роль Keeper, включите использование ipv6.
    ВАЖНО! С сервера хранилища до ядра должен быть доступен 7220 порт.
  9. Измените конфигурацию сервиса хранилища /usr/lib/systemd/system/kuma-storage-<ID хранилища>.service пропишите: 
    • TimeoutSec=57600
    • systemctl daemon-reload
  10. При наличии доменных пользователей в системе выполните следующие команды:
    • /opt/kaspersky/kuma/mongodb/bin/mongo localhost/kuma
    • db.users.updateMany({"accessMatrix":null},{$set: {"accessMatrix":{ "GET /resources" : false, "POST /resources/export" : false, "GET /services" : false, "POST /dictionaries/update" : false, "GET /assets" : false, "GET /dictionaries" : false, "POST /assets/import" : false, "POST /resources/upload" : false, "GET /users/whoami" : false, "GET /alerts" : false, "POST /events" : false, "GET /resources/download/:id" : false, "POST /alerts/close" : false, "GET /events/clusters" : false, "POST /resources/import" : false, "GET /activeLists" : false, "GET /tenants" : false, "POST /assets/delete" : false, "POST /resources/toc" : false, "POST /activeLists/import" : false}}})
    • systemctl restart kuma-core
  11. Активируйте (если он деактивирован) пользователя по умолчанию admin в веб интерфейсе и вспомните его пароль, он потребуется в процессе установки. Либо если используется пароль по умолчанию, можно запустить установку так: ./install.sh ./inventory.yml -e "accept_eula=yes default_admin_password=yes"
  12. Входим в ОС из-под суперпользователя (root), если это не было сделано ранее: sudo -i
  13. Запустите установку: ./install.sh distributed.inventory.yml
  14. При наличии ошибки в конце установки TASK [Start not orphaned KUMA storage services] считаем установку успешной. Эта ошибка связана с таймаутом запуска ClickHouse, время старта процесса занимает ~10 минут. Убедитесь, что служба clickhouse потребляет ресурсы командой top.
    • Лог хранилища ведется в: /opt/kaspersky/kuma/storage/<ID хранилища>/log/storage
  15. Если в KUMA была настроена интеграция с Active Directory и были заданы группы ролей пользователя, сразу после обновления программы необходимо выполнить на машине с Ядром KUMA запрос в монго. В противном случае параметры групп ролей пользователей могут быть потеряны:
    • /opt/kaspersky/kuma/mongodb/bin/mongo localhost/kuma
    • var tenantID = db.tenants.findOne({ main: true })._id;
    • db.settings.insert({_id: "f371fa1b-948e-45d2-a47c-86ddd67029ee", tenantID: tenantID, disabled: true, roleGroups: [], kind: 'adfs'});