Использование частного подключения для кластеров Kubernetes с поддержкой Arc с приватным каналом (предварительная версия)
Приватный канал Azure позволяет безопасно связать службы Azure с виртуальной сетью с помощью частных конечных точек. Это означает, что вы можете подключить локальные кластеры Kubernetes к Azure Arc и отправить весь трафик через Azure ExpressRoute или VPN-подключение типа "сеть — сеть" вместо использования общедоступных сетей. В Azure Arc можно использовать модель области Приватный канал, чтобы разрешить нескольким кластерам Kubernetes взаимодействовать с ресурсами Azure Arc с помощью одной частной конечной точки.
В этом документе рассматривается, когда следует использовать и как настроить azure Arc Приватный канал (предварительная версия).
Внимание
Функция Azure Arc Приватный канал в настоящее время находится в предварительной версии во всех регионах, где присутствует Kubernetes с поддержкой Azure Arc, кроме юго-восточной Азии. Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.
Достоинства
Приватный канал предоставляет следующие возможности:
- Частное подключение к Azure Arc без открытия доступа к общедоступной сети.
- Убедитесь, что данные из кластера Kubernetes с поддержкой Arc доступны только через авторизованные частные сети.
- Предотвращение кражи данных из частных сетей путем определения определенных кластеров Kubernetes с поддержкой Azure Arc и других ресурсов служб Azure, таких как Azure Monitor, которые подключаются через частную конечную точку.
- Безопасное подключение частной локальной сети к Azure Arc с помощью ExpressRoute и Приватного канала.
- Удержание всего трафика внутри магистральной сети Microsoft Azure.
Дополнительные сведения см. в разделе "Основные преимущества Приватный канал Azure".
Принцип работы
Область azure Arc Приватный канал подключает частные конечные точки (и виртуальные сети, которые они содержатся) к ресурсу Azure, в этом случае кластеры Kubernetes с поддержкой Azure Arc. Если включить расширение кластера Kubernetes с поддержкой Arc, для этих сценариев может потребоваться подключение к другим ресурсам Azure. Например, при использовании Azure Monitor журналы, собранные из кластера, отправляются в рабочую область Log Analytics.
Подключение к другим ресурсам Azure из кластера Kubernetes с поддержкой Arc, указанного ранее, требует настройки Приватный канал для каждой службы. Пример см. в Приватный канал для Azure Monitor.
Текущие ограничения
При планировании настройки Приватный канал учитывайте эти текущие ограничения.
С виртуальной сетью можно связать только одну область Azure Arc Приватный канал.
Кластер Kubernetes с поддержкой Azure Arc может подключаться только к одной области Приватный канал Azure Arc.
Все локальные кластеры Kubernetes должны использовать одну и ту же частную конечную точку, разрешая правильные сведения о частной конечной точке (полное доменное имя и частный IP-адрес) с помощью одного и того же dns-сервера пересылки. Дополнительные сведения см. в разделе "Значения частной зоны DNS частной конечной точки Azure". Кластер Kubernetes с поддержкой Azure Arc, область Приватный канал Azure Arc и виртуальная сеть должны находиться в одном регионе Azure. Частная конечная точка и виртуальная сеть также должны находиться в одном регионе Azure, но этот регион может отличаться от региона azure Arc Приватный канал области и кластера Kubernetes с поддержкой Arc.
Трафик к идентификатору Microsoft Entra, Azure Resource Manager и тегам службы реестра контейнеров Майкрософт должен быть разрешен через локальный брандмауэр сети во время предварительной версии.
Ресурсы Azure Arc, использующие Приватный канал и те, которые не могут совместно использовать одну виртуальную сеть или зону DNS. Ресурсы Azure Arc без Приватный канал должны разрешаться в общедоступные конечные точки.
Для других используемых служб Azure, таких как Azure Monitor, могут потребоваться собственные частные конечные точки в виртуальной сети.
Примечание.
Функция Подключения к кластеру (и, следовательно, пользовательское расположение) в настоящее время не поддерживается в кластерах Kubernetes с поддержкой частного подключения. Сетевое подключение с помощью частных ссылок для служб Azure Arc, таких как службы данных с поддержкой Azure Arc, и службы приложений с поддержкой Azure Arc, которые используют эти функции, в настоящее время не поддерживаются.
Расширения кластера, поддерживающие сетевое подключение через частные каналы
В кластерах Kubernetes с поддержкой Azure Arc, настроенных с частными ссылками, эти расширения поддерживают сквозное подключение через частные каналы:
Планирование настройки Приватного канала
Чтобы подключить кластер Kubernetes к Azure Arc через приватный канал, настройте сеть следующим образом:
- Подписка, в которой присутствует область приватного канала, должна быть зарегистрирована
Microsoft.kubernetes
иMicrosoft.kubernetes.Configurations
. - Установите подключение между локальной сетью и виртуальной сетью Azure с помощью VPN типа "сеть — сеть" или канала ExpressRoute.
- Разверните область Приватный канал Azure Arc, которая управляет тем, какие кластеры Kubernetes могут взаимодействовать с Azure Arc по частным конечным точкам и связать ее с виртуальной сетью Azure с помощью частной конечной точки.
- Обновите конфигурацию DNS в локальной сети, чтобы разрешить адреса частной конечной точки.
- Настройте локальный брандмауэр, чтобы разрешить доступ к идентификатору Microsoft Entra, Azure Resource Manager и Реестру контейнеров Майкрософт.
- Свяжите кластеры Kubernetes с областью Приватный канал Azure Arc с поддержкой Azure Arc.
- При необходимости разверните частные конечные точки для других служб Azure, используемых с кластером Kubernetes с поддержкой Azure Arc, например Azure Monitor.
В остальной части этой статьи предполагается, что вы уже настроили канал ExpressRoute или VPN-подключение типа "сеть — сеть".
Сетевая конфигурация
Kubernetes с поддержкой Azure Arc интегрируется с несколькими службами Azure, чтобы обеспечить управление облаком и управление в гибридных кластерах Kubernetes. Большинство этих служб уже предлагают частные конечные точки. Однако необходимо настроить правила брандмауэра и маршрутизации, чтобы разрешить доступ к идентификатору Microsoft Entra и Azure Resource Manager через Интернет, пока эти службы не предлагают частные конечные точки. Вы также должны разрешить доступ к реестру контейнеров Майкрософт (и AzureFrontDoor.FirstParty в качестве предшественника для Реестра контейнеров Майкрософт) для извлечения изображений и диаграмм Helm, чтобы включить такие службы, как Azure Monitor, и для первоначальной настройки агентов Azure Arc в кластерах Kubernetes.
Существует два способа включения этой конфигурации:
Если сеть настроена для маршрутизации всего трафика, привязанного к Интернету, через канал VPN Azure или ExpressRoute, можно настроить группу безопасности сети (NSG), связанную с подсетью в Azure, чтобы разрешить исходящий доступ TCP 443 (HTTPS) к идентификатору Microsoft Entra, Azure Resource Manager, Azure Front Door и Реестру контейнеров Майкрософт с помощью тегов службы. Правила NSG должны выглядеть так, как показано ниже:
Параметр Правило идентификатора Microsoft Entra Правило Azure Resource Manager Правило AzureFrontDoorFirstParty Правило реестра контейнеров Майкрософт Исходный код Виртуальная сеть Виртуальная сеть Виртуальная сеть Виртуальная сеть Диапазоны исходных портов * * * * Назначение Тег службы Тег службы Тег службы Тег службы Назначение: тег службы AzureActiveDirectory
AzureResourceManager
AzureFrontDoor.FirstParty
MicrosoftContainerRegistry
Диапазоны портов назначения 443 443 443 443 Протокол TCP TCP TCP TCP Действие Разрешить Разрешить Разрешить (как входящий, так и исходящий) Разрешить Приоритет 150 (должен быть ниже всех правил, блокирующих доступ к Интернету) 151 (должен быть ниже всех правил, блокирующих доступ к Интернету) 152 (должно быть меньше правил, которые блокируют доступ к Интернету) 153 (должно быть ниже любых правил, которые блокируют доступ к Интернету) Имя. AllowAADOutboundAccess
AllowAzOutboundAccess
AllowAzureFrontDoorFirstPartyAccess
AllowMCROutboundAccess
Кроме того, настройте брандмауэр в локальной сети, чтобы разрешить исходящий доступ TCP 443 (HTTPS) к идентификатору Microsoft Entra ID, Azure Resource Manager и Реестру контейнеров Майкрософт, а также для входящего и исходящего доступа к
AzureFrontDoor.FirstParty
использованию скачиваемых файлов тегов службы. JSON-файл содержит все диапазоны общедоступных IP-адресов, используемые идентификатором Microsoft Entra, Azure Resource ManagerAzureFrontDoor.FirstParty
и реестром контейнеров Майкрософт, и обновляется ежемесячно, чтобы отразить любые изменения. Тег службы Microsoft Entra—AzureActiveDirectory
это тег службы Azure Resource ManagerAzureResourceManager
, тег службыMicrosoftContainerRegistry
Реестра контейнеров Майкрософт — это тег службы, а тег службы Azure Front Door — этоAzureFrontDoor.FirstParty
. Обратитесь к администратору сети и поставщику сетевого брандмауэра, чтобы узнать, как настроить правила брандмауэра.
Создание области Приватный канал Azure Arc
Войдите на портал Azure.
Перейдите к разделу "Создать ресурс" в портал Azure и найдите область Приватный канал Azure Arc, а затем нажмите кнопку "Создать". Кроме того, перейдите непосредственно на страницу Приватный канал области Azure Arc в портал Azure, а затем выберите "Создать область приватного канала Azure Arc".
Выберите подписку и группу ресурсов. Во время предварительной версии виртуальная сеть и кластеры Kubernetes с поддержкой Azure Arc должны находиться в той же подписке, что и область Приватный канал Azure Arc.
Укажите имя для области приватного канала Azure Arc.
Чтобы требовать, чтобы каждый кластер Kubernetes с поддержкой Arc, связанный с этой областью Приватный канал Azure Arc, отправлять данные в службу через частную конечную точку, выберите Разрешить доступ к общедоступной сети. При этом кластеры Kubernetes, связанные с этой областью Azure Arc Приватный канал, могут взаимодействовать со службой через частные или общедоступные сети. Этот параметр можно изменить после создания области по мере необходимости.
Выберите Review + create (Просмотреть и создать).
После завершения проверки нажмите кнопку "Создать".
Создание частной конечной точки
После создания области Azure Arc Приватный канал необходимо подключить ее к одной или нескольким виртуальным сетям с помощью частной конечной точки. Частная конечная точка предоставляет доступ к службам Azure Arc с частного IP-адреса в адресном пространстве виртуальной сети.
Частная конечная точка в виртуальной сети позволяет достичь конечных точек кластера Kubernetes с поддержкой Azure Arc через частные IP-адреса из пула сети, а не использовать общедоступные IP-адреса этих конечных точек. Это позволяет продолжать использовать кластеры Kubernetes с поддержкой Azure Arc, не открывая виртуальную сеть для незарегистраированного исходящего трафика. Трафик из частной конечной точки в ресурсы проходит через Microsoft Azure и не направляется в общедоступные сети.
На портале Azure перейдите к ресурсу области приватного канала Azure Arc.
В меню ресурсов в разделе Настройка выберите Подключения к частной конечной точке.
Щелкните Добавить, чтобы запустить процесс создания конечной точки. Вы также можете утвердить подключения, которые были запущены в центре Приватный канал, выбрав их, а затем выбрав "Утвердить".
Выберите подписку и группу ресурсов и введите имя конечной точки. Она должна находиться в том же регионе, что и виртуальная сеть.
По завершении выберите Далее: Ресурс.
Если эти значения еще не выбраны, сделайте следующее:
- Выберите подписку, содержащую ресурс Azure Arc Приватный канал Scope.
- Для типа ресурса выберите
Microsoft.HybridCompute/privateLinkScopes
. - Для ресурса выберите созданную ранее область Приватный канал Azure Arc.
- Выберите Далее: Виртуальная сеть.
На странице виртуальная сеть:
- Выберите виртуальную сеть и подсеть, из которой требуется подключиться к кластерам Kubernetes с поддержкой Azure Arc.
- Выберите Далее: DNS.
На странице DNS:
Для параметра Интеграция с частной зоной DNS выберите Да. Создается новая зона Частная зона DNS.
Кроме того, если вы предпочитаете вручную управлять записями DNS, выберите "Нет", а затем выполните настройку Приватный канал, включая эту частную конечную точку и конфигурацию частной области. Затем настройте DNS в соответствии с инструкциями в значениях частной зоны DNS частной конечной точки Azure. Не создавайте пустые записи при подготовке к настройке Приватного канала. Создаваемые записи DNS могут переопределить существующие параметры и повлиять на подключение к кластерам Kubernetes с поддержкой Arc.
Внимание
Ту же зону виртуальной сети и DNS нельзя использовать для обоих ресурсов Arc с помощью приватного канала и тех, которые не используют приватный канал. Ресурсы Arc, которые не являются приватным каналом, должны разрешаться к общедоступным конечным точкам.
Выберите Review + create (Просмотреть и создать).
Дождитесь завершения проверки.
Нажмите кнопку создания.
Настройка локальной пересылки DNS
Локальные кластеры Kubernetes должны иметь возможность разрешать записи DNS приватного канала с IP-адресами частной конечной точки. Действия по настройке зависят от того, используете ли частные зоны DNS Azure для хранения записей DNS или локального DNS-сервера.
Настройка DNS с помощью частных зон DNS, интегрированных с Azure
Если вы выбрали "Да " для интеграции с частной зоной DNS при создании частной конечной точки, локальные кластеры Kubernetes должны иметь возможность пересылать DNS-запросы на встроенные dns-серверы Azure DNS для правильного разрешения адресов частных конечных точек. Вам потребуется сервер пересылки DNS в Azure (специализированная виртуальная машина или экземпляр Брандмауэра Azure с включенным DNS-прокси), после чего можно настроить локальный DNS-сервер для пересылки запросов в Azure для разрешения IP-адресов частной конечной точки.
Дополнительные сведения см. в статье "Частный сопоставитель Azure" с локальным dns-сервером пересылки.
Настройка DNS-сервера вручную
Если вы отказались от использования частных зон DNS Azure во время создания частной конечной точки, необходимо создать необходимые записи DNS на локальном DNS-сервере.
- В портал Azure перейдите к ресурсу частной конечной точки, связанному с виртуальной сетью и областью приватного канала.
- В меню службы в разделе "Параметры" выберите конфигурацию DNS, чтобы просмотреть список записей DNS и соответствующих IP-адресов, которые необходимо настроить на DNS-сервере. Полные доменные имена и IP-адреса изменятся в зависимости от региона, выбранного для частной конечной точки, и доступных IP-адресов в подсети.
- Следуйте указаниям поставщика DNS-сервера, чтобы добавить необходимые зоны DNS и записи для сопоставления с таблицей на портале. Убедитесь, что выбран DNS-сервер, соответствующий вашей сети. Каждый кластер Kubernetes, использующий этот DNS-сервер, теперь разрешает IP-адреса частной конечной точки и должен быть связан с областью Приватный канал Azure Arc, или подключение будет отказано.
Настройка приватных каналов
Примечание.
Настройка частных ссылок для кластеров Kubernetes с поддержкой Azure Arc поддерживается начиная с версии 1.3.0 connectedk8s
расширения CLI, но требуется версия Azure CLI больше 2.3.0. Если вы используете версию более 1.3.0 для connectedk8s
расширения CLI, мы представили проверки для проверки и успешного подключения кластера к Azure Arc только в том случае, если вы используете Azure CLI версии более 2.3.0.
Вы можете настроить частные ссылки для существующего кластера Kubernetes с поддержкой Azure Arc или при подключении кластера Kubernetes к Azure Arc впервые с помощью следующей команды:
az connectedk8s connect -g <resource-group-name> -n <connected-cluster-name> -l <location> --enable-private-link true --private-link-scope-resource-id <pls-arm-id>
Наименование параметра | Description |
---|---|
--enable-private-link |
Включает функцию приватного канала, если задано значение True . |
--private-link-scope-resource-id |
Идентификатор ресурса области приватного канала, созданного ранее. Например: /subscriptions//resourceGroups//providers/Microsoft.HybridCompute/privateLinkScopes/ |
Для кластеров Kubernetes с поддержкой Azure Arc, настроенных перед настройкой области приватного канала Azure Arc, настройте частные ссылки в портал Azure, выполнив следующие действия:
- На портале Azure перейдите к ресурсу области приватного канала Azure Arc.
- В меню службы в разделе "Настройка" выберите ресурсы Azure Arc. а затем щелкните Добавить.
- Все кластеры Kubernetes с поддержкой Arc отображаются в той же подписке и регионе, что и область Приватный канал. Установите флажок для каждого кластера Kubernetes, который требуется связать с областью Приватный канал. По завершении нажмите кнопку "Выбрать ", чтобы сохранить изменения.
Устранение неполадок
При возникновении проблем могут помочь следующие рекомендации.
Проверьте локальный DNS-сервер, чтобы убедиться, что он перенаправляется в Azure DNS или настроен с соответствующими записями A в зоне приватного канала. Эти команды поиска должны возвращать общедоступные IP-адреса в виртуальной сети Azure. Если они разрешают общедоступные IP-адреса, дважды проверьте конфигурацию DNS сервера и сети.
nslookup gbl.his.arc.azure.com nslookup agentserviceapi.guestconfiguration.azure.com nslookup dp.kubernetesconfiguration.azure.com
Для проблем с подключением кластера Kubernetes убедитесь, что вы добавили идентификатор Microsoft Entra, Azure Resource Manager, AzureFrontDoor.FirstParty и теги службы реестра контейнеров Майкрософт в брандмауэр локальной сети.
Дополнительные советы по устранению неполадок см. в статье "Устранение неполадок с подключением к частной конечной точке Azure".
Следующие шаги
- Дополнительные сведения о частной конечной точке Azure.
- Узнайте, как устранять проблемы с подключением к частной конечной точке Azure.
- Узнайте, как настроить Приватный канал для Azure Monitor.