Установка и подключение фильтрующего узла

Обработка запросов фильтрующим узлом

Обработка запросов в фильтрующем узле делится на две фазы:

  • Первичная обработка в модуле NGINX-Wallarm;
  • Постаналитика. Статистический анализ обработанных запросов.

Данная инструкция описывает установку фильтрующего узла Валарм в виде динамически подключаемого модуля для NGINX на одном сервере с постаналитикой.

Для установки фильтрующего узла необходимо выполнить следующие действия:

  1. Установить NGINX;
  2. Добавить репозитории Валарм, из которых вы загрузите пакеты;
  3. Установить пакеты Валарм;
  4. Настроить модуль постаналитики;
  5. Подключить модуль Валарм;
  6. Подключить фильтрующий узел к облаку Валарм.

1. Установите NGINX

Установите стабильную версию NGINX из официального репозитория NGINX, руководствуясь инструкцией, соответствующей вашей операционной системе:

Стабильная версия NGINX

Убедитесь, что вы устанавливаете stable-пакеты NGINX — часть пути mainline должна отсутствовать в ссылке на репозиторий NGINX, содержащий необходимую вам сборку.

2. Добавьте репозитории Валарм

Установка и обновление модуля Валарм происходит из репозиториев Валарм.

В зависимости от вашей операционной системы, выполните одну из следующих команд:

Debian 8.x (jessie)
Debian 9.x (stretch)
Ubuntu 14.04 LTS (trusty)
Ubuntu 16.04 LTS (xenial)
Ubuntu 18.04 LTS (bionic)
CentOS 6.x
CentOS 7.x
apt-key adv --keyserver keys.gnupg.net --recv-keys 72B865FD
echo 'deb http://repo.wallarm.com/debian/wallarm-node jessie/' >/etc/apt/sources.list.d/wallarm.list
apt-get update
apt-get install dirmngr
apt-key adv --keyserver keys.gnupg.net --recv-keys 72B865FD
sudo sh -c "echo 'deb http://repo.wallarm.com/debian/wallarm-node stretch/' >/etc/apt/sources.list.d/wallarm.list"
apt-get update
apt-key adv --keyserver keys.gnupg.net --recv-keys 72B865FD
echo 'deb http://repo.wallarm.com/ubuntu/wallarm-node trusty/' >/etc/apt/sources.list.d/wallarm.list
apt-get update
apt-key adv --keyserver keys.gnupg.net --recv-keys 72B865FD
echo 'deb http://repo.wallarm.com/ubuntu/wallarm-node xenial/' >/etc/apt/sources.list.d/wallarm.list
apt-get update
apt-key adv --keyserver keys.gnupg.net --recv-keys 72B865FD
sudo sh -c "echo 'deb http://repo.wallarm.com/ubuntu/wallarm-node bionic/' >/etc/apt/sources.list.d/wallarm.list"
apt-get update
yum install --enablerepo=extras -y epel-release centos-release-SCL
rpm -i https://repo.wallarm.com/centos/wallarm-node/6/x86_64/Packages/wallarm-node-repo-1-2.el6.noarch.rpm
yum install -y epel-release
rpm -i https://repo.wallarm.com/centos/wallarm-node/7/x86_64/Packages/wallarm-node-repo-1-2.el7.centos.noarch.rpm

Доступ к репозиториям

У системы должна быть возможность обратиться к https://repo.wallarm.com для загрузки пакетов. Убедитесь, что доступ не ограничен настройками файрвола.

3. Установите пакеты Валарм

В зависимости от вашей операционной системы, выполните одну из следующих команд:

