# ANIC - Angie Ingress Controller

*11.08.2023*

Сегодня поговорим об Angie Ingress Controller (ANIC) - решении компании "Веб-Сервер" для
упрощения работы с трафиком в Kubernetes.

![Alternative text](../../_images/news/anic-angie-ingress-controller.jpg)![Alternative text](../../_images/news/anic-angie-ingress-controller.jpg)

Kubernetes — популярная система для управления контейнерами. Одной из ее задач
является перенаправление запросов к приложениям внутри этой системы. Для этого
используются две вещи: Ingress и Ingress Controller. Ingress — это точка входа
для запросов, которая помогает перенаправлять и балансировать нагрузку. Но чтобы
она работала, нужен Ingress Controller. Рассказываем, как новый продукт компании
`"Веб-Сервер"` **Angie Ingress Controller (ANIC)** помогает упростить работу с
трафиком в Kubernetes.

Ingress Controller — позволяет управлять проксированием и балансировкой в
соответствии с заданными настройками. При изменении настроек Ingress Controller
получает сигнал и перенастраивает Ingress в соответствии с полученными данными.
Таким образом, мы получаем возможность, изменяя настройки, управлять внешними
запросами к приложениям, запущенным s класте Kubernetesре. Ingress может быть
настроен чтобы привязать внешние URL адреса к внутренним сервисам, обеспечить
балансировку трафика и обработку SSL/TLS соединений. В качестве Ingress обычно
используют обратный прокси-сервер (reverse proxy).

**Angie Ingress Controller (ANIC)** поддерживает два типа установки: DaemonSet и
Deployment.

Используйте Deployment, если необходимо установить один экземпляр Ingress
Controller и динамически изменить количество экземпляров. Используйте DaemonSet
при необходимости установить Ingress Controller на каждой ноде кластера.

ANIC в качестве Ingress использует веб-сервер Angie PRO. Это один из самых
производительных веб-серверов в мире. Angie PRO прекрасно решает основные задачи
возложенные на Ingress. Множество настроек позволяет гибко настраивать
проксирование и имеет возможность динамически управлять настройками upstream
групп с помощью REST интерфейса. Также Angie PRO выступает в роли балансировщика
L4-L7.

**Помимо стандартных функций Angie PRO:**

* Позволяет создавать виртуальные сервера и имеет множество гибких настроек.
* Поддерживает HTTP/2 протокол, что позволит вам принимать на слушающем сокете
  HTTP/2-соединения.
* Поддерживает привязку сессий (sticky session) что обеспечивает привязку всех
  запросов внутри клиентской сессии к единственному серверу в группе upstream.
* Разделение трафика (traffic splitting) позволит провести A/B тестирование и
  частичную выкладку (canary deploy)
* Предоставляет расширенную статистику и мониторинг в режиме реального времени
  используя RESTful интерфейс. Предоставляется базовая информация о сервере в
  формате JSON, статистика по клиентским соединениям, зонам разделяемой памяти,
  DNS-запросам, HTTP-запросам, кэшу HTTP-ответов сессиям модуля stream,
  http_upstream и зонам других модулей.
* Предоставляет возможность динамически управлять настройками upstream групп с
  помощью REST-интерфейса.

Подробнее можно [прочитать на нашем сайте](https://angie.software//anic/index.md).
