Основные понятия сети для Azure Red Hat OpenShift

В этом руководстве рассматриваются общие сведения о сети Azure Red Hat OpenShift в кластерах OpenShift 4, а также схеме и списке важных конечных точек. Дополнительную информацию об основных понятиях, связанных с сетями в OpenShift, см. в документации по сетям в Azure Red Hat OpenShift 4.

Схема сети Azure Red Hat OpenShift.

При развертывании Azure Red Hat OpenShift в OpenShift 4 весь кластер содержится в виртуальной сети. В этой виртуальной сети узлы уровня управления и рабочие узлы живут в собственной подсети. Каждая подсеть использует внутреннюю подсистему балансировки нагрузки и общедоступную подсистему балансировки нагрузки.

Примечание.

Дополнительные сведения о последних изменениях, представленных в ARO, см . в руководстве по новым сведениям о Azure Red Hat OpenShift.

Сетевые компоненты

В следующем списке перечислены важные компоненты сети в кластере Azure Red Hat OpenShift:

  • aro-pls

    • Эта конечная точка Приватный канал Azure используется инженерами надежности сайта Microsoft и Red Hat для управления кластером.
  • aro-internal

    • Эта конечная точка балансирует трафик к серверу API и внутреннему трафику службы. Узлы уровня управления и рабочие узлы находятся в серверном пуле.
    • Эта подсистема балансировки нагрузки по умолчанию не создается. Он создается после создания службы типа LoadBalancer с правильными заметками. Например, так: service.beta.kubernetes.io/azure-load-balancer-internal: "true".
  • aro

    • Эта конечная точка используется для любого общедоступного трафика. При создании приложения и маршрута эта конечная точка — это путь для входящего трафика.
    • Эта конечная точка также направляет и балансирует трафик к серверу API (если API является общедоступным). Эта конечная точка назначает общедоступный исходящий IP-адрес, чтобы плоскости управления могли получить доступ к Azure Resource Manager и сообщить о работоспособности кластера.
    • Эта подсистема балансировки нагрузки также охватывает исходящие подключения к Интернету из любого модуля pod, работающего на рабочих узлах, через правила исходящего трафика Azure Load Balancer.
      • Сейчас правила для исходящего трафика настроить нельзя. Они выделяют каждому узлу 1024 TCP-порта.
      • DisableOutboundSnat не настроен в правилах балансировки нагрузки, поэтому модули pod могут получать исходящие IP-адреса любого общедоступного IP-адреса, настроенного в этой подсистеме балансировки нагрузки.
      • Как следствие двух предыдущих правил временные порты SNAT можно добавить только путем добавления общедоступных служб типа LoadBalancer в АRО.
  • aro-nsg:

    • Когда вы предоставляете службу, API создает правило в этой группе безопасности сети, чтобы трафик проходил и достиг уровня управления и узлов через порт 6443.
    • По умолчанию эта группа безопасности сети разрешает весь исходящий трафик. В настоящее время ограничить исходящий трафик можно только уровнем управления Azure Red Hat OpenShift.
  • Реестр контейнеров Azure;

    • Этот реестр контейнеров предоставляется и используется корпорацией Майкрософт. Он предназначен только для чтения и не предназначен для использования пользователями Azure Red Hat OpenShift.
      • Этот реестр предоставляет образы платформы узла и компоненты кластера. Например, сюда относятся контейнеры мониторинга или ведения журналов.
      • Подключения к этому реестру осуществляются через конечную точку службы (внутреннее взаимодействие между службами Azure).
      • По умолчанию этот внутренний реестр недоступен за пределами кластера.
  • Приватный канал

    • Приватный канал позволяет подключаться к сети из плоскости управления в кластер. Это используется инженерами надежности сайта Microsoft и Red Hat для управления кластером.

