Установка в кластере Kubernetes

Требования

Вернуться к содержанию ▲

Установка

  1. Установите Ingress-контроллер Валарм.
  2. Включите анализ трафика для вашего Ingress.
  3. Протестируйте работу Ingress-контроллера Валарм.

Шаг 1: Установка Ingress-контроллера Валарм

Выберите способ установки контроллера:

  • создание нового Ingress-контроллера;
  • замена существующего Ingress-контроллера.

Создание нового Ingress-контроллера

  1. Создайте узел с типом Облако в Личном кабинете Валарм и скопируйте токен. Создание облачного узла

  2. Клонируйте репозиторий Валарм NGINX Ingress:

    # git clone https://github.com/wallarm/ingress-chart
    
  3. Откройте файл ingress-chart/wallarm-ingress/values.yaml склонированного репозитория и задайте значения следующих параметров:
    • wallarm.enabled: true
    • wallarm.token: "YOUR_CLOUD_NODE_TOKEN"
  4. Перейдите в директорию ingress-chart и установите ingress-контроллер Валарм:

    # cd ..
     # helm install INGRESS_CONTROLLER_NAME ingress-chart/wallarm-ingress -n KUBERNETES_NAMESPACE
    
    • INGRESS_CONTROLLER_NAME — название Ingress-контроллера Валарм;
    • KUBERNETES_NAMESPACE — namespace вашего Ingress.

Замена существующего Ingress-контроллера

  1. Создайте узел с типом Облако в Личном кабинете Валарм и скопируйте токен. Создание облачного узла

  2. Клонируйте репозиторий Валарм NGINX Ingress:

    # git clone https://github.com/wallarm/ingress-chart
    
  3. Откройте файл ingress-chart/wallarm-ingress/values.yaml склонированного репозитория и задайте значения следующих параметров:

    • wallarm.enabled: true
    • wallarm.token: "YOUR_CLOUD_NODE_TOKEN"
  4. Замените существующий Ingress-контроллер:

    # helm upgrade INGRESS_CONTROLLER_NAME KUBERNETES_NAMESPACE --reuse-values
    
    • INGRESS_CONTROLLER_NAME — название Ingress-контроллера, который необходимо заменить;
    • KUBERNETES_NAMESPACE — namespace вашего Ingress.

Шаг 2: Включение анализа трафика для вашего Ingress

# kubectl annotate ingress YOUR_INGRESS_NAME nginx.ingress.kubernetes.io/wallarm-mode=monitoring
# kubectl annotate ingress YOUR_INGRESS_NAME nginx.ingress.kubernetes.io/wallarm-instance=INSTANCE
  • YOUR_INGRESS_NAME — название вашего Ingress;
  • INSTANCE — положительное число, уникальное для каждого из ваших приложений или группы приложений; используется для получения раздельной статистикм и отличия атак, направленнных на соответствующие приложения.

Шаг 3: Тестирование работы Ingress-контроллера Валарм

  1. Получите список pod'ов, передав в INGRESS_CONTROLLER_NAME название Ingress-контроллера Валарм:

    # kubectl get po -l release=INGRESS_CONTROLLER_NAME
    

    Все pod'ы должны быть в состоянии: «STATUS: Running» и «READY: N/N». Например:

     NAME                                                              READY     STATUS    RESTARTS   AGE
     ingress-controller-nginx-ingress-controller-675c68d46d-cfck8      3/3       Running   0          5m
     ingress-controller-nginx-ingress-controller-wallarm-tarantljj8g   8/8       Running   0          5m
     ingress-controller-nginx-ingress-default-backend-584ffc6c7xj5xx   1/1       Running   0          5m
    
  2. Выполните тестовую атаку на адрес вашего Ingress, как описано в документации.

  3. Перейдите в раздел События в Личном кабинете Валарм и проверьте, что атака появилась в списке.

Вернуться к содержанию ▲

Настройка

После успешной установки и тестирования Ingress-контроллера Валарм вы можете применить к решению дополнительные настройки, например:

Для получения списка всех настроек и соответствующих инструкций перейдите по ссылке.

Вернуться к содержанию ▲

Известные ограничения

  • Блокировка по IP-адресу не поддерживается для фильтрующего узла версии 2.12 и ниже.
  • Не поддерживается работа без сервиса постаналитики.
  • Масштабирование постаналитики (уменьшение) может приводить к частичной потере данных об атаках.

Вернуться к содержанию ▲

results matching ""

    No results matching ""