Установка

Системные требования

  • Дистрибутив: Debian 10+

Минимальные:

  • CPU: x86_64, 4 ядра, SSE 4.2
  • RAM: 4 ГБ
  • HDD: 2 ГБ

Рекомендуемые:

  • CPU: x86_64, 4 ядра, SSE 4.2
  • RAM: 16+ ГБ
  • HDD: 1+ ТБ

Процедура установки

Collector распространяется в виде образов Docker, хранящихся на нашем сервере. Чтобы получить к ним доступ, свяжитесь с нами

Необходим доступ от целевой машины к репозиториям дистрибутива.

Команды выполнять от root.

1. Настроить hugepages

Для работы Collector необходимы настроенные hugepages (большие страницы памяти).

Пример выделения 128 страниц по 2 МБ:

sysctl -w vm.nr_hugepages=128

Пример настройки выделения при загрузке системы:

echo 'vm.nr_hugepages = 128' > /etc/sysctl.d/hugepages.conf

2. Установить Docker и Docker Compose

Следуя официальной документации по установке для вашей ОС:

3. Скачать и распаковать необходимые файлы

В директории с MITIGATOR:

mkdir /srv/collector && cd /srv/collector
wget https://docs.mitigator.ru/collector/v22.12/dist/asn6_dictionary.xml
wget https://docs.mitigator.ru/collector/v22.12/dist/asn_dictionary.xml
wget https://docs.mitigator.ru/collector/v22.12/dist/clickhouse.xml
wget https://docs.mitigator.ru/collector/v22.12/dist/dashboard.json
wget https://docs.mitigator.ru/collector/v22.12/dist/dashboard.yml
wget https://docs.mitigator.ru/collector/v22.12/dist/datasources.yml
wget https://docs.mitigator.ru/collector/v22.12/dist/docker-compose.yml
wget https://docs.mitigator.ru/collector/v22.12/dist/ipv4_dictionary.xml
wget https://docs.mitigator.ru/collector/v22.12/dist/ipv6_dictionary.xml
wget https://docs.mitigator.ru/collector/v22.12/dist/location_dictionary.xml

4. Скачать базы GeoIP (необязательно)

Collector поставляется с несколькими настроенными панелями Grafana. Некоторые из них используют GeoIP. Для их работы нужно скачать бесплатную базу данных GeoLite2 в формате CSV и распаковать файлы в каталог geolite2:

/srv/collector/
    docker-compose.yml
    geolite2/
        GeoLite2-City-Blocks-IPv4.csv
        (прочие файлы 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

5. Настроить окружение

echo >.env "COLLECTOR_HOST_ADDRESS=$(ip -o address show docker0 | awk '{ print $4 }' | cut -d/ -f1)"

Убедиться, что в файле .env переменная COLLECTOR_HOST_ADDRESS содержит адрес хоста. Команда выше заносит в нее адрес моста docker0.

6. Авторизоваться на docker.mitigator.ru

docker login docker.mitigator.ru

7. Запустить Collector

docker-compose up -d