Сетевые политики

  • Входящий трафик: политика входящего трафика поддерживается как часть SDN OpenShift. Эта сетевая политика включена по умолчанию, а применяют ее пользователи. Хотя политика входящего трафика соответствует версии 1 NetworkPolicy, исходящие и типы IPBlock не поддерживаются.

  • Исходящий трафик: политики исходящего трафика поддерживаются с помощью функции брандмауэра исходящего трафика в OpenShift. Существует только одна политика исходящего трафика для каждого пространства имен или проекта. Политики исходящего трафика не поддерживаются в пространстве имен по умолчанию и оцениваются в порядке (сначала до последнего).

Основные сведения о сетях в OpenShift

В OpenShift используется программно-определяемая сеть (SDN) для настройки наложенной сети с помощью OVS (Open vSwitch). Такая сеть — это реализация OpenFlow на основе спецификации CNI (сетевого интерфейса контейнера). SDN поддерживает различные подключаемые модули. Политика сети — это подключаемый модуль, используемый в Azure Red Hat в OpenShift 4. Все сетевые подключения управляются через SDN, поэтому для взаимодействия между разными pod не придется создавать дополнительных маршрутов в виртуальных сетях.

Сеть для Azure Red Hat OpenShift

Для Azure Red Hat OpenShift характерны следующие возможности сети:

  • Пользователи могут создать кластер Azure Red Hat OpenShift в существующей виртуальной сети или создать новую виртуальную сеть при создании кластера.
  • Есть возможность настраивать CIDR для pod и сети службы.
  • Узлы и плоскости управления находятся в разных подсетях.
  • Узлы и подсети виртуальной сети уровня управления должны быть минимальными /27.
  • CiDR pod по умолчанию — 10.128.0.0/14.
  • CiDR по умолчанию — 172.30.0.0/16.
  • CIDR сети pod и служб не должны перекрываться с другими диапазонами адресов, используемыми в сети. Они не должны находиться в диапазоне IP-адресов виртуальной сети кластера.
  • Идентификаторы CIDR pod должны иметь минимальный размер /18. (IP-адреса сети pod не маршрутизируются и используются только в пределах OpenShift SDN.)
  • Каждому узлу для размещения pod выделяется подсеть размера /23 (512 IP-адресов). Это значение невозможно изменить.
  • Вы не можете подключить pod к нескольким сетям.
  • Для частных кластеров ARO с помощью сетевого подключаемого модуля OVN-Kubernetes можно настроить IP-адреса исходящего трафика. Дополнительные сведения см. в статье о настройке IP-адреса исходящего трафика.

Параметры сети

В кластерах Azure Red Hat OpenShift 4 доступны следующие параметры сети:

  • Видимость API — задается при выполнении команды az aro create:
    • "Public" обозначает, что сервер API доступен для внешних сетей;
    • "Private" — СЕРВЕР API назначает частный IP-адрес из подсети уровня управления, доступен только с помощью подключенных сетей (одноранговых виртуальных сетей и других подсетей в кластере).
  • Видимость входящего трафика — задается при выполнении команды az aro create.
    • "Public" маршруты по умолчанию для общедоступного Load Balancer (цен. категория . (Можно изменить значение по умолчанию.)
    • По умолчанию "Частный" маршрутизируется во внутреннюю подсистему балансировки нагрузки. (Можно изменить значение по умолчанию.)

Группы безопасности сети

Группы безопасности сети будут создаваться в группе ресурсов узла, которая недоступна для пользователей. Группы безопасности сети назначаются непосредственно подсетям, а не сетевым адаптерам узлов. Группы безопасности сети неизменяемы. У пользователей нет разрешений на их изменение.

С общедоступным сервером API нельзя создавать группы безопасности сети и назначать их сетевым адаптерам.

Переадресация домена

Azure Red Hat OpenShift использует CoreDNS. Можно настроить пересылку доменов. Вы не можете перенести собственные DNS в виртуальные сети. Дополнительные сведения см. в документации по использованию переадресации DNS.

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

Дополнительные сведения об исходящем трафике и о возможностях, которые Azure Red Hat OpenShift поддерживает для исходящего трафика, см. в документации по политикам поддержки.