EgressGatewayPolicy
Scope: Cluster
Version: v1alpha1
Интерфейс для настройки политик перенаправления прикладного трафика на определённые egress-шлюзы, описанные через интерфейс EgressGateway.
- spec
Обязательный параметр
- spec.destinationCIDRs
Сетевые запросы в сторону данных подсетей будут маршрутизированы через egress-шлюз.
Доступно только в enterprise edition.
- spec.egressGatewayName
Обязательный параметр
Имя ресурса EgressGateway, в котором описан egress-шлюз для обработки трафика.
Доступно только в enterprise edition.
- spec.excludedCIDRs
Сетевые диапазоны, которые требуется исключить из диапазонов, описанных в
destinationCIDRs
. Обратите внимание, что исключать служебные диапазоны кластера (podSubnetCIDR
иserviceSubnetCIDR
) не требуется.Доступно только в enterprise edition.
- spec.selectors
Селекторы прикладных подов. Их трафик будет маршрутизирован через соответствующий egress-шлюз. Для обозначения namespace используйте псевдо-лейбл
io.kubernetes.pod.namespace
.Доступно только в enterprise edition.
- spec.selectors.podSelector
Обязательный параметр
Настройка фильтра меток (label) по ресурсам.
Если указаны одновременно
matchExpressions
иmatchLabels
, учитываются оба фильтра (операцияИ
).Пустое значение
labelSelector
соответствует всем объектам. Нулевое — никаким.Доступно только в enterprise edition.
- spec.selectors.podSelector.matchExpressions
Список фильтров на основе выражений.
Итоговый результат — результат пересечения множеств, определяемых всеми фильтрами в списке (операция
И
).Фильтр на основе выражения.
Доступно только в enterprise edition.
- spec.selectors.podSelector.matchExpressions.key
Обязательный параметр
Имя метки.
Доступно только в enterprise edition.
- spec.selectors.podSelector.matchExpressions.operator
Обязательный параметр
Оператор сравнения.
Доступно только в enterprise edition.
- spec.selectors.podSelector.matchExpressions.values
Значение метки.
Доступно только в enterprise edition.
- spec.selectors.podSelector.matchLabels
Фильтр на основе совпадения/несовпадения меток.
Доступно только в enterprise edition.
EgressGateway
Scope: Cluster
Version: v1alpha1
Интерфейс для настройки отказоустойчивого egress-шлюза на основе группы узлов.
Настроенные egress-шлюзы можно использовать в политиках исходящего трафика EgressGatewayPolicy.
- spec
- spec.nodeSelector
Селектор для группы узлов, которые будут осуществлять передачу сетевых запросов на внешние сервисы. Среди данных узлов будут выявлены пригодные к работе и один из них будет назначен активным. Признаки пригодного узла:
- Узел в состоянии Ready.
- Узел не находится в состоянии технического обслуживания (cordon).
- cilium-agent на узле в состоянии Ready.
Разные EgressGateway могут использовать для работы общие узлы, при этом активные узлы будут выбираться независимо, тем самым распределяя нагрузку между ними.
Доступно только в enterprise edition.
- spec.sourceIP
- spec.sourceIP.mode
Обязательный параметр
Метод определения исходящего IP-адреса, который будет назначен на исходящие запросы через данный шлюз.
Возможны следующие варианты:
-
PrimaryIPFromEgressGatewayNodeInterface
— в качестве IP-адреса будет использоваться primary IP-адрес на публичном сетевом интерфейсе узла.Особенности:
- При выходе из строя активного узла и назначении нового, IP-адрес отправителя в сетевых пакетах поменяется.
- Предварительно необходимо настроить сетевую подсистему на всех egress-узлах:
- у публичных интерфейсов должно быть одинаковое имя (например, eth1),
- должны быть настроены все необходимые маршруты для доступа на все внешние публичные сервисы.
-
VirtualIPAddress
— явное указание исходящего IP-адреса.Особенности:
- При выходе из строя активного узла, IP-адрес отправителя в сетевых пакетах не поменяется.
- Предварительно необходимо настроить сетевую подсистему на всех egress-узлах:
- должны быть настроены все необходимые маршруты для доступа на все внешние публичные сервисы,
- публичный интерфейс должен быть подготовлен к автоматической настройке виртуального IP в качестве secondary IP-адреса (при назначении egress-узла в качестве активного, адрес не будет отображаться в списке IP на публичном интерфейсе, но при этом, узел будет эмулировать его наличие с помощью ARP-ответов).
Доступно только в enterprise edition.
Допустимые значения:
VirtualIPAddress
,PrimaryIPFromEgressGatewayNodeInterface
-
- spec.sourceIP.primaryIPFromEgressGatewayNodeInterface
- spec.sourceIP.primaryIPFromEgressGatewayNodeInterface.interfaceName
Имя интерфейса на egress-узлах, через который осуществляется доступ к внешним сервисам.
Доступно только в enterprise edition.
- spec.sourceIP.virtualIPAddress
- spec.sourceIP.virtualIPAddress.interfaces
Список сетевых интерфейсов, на которых будет осуществляться имитация виртуального IP-адреса.
По умолчанию:
[]
Доступно только в enterprise edition.
- spec.sourceIP.virtualIPAddress.ip
Виртуальный IP-адрес, который будет назначен на исходящие запросы через egress-шлюз.
Доступно только в enterprise edition.