Часто задаваемые вопросы: Kubernetes с поддержкой Azure Arc и GitOps
В этой статье рассматриваются часто задаваемые вопросы о Kubernetes и GitOps с поддержкой Azure Arc.
Какова разница между Kubernetes с поддержкой Azure Arc и Служба Azure Kubernetes (AKS)?
AKS — это предложение управляемой среды Kubernetes в Azure. AKS упрощает развертывание управляемого кластера Kubernetes в Azure, так как значительная часть сложных задач и операционных издержек переносится в Azure. Так как главными узлами Kubernetes управляет платформа Azure, вы администрируете и обслуживаете только узлы агентов.
Kubernetes с поддержкой Azure Arc позволяет расширить возможности управления Azure (например, Azure Monitor и Политика Azure), подключив кластеры Kubernetes к Azure. Используемый кластер Kubernetes сохраняется.
Нужно ли подключать кластеры AKS, работающие в Azure, к службе Azure Arc?
В настоящее время для большинства сценариев подключение кластера Служба Azure Kubernetes (AKS) к Azure Arc не требуется. Может потребоваться подключить кластер для запуска определенных служб с поддержкой Azure Arc, таких как Служба приложений и службы данных на вершине кластера. Это можно сделать с помощью функции пользовательских расположений Kubernetes с поддержкой Azure Arc.
Следует ли подключать кластер AKS-HCI и кластеры Kubernetes в Azure Stack Edge к Azure Arc?
Подключение кластера AKS-HCI или кластеров Kubernetes в Azure Stack Edge к Azure Arc предоставляет кластеры с представлением ресурсов в Azure Resource Manager. Это представление ресурса расширяет такие возможности, как конфигурация кластера, Azure Monitor, политика Azure (Gatekeeper), на подключенные кластеры Kubernetes.
Если кластер Kubernetes с поддержкой Azure Arc находится в Azure Stack Edge, AKS в Azure Stack HCI (= обновление за апрель 2021 г.) или AKS в Центре обработки данных Windows Server 2019 (>>= обновление за апрель 2021 г.), конфигурация Kubernetes включена без платы.
Разделы справки истек срок действия ресурсов Kubernetes с поддержкой Azure Arc?
Управляемое удостоверение, назначаемое системой, связанное с кластером Kubernetes с поддержкой Azure Arc, используется только агентами Azure Arc для взаимодействия со службами Azure Arc. Сертификат, связанный с этой системой, имеет срок действия 90 дней, и агенты попытаются продлить этот сертификат в период с 46 по день 90. Чтобы избежать истечения срока действия сертификата управляемого удостоверения, убедитесь, что кластер подключен по крайней мере один раз между 46 и 90 днем, чтобы сертификат можно было продлить.
Если срок действия сертификата управляемого удостоверения истекает, ресурс считается Expired
, а все функции Azure Arc (например, конфигурация, мониторинг и политика) перестают работать в кластере.
Чтобы проверить, истекает ли срок действия сертификата управляемого удостоверения для данного кластера, выполните следующую команду:
az connectedk8s show -n <name> -g <resource-group>
Значение managedIdentityCertificateExpirationTime
в выходных данных показывает, когда истечет срок действия сертификата управляемого удостоверения (метка 90D для этого сертификата).
Если значение managedIdentityCertificateExpirationTime
указывает метку времени из прошлого, то в поле connectivityStatus
в приведенных выше выходных данных будет стоять Expired
. В таких случаях, чтобы восстановить для кластера Kubernetes возможность работы с Azure Arc, выполните следующие действия.
Удалите ресурс и агенты Kubernetes с поддержкой Azure Arc в кластере.
az connectedk8s delete -n <name> -g <resource-group>
Повторно создайте ресурс Kubernetes с поддержкой Azure Arc, развернув агенты в кластере.
az connectedk8s connect -n <name> -g <resource-group>
Примечание.
az connectedk8s delete
также удалит добавленные к кластеру конфигурации и расширения кластера. После выполнения az connectedk8s connect
заново создайте для кластера конфигурации и расширения кластера вручную и с помощью Политики Azure.
Если вы уже используете конвейеры CI/CD, можно ли использовать конфигурации Kubernetes с поддержкой Azure Arc или AKS и GitOps?
Да, вы по-прежнему можете использовать конфигурации в кластере, принимающем развертывания с помощью конвейера CI/CD. По сравнению с традиционными конвейерами CI/CD конфигурации GitOps предоставляют некоторые дополнительные преимущества.
Сверка смещений
Конвейер CI/CD применяет изменения только один раз во время выполнения конвейера. Однако оператор GitOps в кластере постоянно опрашивает репозиторий Git для получения требуемого состояния ресурсов Kubernetes в кластере. Если оператор GitOps находит, что требуемое состояние ресурсов отличается от фактического состояния ресурсов в кластере, это смещение выверено.
Масштабное применение GitOps
Конвейеры CI/CD полезны при развертывании на основе событий в кластере Kubernetes (например, при отправке в репозиторий Git). Однако для развертывания одной конфигурации во всех кластерах Kubernetes необходимо вручную настроить учетные данные каждого кластера Kubernetes в конвейере CI/CD.
Для Kubernetes с поддержкой Azure Arc, так как Azure Resource Manager управляет конфигурациями GitOps, вы можете автоматизировать создание одной и той же конфигурации во всех ресурсах Kubernetes с поддержкой Azure Arc и AKS с помощью Политика Azure в пределах подписки или группы ресурсов. Эта возможность даже применима к ресурсам Kubernetes с поддержкой Azure Arc и AKS, созданным после назначения политики.
Эта функция применяет базовые конфигурации (например, политики сети, привязки ролей и политики безопасности модулей pod) для всех кластеров Kubernetes, чтобы удовлетворять требованиям соответствия нормативам и управления.
Соответствие кластерам
Состояние соответствия каждой конфигурации GitOps сообщается в Azure. Это позволяет отслеживать все неудачные развертывания.
Хранит ли Kubernetes какие-либо данные клиентов за пределами региона кластера с поддержкой Azure Arc?
Функция хранения данных клиентов в одном регионе сейчас доступна только для регионов "Юго-Восточная Азия" (Сингапур) в Азиатско-Тихоокеанском географическом регионе и "Южная Бразилия" (штат Сан-Паулу) в географическом регионе "Бразилия". Для всех других регионов данные клиента хранятся в геообъектах. Это применимо для расширений поставщика секретов Open Service с поддержкой Azure Arc и Azure Key Vault Secret Provider, поддерживаемых в Kubernetes с поддержкой Azure Arc. Сведения о хранении данных клиентов см. в документации по другим расширениям кластера. Дополнительные сведения см. на этой странице.
Следующие шаги
- См. пошаговое краткое руководство по подключению кластера Kubernetes к Azure Arc.
- У вас уже есть кластер AKS или кластер Kubernetes с поддержкой Azure Arc? Создайте конфигурации GitOps в кластере Kubernetes с поддержкой Azure Arc.
- Узнайте, как настроить конвейер CI/CD с помощью GitOps.
- Узнайте как использовать политику Azure для масштабного применения конфигураций.
- Использование автоматизированных сценариев Kubernetes с поддержкой Azure Arc с помощью Azure Arc Jumpstart.