Основные понятия сети для развертывания узлов AKS
Область применения: AKS в Azure Stack HCI 22H2, AKS в Windows Server
Вы можете выбрать две модели назначения IP-адресов для архитектуры сети для AKS, включенной Azure Arc. AKS поддерживает несколько вариантов развертывания для Служба Azure Kubernetes (AKS).
- Сеть статических IP-адресов. Виртуальная сеть выделяет статические IP-адреса серверу API кластера Kubernetes, узлам Kubernetes, базовым виртуальным машинам, подсистемам балансировки нагрузки и всем службам Kubernetes, работающим поверх кластера.
- Сеть DHCP. Виртуальная сеть выделяет динамические IP-адреса узлам Kubernetes, базовым виртуальным машинам и подсистемам балансировки нагрузки с помощью DHCP-сервера. Сервер API кластера Kubernetes и все службы Kubernetes, запущенные в кластере, по-прежнему выделяют статические IP-адреса.
Примечание
Архитектура виртуальных сетей, определенная здесь для AKS Arc, может отличаться от базовой физической сетевой архитектуры в центре обработки данных.
Пул виртуальных IP-адресов
Пул виртуальных IP-адресов — это набор IP-адресов, которые являются обязательными для любого развертывания в AKS Arc. Пул ВИРТУАЛЬНЫх IP-адресов — это диапазон зарезервированных IP-адресов, используемых для выделения IP-адресов серверу API кластера Kubernetes. Это гарантирует, что приложения в службах Kubernetes всегда доступны. Помните, что независимо от модели виртуальной сети и выбранной модели назначения адресов необходимо предоставить пул виртуальных IP-адресов для развертывания узла AKS.
Количество IP-адресов в пуле ВИРТУАЛЬНЫх IP-адресов зависит от количества кластеров рабочей нагрузки и служб Kubernetes, запланированных для развертывания.
В зависимости от сетевой модели определение пула ВИРТУАЛЬНЫх IP-адресов отличается следующим образом:
- Статический IP-адрес. Если вы используете статический IP-адрес, убедитесь, что виртуальные IP-адреса находятся в той же предоставленной подсети.
- DHCP: если в вашей сети настроен протокол DHCP, обратитесь к администратору сети, чтобы исключить диапазон IP-адресов пула ВИРТУАЛЬНЫх IP-адресов из область DHCP, используемого для развертывания AKS в Azure Stack HCI.
Пул IP-адресов виртуальной машины узла Kubernetes
Узлы Kubernetes развертываются в качестве специализированных виртуальных машин в AKS Arc. AKS выделяет IP-адреса для этих виртуальных машин, чтобы обеспечить обмен данными между узлами Kubernetes.
- Статический IP-адрес: необходимо указать диапазон пула IP-адресов виртуальной машины узла Kubernetes. Количество IP-адресов в этом диапазоне зависит от общего числа узлов Kubernetes, которые вы планируете использовать для развертывания в кластерах Kubernetes узла AKS и рабочей нагрузки. Помните, что обновления используют от одного до трех дополнительных IP-адресов во время обновления.
- DHCP: не нужно указывать пул виртуальных машин узла Kubernetes, так как IP-адреса узлов Kubernetes динамически выделяются DHCP-сервером в вашей сети.
Виртуальная сеть со статическими IP-сетями (рекомендуется)
Эта сетевая модель создает виртуальную сеть, которая выделяет IP-адреса из статического пула адресов для всех объектов в развертывании. Дополнительное преимущество использования статических IP-сетей заключается в том, что длительные развертывания и рабочие нагрузки приложений всегда будут доступны.
При определении виртуальной сети со статическими IP-конфигурациями укажите следующие параметры:
Важно!
Эта версия AKS не позволяет изменять конфигурацию сети после развертывания узла AKS или кластера рабочей нагрузки. Чтобы изменить параметры сети, необходимо начать заново, удалив кластеры рабочей нагрузки и удалив AKS.
Имя. Имя виртуальной сети.
Префикс адреса: префикс IP-адреса, используемый для вашей подсети.
Шлюз: IP-адрес шлюза по умолчанию для подсети.
DNS-сервер: массив IP-адресов, указывающих на DNS-серверы, используемые для подсети. Можно указать как минимум один сервер и не более трех серверов.
Пул виртуальных машин узла Kubernetes. Непрерывный диапазон IP-адресов, используемых для виртуальных машин узла Kubernetes.
Пул виртуальных IP-адресов. Непрерывный диапазон IP-адресов, используемых для сервера API кластера Kubernetes и служб Kubernetes.
Примечание
Пул ВИРТУАЛЬНЫх IP-адресов должен быть частью той же подсети, что и пул виртуальных машин узла Kubernetes.
идентификатор виртуальной локальной сети. Идентификатор виртуальной локальной сети. Если этот параметр опущен, виртуальная сеть не помечается.
Виртуальная сеть с сетью DHCP
Эта сетевая модель создает виртуальную сеть, которая выделяет IP-адреса с помощью DHCP для всех объектов в развертывании.
При определении виртуальной сети со статическими IP-конфигурациями необходимо указать следующие параметры:
Важно!
В этой версии AKS невозможно изменить конфигурацию сети после развертывания узла AKS или кластера рабочей нагрузки. Единственный способ изменить параметры сети — начать заново, удалив кластеры рабочей нагрузки и удалив AKS.
Имя. Имя виртуальной сети.
Пул виртуальных IP-адресов. Непрерывный диапазон IP-адресов, используемых для сервера API кластера Kubernetes и служб Kubernetes.
Примечание
Адреса пула ВИРТУАЛЬНЫх IP-адресов должны находиться в той же подсети, что и DHCP-область, и должны быть исключены из область DHCP, чтобы избежать конфликтов адресов.
идентификатор виртуальной локальной сети. Идентификатор виртуальной локальной сети. Если этот параметр опущен, виртуальная сеть не помечается.
Локальная облачная служба Майкрософт
Локальное облако (Майкрософт) — это стек управления, который позволяет управлять виртуальными машинами в Azure Stack HCI и windows Server SDDC в облаке. MOC состоит из следующих элементов:
- Один экземпляр высокодоступной
cloud agent
службы, развернутой в кластере. Этот агент выполняется на любом узле в кластере Azure Stack HCI или Windows Server и настроен для отработки отказа на другой узел. - Объект , работающий
node agent
на каждом физическом узле Azure Stack HCI.
Чтобы включить обмен данными с MOC, необходимо указать IP-адрес CIDR, который будет использоваться для службы. -cloudserviceCIDR
— это параметр в командеSet-AksHciConfig
, который используется для назначения IP-адреса облачной службе агента и обеспечения высокого уровня доступности службы облачного агента.
Выбор IP-адреса для службы MOC зависит от базовой сетевой модели, используемой развертыванием кластера в Azure Stack HCI или Windows Server.
Примечание
Выделение IP-адресов для службы MOC не зависит от модели виртуальной сети Kubernetes. Выделение IP-адресов зависит от базовой физической сети и IP-адресов, настроенных для узлов кластера Azure Stack HCI или Windows Server в центре обработки данных.
Узлы кластера Azure Stack HCI и Windows Server с режимом выделения IP-адресов на основе DHCP. Если узлам Azure Stack HCI назначен IP-адрес DHCP-сервера, присутствующего в физической сети, вам не нужно явно предоставлять IP-адрес для службы MOC, так как служба MOC также получает IP-адрес от DHCP-сервера.
Узлы кластера Azure Stack HCI и Windows Server со статической моделью выделения IP-адресов. Если узлам кластера назначены статические IP-адреса, необходимо явно указать IP-адрес для облачной службы MOC. IP-адрес службы MOC должен находиться в той же подсети, что и IP-адреса узлов кластера Azure Stack HCI и Windows Server. Чтобы явно назначить IP-адрес для службы MOC, используйте
-cloudserviceCIDR
параметр в командеSet-AksHciConfig
. Введите IP-адрес в формате CIDR, например 10.11.23.45/16.
Сравнение сетевых моделей
Dhcp и статический IP-адрес обеспечивают сетевое подключение к AKS в Развертывании Azure Stack HCI и Windows Server. Каждая из этих моделей имеет свои преимущества и недостатки. На высоком уровне следует учитывать следующие соображения.
DHCP — не гарантирует долгоживущие IP-адреса для некоторых типов ресурсов в развертывании AKS. — Поддерживает расширение зарезервированных IP-адресов DHCP, если развертывание становится больше, чем вы изначально ожидали.
Статический IP-адрес — гарантирует долгосрочные IP-адреса для всех ресурсов в развертывании AKS. — Так как автоматическое расширение пула IP-адресов узлов Kubernetes не поддерживается, возможно, вы не сможете создать новые кластеры, если вы исчерпали пул IP-адресов узла Kubernetes.
В следующей таблице сравнивается распределение IP-адресов для ресурсов между сетевыми моделями статических IP-адресов и DHCP.
Функция | Статический IP-адрес | DHCP |
---|---|---|
Сервер API кластера Kubernetes | Назначается статически с помощью пула ВИРТУАЛЬНЫх IP-адресов. | Назначается статически с помощью пула ВИРТУАЛЬНЫх IP-адресов. |
Узлы Kubernetes (на виртуальных машинах) | Назначается с помощью пула IP-адресов узла Kubernetes. | Назначается динамически. |
Службы Kubernetes | Назначается статически с помощью пула ВИРТУАЛЬНЫх IP-адресов. | Назначается статически с помощью пула ВИРТУАЛЬНЫх IP-адресов. |
Виртуальная машина подсистемы балансировки нагрузки HAProxy | Назначается с помощью пула IP-адресов узла Kubernetes. | Назначается динамически. |
Локальная облачная служба Майкрософт | Зависит от конфигурации физической сети для узлов кластера Azure Stack HCI и Windows Server. | Зависит от конфигурации физической сети для узлов кластера Azure Stack HCI и Windows Server. |
Пул ВИРТУАЛЬНЫх IP-адресов | Обязательный | Обязательный |
Пул IP-адресов виртуальной машины узла Kubernetes | Обязательный | Не поддерживается |
Минимальное резервирование IP-адресов для развертывания AKS
Независимо от модели развертывания количество зарезервированных IP-адресов остается неизменным. В этом разделе описывается количество IP-адресов, которые необходимо зарезервировать на основе модели развертывания AKS Arc.
Минимальное резервирование IP-адресов
Для развертывания следует зарезервировать как минимум следующее количество IP-адресов:
Тип кластера | Узел уровня управления | Рабочий узел | Для операций обновления | Подсистема балансировки нагрузки |
---|---|---|---|---|
Узел AKS | Один IP-адрес | Н/Д | Два IP-адреса | Н/Д |
Кластер рабочей нагрузки | Один IP-адрес на узел | Один IP-адрес на узел | 5 IP-адресов | Один IP-адрес |
Кроме того, необходимо зарезервировать следующее количество IP-адресов для пула ВИРТУАЛЬНЫх IP-адресов:
Тип ресурса | Число IP-адресов |
---|---|
Сервер API кластера | 1 на кластер |
Службы Kubernetes | 1 на службу |
Службы приложений | 1 на запланированную службу |
Как видите, количество необходимых IP-адресов зависит от архитектуры развертывания AKS и количества служб, запущенных в кластере Kubernetes. Рекомендуется зарезервировать не менее 256 IP-адресов (/24 подсеть) для развертывания.
Пошаговое руководство по развертыванию
Джейн — ИТ-администратор, только начинающий с AKS, включенной в Azure Arc. Она хочет развернуть два кластера Kubernetes: кластер Kubernetes A и кластер Kubernetes B в своем кластере Azure Stack HCI. Она также хочет запустить приложение для голосования поверх своего кластера. Это приложение имеет три экземпляра интерфейсного пользовательского интерфейса, работающих в двух кластерах, и один экземпляр серверной базы данных.
- Кластер Kubernetes A имеет 3 узла уровня управления и 5 рабочих узлов.
- Кластер Kubernetes B имеет 1 узел уровня управления и 3 рабочих узла.
- 3 экземпляра интерфейсного пользовательского интерфейса (порт 443).
- 1 экземпляр серверной базы данных (порт 80).
В соответствии с предыдущей таблицей необходимо зарезервировать:
- 3 IP-адреса для узла AKS (один IP-адрес для узла уровня управления и два IP-адреса для выполнения операций обновления).
- 3 IP-адреса для узлов уровня управления в кластере A (по одному IP-адресу на узел уровня управления).
- 5 IP-адресов для рабочих узлов в кластере A (по одному IP-адресу на каждый рабочий узел).
- 6 IP-адресов дополнительно для кластера A (пять IP-адресов для выполнения операций обновления и 1 IP-адрес для подсистемы балансировки нагрузки).
- 1 IP-адреса для узлов уровня управления в кластере B (по одному IP-адресу на узел уровня управления).
- 3 IP-адреса рабочих узлов в кластере B (по одному IP-адресу на рабочий узел).
- 6 IP-адресов дополнительно для кластера B (пять IP-адресов для выполнения операций обновления и 1 IP-адрес для подсистемы балансировки нагрузки).
- 2 IP-адреса для серверов API кластера Kubernetes (по одному IP-адресу на кластер Kubernetes).
- 3 IP-адреса для службы Kubernetes (по одному IP-адресу на каждый экземпляр интерфейсного интерфейса, так как все они используют один и тот же порт). Серверная база данных может использовать любой из трех IP-адресов, если в ней будет использоваться другой порт.
Как упоминалось ранее, для развертывания кластера Джейн требуется в общей сложности 32 IP-адреса. Поэтому Джейн следует зарезервировать подсеть /26 для своей виртуальной сети.
Разделение зарезервированных IP-адресов на основе модели статической IP-сети
Хотя общее число зарезервированных IP-адресов остается неизменным, модель развертывания определяет, как эти IP-адреса распределяются между группами IP-адресов. Модель сети статических IP-адресов имеет два пула IP-адресов:
- Пул IP-адресов узла Kubernetes: для виртуальных машин узла Kubernetes и виртуальной машины подсистемы балансировки нагрузки. Этот пул IP-адресов также включает IP-адрес, необходимый для выполнения операций обновления.
- Пул виртуальных IP-адресов: для сервера API Kubernetes и служб Kubernetes.
При работе с этим примером Джейн должна дополнительно разделить эти IP-адреса между пулами ВИРТУАЛЬНЫх IP-адресов и пулами IP-адресов узла Kubernetes:
- 5 (два для сервера API кластера Kubernetes и три для служб Kubernetes) из 32 IP-адресов для пула ВИРТУАЛЬНЫх IP-адресов.
- 27 (все IP-адреса для узлов Kubernetes и базовых виртуальных машин, виртуальные машины подсистемы балансировки нагрузки и операции обновления) для пула IP-адресов узла Kubernetes.
Разделение зарезервированных IP-адресов на основе модели сети DHCP
Хотя общее число зарезервированных IP-адресов остается неизменным, модель развертывания определяет, как эти IP-адреса распределяются между группами IP-адресов. Как упоминалось в предыдущем разделе, модель сети DHCP имеет один IP-область:
- Пул виртуальных IP-адресов: для сервера API Kubernetes и служб Kubernetes.
Работа с предыдущим примером:
- Джейн должна зарезервировать в общей сложности 32 IP-адреса или подсеть /26 на своем DHCP-сервере.
- Она должна исключить 5 (два для сервера API кластера Kubernetes и три для служб Kubernetes) из область DHCP из 32 IP-адресов для пула ВИРТУАЛЬНЫх IP-адресов.
Контроллеры входящего трафика
Во время развертывания целевого кластера HAProxy
создается ресурс подсистемы балансировки нагрузки на основе . Подсистема балансировки нагрузки настроена для распределения трафика между объектами pod в службе на заданном порте. Подсистема балансировки нагрузки работает только на уровне 4, что означает, что служба не знает о фактическом приложении; т. е. он не может делать никаких дополнительных рекомендаций по маршрутизации.
Контроллеры входящего трафика работают на уровне 7 и могут использовать более интеллектуальные правила для распределения трафика приложений. Обычно контроллер входящего трафика используется для маршрутизации HTTP-трафика в различные приложения на основе входящего URL-адреса.
Дальнейшие действия
В этой статье рассматриваются некоторые концепции сети для развертывания узлов AKS в Azure Stack HCI. Дополнительные сведения см. в следующих статьях:
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по