Бөлісу құралы:


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

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

В этой статье рассматриваются различные типы исходящего подключения, доступные в кластерах AKS.

Примечание.

Теперь можно обновить outboundType после создания кластера.

Внимание

В не частных кластерах трафик кластера сервера API направляется и обрабатывается через исходящий тип кластеров. Чтобы предотвратить обработку трафика сервера API в качестве общедоступного трафика, рассмотрите возможность использования частного кластера или ознакомьтесь с функцией интеграции виртуальной сети СЕРВЕРА API.

Ограничения

  • Для настройки outboundType требуются кластеры AKS с vm-set-type VirtualMachineScaleSets и load-balancer-sku Standard.

Исходящие типы в AKS

Кластер AKS можно настроить с помощью следующих исходящих типов: подсистема балансировки нагрузки, шлюз NAT или определяемая пользователем маршрутизация. Исходящий тип влияет только на исходящий трафик кластера. Подробнее см. в разделе о настройке контроллеров объекта ingress.

Примечание.

Вы можете использовать собственную [таблицу маршрутов][byo-route-table] с UDR и сетью kubenet. Убедитесь, что удостоверение кластера (субъект-служба или управляемое удостоверение) имеет разрешения участника для пользовательской таблицы маршрутов.

Исходящий тип loadBalancer

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

Если loadBalancer задано, AKS автоматически завершает следующую конфигурацию:

  • Общедоступный IP-адрес подготавливается для исходящего трафика кластера.
  • Общедоступный IP-адрес назначается ресурсу балансировщика нагрузки.
  • Серверные пулы для подсистемы балансировки нагрузки настраиваются для агентских узлов в кластере.

На схеме показаны IP-адреса для входящего и исходящего трафика: IP-адрес входящего трафика направляет трафик подсистеме балансировки нагрузки, которая, в свою очередь, передает трафик во внутренний кластер и обратно; а другой трафик направляется на IP-адрес исходящего трафика, который передает трафик в Интернет, MCR, требуемые службы Azure и на уровень управления AKS.

Дополнительные сведения см. в статье об использовании стандартной подсистемы балансировки нагрузки в AKS.

Исходящий managedNatGateway тип или userAssignedNatGateway

Если managedNatGateway или userAssignedNatGateway выбрано для outboundTypeэтого параметра, AKS использует шлюз NAT сети Azure для исходящего трафика кластера.

  • Выберите managedNatGateway при использовании управляемых виртуальных сетей. AKS подготавливает шлюз NAT и присоединяет его к подсети кластера.
  • Выберите userAssignedNatGateway при использовании собственных виртуальных сетей. Этот параметр требует подготовки шлюза NAT перед созданием кластера.

Дополнительные сведения см. в статье об использовании шлюза NAT с AKS.

Исходящий тип userDefinedRouting

Примечание.

Тип userDefinedRouting исходящего трафика — это расширенный сетевой сценарий и требует надлежащей конфигурации сети.

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

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

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

Обновление outboundType после создания кластера

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

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

Поддерживаемые пути миграции для управляемой виртуальной сети

Каждая строка показывает, можно ли перенести исходящий тип в типы, перечисленные в верхней части. "Поддерживаемый" означает, что миграция возможна, а "Не поддерживается" или "N/A" означает, что это не так.

От |Кому loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer Н/П Поддерживается Не поддерживается Не поддерживается
managedNATGateway Поддерживается Н/П Не поддерживается Не поддерживается
userAssignedNATGateway Не поддерживается Не поддерживается Н/П Не поддерживается

Поддерживаемые пути миграции для виртуальной сети BYO

От |Кому loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer Н/П Не поддерживается Поддерживается Поддерживается
managedNATGateway Не поддерживается Н/П Не поддерживается Не поддерживается
userAssignedNATGateway Поддерживается Не поддерживается Н/П Поддерживается
userDefinedRouting Поддерживается Не поддерживается Поддерживается Н/П

Миграция поддерживается только между loadBalancer( managedNATGateway при использовании управляемой виртуальной сети) userAssignedNATGateway и userDefinedRouting (при использовании пользовательской виртуальной сети).

Предупреждение

Перенос исходящего типа на управляемые пользователем типы (userAssignedNATGateway и userDefinedRouting) изменит исходящие общедоступные IP-адреса кластера. Если разрешенные диапазоны IP-адресов включены, убедитесь, что новый диапазон исходящих IP-адресов добавляется к авторизованному диапазону IP-адресов.

Предупреждение

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

Обновление кластера для использования нового исходящего типа

Примечание.

Для переноса исходящего типа необходимо использовать версию >= 2.56 Azure CLI. Используется az upgrade для обновления до последней версии Azure CLI.

  • Обновите исходящую конфигурацию кластера с помощью az aks update команды.

Обновление кластера с loadbalancer на managedNATGateway

az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type managedNATGateway --nat-gateway-managed-outbound-ip-count <number of managed outbound ip>

Обновление кластера от managedNATGateway до loadbalancer

az aks update --resource-group <resourceGroup> --name <clusterName> \
--outbound-type loadBalancer \
<--load-balancer-managed-outbound-ip-count <number of managed outbound ip>| --load-balancer-outbound-ips <outbound ip ids> | --load-balancer-outbound-ip-prefixes <outbound ip prefix ids> >

Предупреждение

Не повторно используйте IP-адрес, который уже используется в предыдущих конфигурациях исходящего трафика.

Обновление кластера от managedNATGateway до userDefinedRouting

az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type userDefinedRouting

Обновление кластера от loadbalancer до userAssignedNATGateway в сценарии виртуальной сети BYO

az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type userAssignedNATGateway

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