Debian 8.x (jessie)
Debian 9.x (stretch)
Ubuntu 14.04 LTS (trusty)
Ubuntu 16.04 LTS (xenial)
Ubuntu 18.04 LTS (bionic)
CentOS 6.x
CentOS 7.x
apt-get install --no-install-recommends wallarm-node nginx-module-wallarm
apt-get install --no-install-recommends wallarm-node nginx-module-wallarm
apt-get install --no-install-recommends wallarm-node nginx-module-wallarm
apt-get install --no-install-recommends wallarm-node nginx-module-wallarm
apt-get install --no-install-recommends wallarm-node nginx-module-wallarm
yum install wallarm-node nginx-module-wallarm
yum install wallarm-node nginx-module-wallarm

4. Настройте модуль постаналитики

Модуль постаналитики использует находящееся в памяти хранилище Tarantool.

Вам необходимо указать объем оперативной памяти, который будет выделен под хранилище Tarantool.

Количество памяти влияет на качество работы статистических алгоритмов. Рекомендуемое значение — 75% от общей памяти сервера. Например, если у сервера 32 ГБ памяти, оптимально выделить под хранилище 24 ГБ.

Укажите объем оперативной памяти для Tarantool:

Откройте конфигурационный файл Tarantool:

Debian 8.x (jessie)
Debian 9.x (stretch)
Ubuntu 14.04 LTS (trusty)
Ubuntu 16.04 LTS (xenial)
Ubuntu 18.04 LTS (bionic)
CentOS 6.x
CentOS 7.x
vi /etc/default/wallarm-tarantool
vi /etc/default/wallarm-tarantool
vi /etc/default/wallarm-tarantool
vi /etc/default/wallarm-tarantool
vi /etc/default/wallarm-tarantool
vi /etc/sysconfig/wallarm-tarantool
vi /etc/sysconfig/wallarm-tarantool

Укажите размер выделяемой памяти в конфигурационном файле Tarantool директивой SLAB_ALLOC_ARENA.

Например:

SLAB_ALLOC_ARENA=24

Перезапустите Tarantool:

Debian 8.x (jessie)
Debian 9.x (stretch)
Ubuntu 14.04 LTS (trusty)
Ubuntu 16.04 LTS (xenial)
Ubuntu 18.04 LTS (bionic)
CentOS 6.x
CentOS 7.x
systemctl restart wallarm-tarantool
systemctl restart wallarm-tarantool
service wallarm-tarantool restart
service wallarm-tarantool restart
service wallarm-tarantool restart
service wallarm-tarantool restart
systemctl restart wallarm-tarantool

5. Подключите модуль Валарм

Откройте файл /etc/nginx/nginx.conf.

Проверьте, что в файле есть строка include /etc/nginx/conf.d/*. Если такой строки нет, добавьте ее.

Добавьте следующую директиву сразу под директивой worker_processes:

load_module modules/ngx_http_wallarm_module.so;

Пример файла с добавленной директивой:

user  nginx;
worker_processes  auto;
load_module modules/ngx_http_wallarm_module.so;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;

Скопируйте конфигурационные файлы для настройки системы:

cp /usr/share/doc/nginx-module-wallarm/examples/*.conf /etc/nginx/conf.d/


6. Подключите фильтрующий узел к облаку Валарм

Доступ к API

Для работы с облаком узел должен иметь доступ к https://api.wallarm.com:444. В случае проблем убедитесь, что доступ не ограничен файрволом.

Фильтрующий узел в процессе работы взаимодействует с облаком Валарм.

Для того, чтобы подключить фильтрующий узел к облаку, выполните следующие действия:

  1. Убедитесь, что ваша учетная запись Валарм имеет права на подключение нового фильтрующего узла (иными словами, имеет роль Администратор), и двухфакторная авторизация для вашей учетной записи отключена.

    Это можно проверить, просмотрев список пользователей в консоли Валарм:

    Список пользователей в консоли Валарм

  2. На виртуальной машине с фильтрующим узлом запустите скрипт addnode:

    sudo /usr/share/wallarm-common/addnode
    
  3. Введите логин и пароль от вашей учетной записи в веб-интерфейсе Валарм.

Установка завершена

На этом установка завершена.

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

results matching ""

    No results matching ""