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


Основные понятия сети для 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 весь кластер содержится в виртуальной сети. В этой виртуальной сети узлы уровня управления и рабочие узлы живут в собственной подсети. Каждая подсеть использует внутреннюю подсистему балансировки нагрузки и общедоступную подсистему балансировки нагрузки.

Замечание

Сведения о последних изменениях см. в статье "Новые возможности 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".
  • Аро

    • Эта конечная точка используется для любого общедоступного трафика. При создании приложения и маршрута эта конечная точка — это путь для входящего трафика.
    • Эта конечная точка также направляет и балансирует трафик к серверу API (если API является общедоступным). Эта конечная точка назначает общедоступный исходящий IP-адрес, чтобы плоскости управления могли получить доступ к Azure Resource Manager и сообщить о работоспособности кластера.
    • Эта подсистема балансировки нагрузки также охватывает исходящие подключения к Интернету из любого модуля pod, работающего на рабочих узлах, через правила исходящего трафика Azure Load Balancer.
      • Сейчас правила для исходящего трафика настроить нельзя. Они выделяют каждому узлу 1024 TCP-порта.
      • DisableOutboundSnat не настроен в правилах балансировки нагрузки, поэтому модули pod могут получать исходящие IP-адреса любого общедоступного IP-адреса, настроенного в этой подсистеме балансировки нагрузки.
      • В результате двух предыдущих точек единственным способом добавления временных портов SNAT является добавление общедоступных служб LoadBalancer-type в Azure Red Hat OpenShift.
  • 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-адреса и используется только внутри SDN OpenShift.)
  • Каждому узлу для размещения pod выделяется подсеть размера /23 (512 IP-адресов). Это значение невозможно изменить.
  • Вы не можете подключить pod к нескольким сетям.
  • Для частных кластеров с помощью подключаемого модуля сети OVN-Kubernetes можно настроить IP-адреса исходящего трафика. Дополнительные сведения см. в статье о настройке IP-адреса исходящего трафика.

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

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

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

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

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

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

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

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

Дальнейшие шаги

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