Содержание
Обеспечение бесперебойной работы коллекторов
Бесперебойное поступление событий от источника событий в KUMA является важным условием защиты сетевой инфраструктуры. Бесперебойность можно обеспечить автоматическим перенаправлением потока событий на большее число коллекторов:
- На стороне KUMA необходимо установить два или больше одинаковых коллекторов.
- На стороне источника событий необходимо настроить управление потоками событий между коллекторами с помощью сторонних средств управления нагрузкой серверов, например rsyslog или nginx.
При такой конфигурации коллекторов поступающие события не будут теряться, когда сервер коллектора по какой-либо причине недоступен.
Необходимо учитывать, что при переключении потока событий между коллекторами агрегация событий будет происходить на каждом коллекторе отдельно.
Если коллектор KUMA не удается запустить, а в его журнале выявлена ошибка "panic: runtime error: slice bounds out of range [8:0]":
- Остановите коллектор.
sudo systemctl stop kuma-collector-<
идентификатор коллектора
>
- Удалите файлы с кешем DNS-обогащения.
sudo rm -rf /opt/kaspersky/kuma/collector/<
идентификатор коллектора
>/cache/enrichment/DNS-*
- Удалите файлы с кешем событий (дисковый буфер). Выполняйте команду, только если можно пожертвовать событиями, находящимися в дисковых буферах коллектора.
sudo rm -rf /opt/kaspersky/kuma/collector/<
идентификатор коллектора
>/buffers/*
- Запустите сервис коллектора.
sudo systemctl start kuma-collector-<
идентификатор коллектора
>
Управление потоком событий с помощью rsyslog
Чтобы включить управление потоками событий на сервере источника событий с помощью rsyslog:
- Создайте два или более одинаковых коллекторов, с помощью которых вы хотите обеспечить бесперебойный прием событий.
- Установите на сервере источника событий rsyslog (см. документацию rsyslog).
- Добавьте в конфигурационный файл /etc/rsyslog.conf правила перенаправления потока событий между коллекторами:
*.* @@<FQDN основного сервера коллектора>:<порт, на который коллектор принимает события>
$ActionExecOnlyWhenPreviousIsSuspended on
& @@<FQDN резервного сервера коллектора>:<порт, на который коллектор принимает события>
$ActionExecOnlyWhenPreviousIsSuspended off
- Перезапустите rsyslog, выполнив команду:
systemctl restart rsyslog
.
Управление потоками событий на сервере источника событий включено.
В началоУправление потоком событий с помощью nginx
Для управления потоком событий средствами nginx необходимо создать и настроить nginx-сервер, который будет принимать события от источника событий, а затем перенаправлять их на коллекторы.
Чтобы включить управление потоками событий на сервере источника событий с помощью nginx:
- Создайте два или более одинаковых коллекторов, с помощью которых вы хотите обеспечить бесперебойный прием событий.
- Установите nginx на сервере, предназначенном для управления потоком событий.
- Команда для установки в Oracle Linux 8.6:
$sudo dnf install nginx
- Команда для установки в Ubuntu 20.4:
$sudo apt-get install nginx
При установке из sources, необходимо собрать с параметром
-with-stream
:$sudo ./configure -with-stream -without-http_rewrite_module -without-http_gzip_module
- Команда для установки в Oracle Linux 8.6:
- На nginx-сервере в конфигурационный файл nginx.conf добавьте модуль stream с правилами перенаправления потока событий между коллекторами.
При большом количестве активных сервисов и пользователей может понадобиться увеличить лимит открытых файлов в параметрах nginx.conf. Например:
worker_rlimit_nofile 1000000;
events {
worker_connections 20000;
}
# worker_rlimit_nofile – ограничение на максимальное число открытых файлов (RLIMIT_NOFILE) для рабочих процессов. Используется для увеличения ограничения без перезапуска главного процесса.
# worker_connections – максимальное число соединений, которые одновременно может открыть рабочий процесс.
- Перезапустите nginx, выполнив команду:
systemctl restart nginx
- На сервере источника событий перенаправьте события на nginx-сервер.
Управление потоками событий на сервере источника событий включено.
Для тонкой настройки балансировки может потребоваться nginx Plus, однако некоторые методы балансировки, например Round Robin и Least Connections, доступны в базовой версии ngnix.
Подробнее о настройке nginx см. в документации nginx.
В начало