Поделиться через


Настройка исходящего трафика кластера с помощью пользовательской таблицы маршрутизации в Служба Azure Kubernetes (AKS)

Вы можете настроить исходящий трафик для кластеров Служба Azure Kubernetes (AKS) в соответствии с конкретными сценариями. AKS подготавливает подсистему Standard балансировки нагрузки SKU для исходящего трафика по умолчанию. Однако настройка по умолчанию может не соответствовать требованиям всех сценариев, если общедоступные IP-адреса запрещены или сценарий требует дополнительных прыжков для исходящего трафика.

В этой статье описывается, как настроить исходящий маршрут кластера для поддержки пользовательских сетевых сценариев. Эти сценарии включают те, которые запрещают общедоступные IP-адреса и требуют, чтобы кластер сидел за сетевым виртуальным устройством (NVA).

Необходимые компоненты

  • Azure CLI версии 2.0.81 или выше. Чтобы узнать версию, выполните команду az --version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
  • Версия 2020-01-01 API или больше.

Требования и ограничения

Использование типа исходящего трафика является сложным сетевым сценарием и требует правильной настройки сети. Следующие требования и ограничения применяются к использованию исходящего типа:

  • Для параметра outboundType требуются кластеры AKS с числом VirtualMachineScaleSets vm-set-type и числом load-balancer-sku Standard.
  • Чтобы задать для outboundType значение UDR, необходимо использовать определяемый пользователем маршрут с действительными исходящими подключениями для кластера.
  • Если для outboundType задано значение UDR, это подразумевает, что исходный IP-адрес входящего трафика, маршрутизируемого на балансировщик нагрузки, может не соответствовать конечному адресу исходящего трафика кластера.

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

AKS не настраивает пути исходящего трафика автоматически, если userDefinedRouting задано, то есть необходимо настроить исходящий трафик.

Если вы не используете стандартную архитектуру подсистемы балансировки нагрузки (SLB), необходимо установить явный исходящий трафик. Необходимо развернуть кластер AKS в существующей виртуальной сети с подсетью, настроенной ранее. Эта архитектура требует явной отправки исходящего трафика на устройство, например брандмауэра, шлюза или прокси-сервера, поэтому общедоступный IP-адрес, назначенный стандартной подсистеме балансировки нагрузки или устройству, может обрабатывать преобразование сетевых адресов (NAT).

Создание подсистемы балансировки нагрузки с помощью userDefinedRouting

Кластеры AKS с исходящим типом UDR получают стандартную подсистему балансировки нагрузки только при развертывании первой службы Kubernetes типа loadBalancer . Для входящих запросов в подсистеме балансировки нагрузки настраиваются общедоступный IP-адрес и серверный пул. Поставщик облачных служб Azure настраивает правила входящего трафика, но не настраивает исходящий общедоступный IP-адрес или правила исходящего трафика. UDR — единственный источник для исходящего трафика.

Примечание.

Плата за подсистемы балансировки нагрузки Azure не взимается, пока не будет размещено правило.

Развертывание кластера с типом исходящего трафика UDR и брандмауэром Azure

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

Внимание

Для исходящего типа UDR требуется маршрут для 0.0.0.0/0 и назначения следующего прыжка NVA в таблице маршрутов. Таблица маршрутов уже имеет значение по умолчанию 0.0.0.0/0 в Интернете. Без общедоступного IP-адреса для Azure, используемого для преобразования сетевых адресов источника (SNAT), просто добавление этого маршрута не обеспечит исходящее подключение к Интернету. AKS проверяет, что вы не создаете маршрут 0.0.0.0/0, указывающий на Интернет, а не шлюз, NVA и т. д. При использовании исходящего типа UDR общедоступный IP-адрес подсистемы балансировки нагрузки для входящих запросов не создается, если служба типа loadbalancer не настроена. AKS никогда не создает общедоступный IP-адрес для исходящих запросов , если вы задаете исходящий тип UDR.

Следующие шаги

Дополнительные сведения о определяемых пользователем маршрутах и сетях Azure см. в следующем разделе: