Установка
Системные требования
Процессор с поддержкой 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 Compose v1. Работоспособность Collector с Docker Compose v2 не гарантируется.
Следуя официальной документации по установке для вашей ОС:
Создать рабочую директорию и скачать docker-compose.yml
mkdir /srv/collector && cd /srv/collector
wget https://docs.mitigator.ru/collector/v23.12/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
.
Авторизоваться на 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
Запустить Collector
docker-compose up -d