Установка
Системные требования
Процессор с поддержкой hugepages и SSE 4.2 (не менее четырех ядер). Не менее 16 ГБ оперативной памяти. От 1TБ свободного места на диске.
Рекомендуемые дистрибутивы:
- Debian 10+
- Ubuntu LTS
Процедура установки
Collector распространяется в виде образов Docker, хранящихся на нашем сервере. Чтобы получить к ним доступ, свяжитесь с нами
Необходим доступ от целевой машины к репозиториям дистрибутива.
Команды выполнять от root
.
Настроить hugepages
Для работы Collector необходимы настроенные hugepages (большие страницы памяти).
Пример выделения 512 страниц по 2 МБ:
sysctl -w vm.nr_hugepages=512
Пример настройки выделения при загрузке системы:
echo 'vm.nr_hugepages = 512' > /etc/sysctl.d/hugepages.conf
Настроить синхронизацию времени через один NTP-сервер с MITIGATOR
Для корректного взаимодействия Collector и MITIGATOR время на серверах должно быть синхронизировано. При рассинхронизации будут возникать ошибки вида:
TsUntil should be in range [1, 1698650171], actual value: 1698650278
Установить Docker и Docker Compose
Установить Docker из репозиториев дистрибутива:
apt install -y docker.io
apt-get install -y docker-engine
dnf install -y docker-ce
После установки необходимо запустить службу Docker и настроить её автозапуск:
systemctl enable --now docker
curl -L "https://github.com/docker/compose/releases/download/v2.28.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/bin/docker-compose \
&& chmod +x /usr/bin/docker-compose
Официальная документация по установке Docker и Docker Compose:
Создать рабочую директорию и скачать docker-compose.yml
mkdir /srv/collector && cd /srv/collector
wget https://docs.mitigator.ru/collector/v24.10/dist/docker-compose.yml
Настроить окружение
Создать файл .env
в /srv/collector
следующего содержания:
VERSION=vXX.XX.X
COMPOSE_FILE=docker-compose.yml:docker-compose.vpn.yml
COLLECTOR_HOST_ADDRESS=X.X.X.X
COLLECTOR_VPN_ADDRESS=X.X.X.X
Задать версию Collector в переменной VERSION
.
Задать IP-адрес хоста в переменной COLLECTOR_HOST_ADDRESS
.
Сконфигурировать Collector согласно разделу Настройка.
Авторизоваться на docker.mitigator.ru
docker login docker.mitigator.ru
Настроить взаимодействие с MITIGATOR по VPN
Чтобы Collector мог взаимодействовать с MITIGATOR, нужно настроить VPN, также как для всех экземпляров MITIGATOR внутри кластера.
Установить базы GeoIP
Collector использует GeoLite2
базы в формате CSV.
Разместите файлы баз Country и ASN в директории /srv/collector/geolite2
:
Обработайте файлы командой:
find geolite2 -name '*.csv' -exec sed -e "s|,\('[^,]\+\)|,\"\1\"|g" -i {} \;
Если установка баз GeoIP производится после запуска Collector,
то предварительно нужно удалить каталог geolite2
со всем содержимым,
а после размещения файлов перезапустить ClickHouse командой:docker-compose rm -sf clickhouse && docker-compose up -d clickhouse
Обеспечить связность с сервером лицензирования
Для взаимодействия с сервером лицензирования системе требуется наличие постоянной связности с ls.mitigator.ru по протоколу TCP на порту 443. Разрыв связности с сервером лицензирования через некоторое время переведет Collector в режим сброса всего входящего flow.
Запустить Collector
Во время запуска Collector, используя Docker Compose v2, можно увидеть следующие предупреждения, их следует игнорировать.
WARN[0000] /srv/collector/docker-compose.yml: `version` is obsolete
...
docker-compose up -d
Через месяц бесперебойной работы необходимо настроить по инструкции уменьшения объема хранимых данных.