Skip to content

Скрипт сохранения партиций из локального хранилища KUMA (ClickHouse)

Notifications You must be signed in to change notification settings

KUMA-Community/kuma_save_partition

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

kuma_save_partition

Скрипт сохранения партиций из локального хранилища KUMA (ClickHouse)

Предварительно нужно сделать chmod +x по файлу скрипта.

Функции

1. Экспортировать из хранилища и сохранить в архиве партиции и файл описания рядом со скриптом за промежуток с 2023-04-05 по 2023-04-05.

Пример команды: ./kuma_save_partition.sh -export 2023-04-05 2023-04-06

2. Импорт событий в хранилище. Рядом со скриптом должны находиться все необходимые архивы и файл описания partitions_from_* (которые были сгенерированы при экспорте). Скрипт автоматом создает нужные тенанты в KUMA для отображения событий (если не получится автоматом, это нужно будет сделать вручную в MongoDB).

  • (опционально) прописать в скрипте IP адрес KUMA (CORE), указать его в скрипте в переменной kuma_IP= (33 строка)
  • (опционально) прописать в скрипте 1 в переменной auto_tenant_create= для автоматического (не рекомендуется) создания тенант ID для отображения событий (в случае переноса со сторонней KUMA) (34 строка)

Пример команды: ./kuma_save_partition.sh -import partitions_from_2023-04-05-2023-04-05.txt

3. Сохранение партиции перед ротацией (за 1 день до удаления). Необходимо указать:

  • полный путь куда будет перемещен архив;
  • ID кластера (идентификатор берется из URL при нажании на Хранилище из Активных сервисов Пример URL: https://10.68.85.126:7220/resources/storage/7a7539f1-ab1d-469c-a82a-2df550f286b3)
  • создать пользователя с ролью администратор в веб интерфейсе KUMA, указать его в скрипте в переменных login= (31 строка) и pass= (32 строка)
  • прописать в скрипте IP адрес KUMA (CORE), указать его в скрипте в переменной kuma_IP= (33 строка)

Пример команды: ./kuma_save_partition.sh -arch_before_delete /tmp 7a7539f1-ab1d-469c-a82a-2df550f286b3

⚠️ ВАЖНО!

В случае рестарта Core "фейковые" (созданные) искуственно тенанты не дадут ему нормально запуститься, их нужно будет удалить для старта ядра и затем снова из создать.

Ручное создание "фейк" тенант ИД. По результату работы скрипта будет дан ИД который нужно создать в системе, это можно сделать на ядре выполнив команду (вместо указать скопированный ИД):

/opt/kaspersky/kuma/mongodb/bin/mongo kuma --eval 'db.tenants.insertOne({"_id": "<ID>", "name": "EVENT_EXPORT", "description": "", "main": false, "disabled": false, "eps": 0, "epsLimit": 100, "createdAt": 1670580800905, "updatedAt": 1670580800905});'

Затем необходимо зайти в веб интерфейс в раздел тенантов, выключить и включить созданный тенант EVENT_EXPORT.

About

Скрипт сохранения партиций из локального хранилища KUMA (ClickHouse)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%