Расширения кластера
Диаграммы Helm помогают управлять приложениями Kubernetes, предоставляя стандартные блоки, необходимые для определения, установки и обновления даже самых сложных приложений Kubernetes.
Компонент расширения кластера основан на компонентах упаковки Helm. С расширениями вы используете интерфейс на основе Azure Resource Manager для установки и управления жизненным циклом различных возможностей на основе кластера Kubernetes.
Оператор кластера или администратор могут использовать функцию расширений кластера, чтобы:
- Установка решений для управления ключами, работы с данными, а также установка приложений в кластере Kubernetes и управление ими.
- Использование Политики Azure для автоматизации масштабного развертывания расширений во всех кластерах вашей среды.
- Подписка на выпуски (например, предварительную или стабильную версию) для каждого расширения.
- Настройка автоматического обновления для расширений или закрепление определенной версии и выполнение обновления вручную.
- Обновление свойств расширения или удаление экземпляров расширений.
Расширения доступны для поддержки широкого спектра служб и сценариев Azure. Список поддерживаемых в настоящее время расширений см. в разделе "Доступные расширения для кластеров Kubernetes с поддержкой Azure Arc".
Архитектура
Экземпляр расширения кластера создается как расширение ресурса Azure Resource Manager (Microsoft.KubernetesConfiguration/extensions
) на вершине ресурса Kubernetes с поддержкой Azure Arc (представлено Microsoft.Kubernetes/connectedClusters
) в Azure Resource Manager.
Это представление в Azure Resource Manager позволяет создавать политику, которая проверяет наличие всех ресурсов Kubernetes с поддержкой Azure Arc или без определенного расширения кластера. Определив, какие кластеры отсутствуют расширения кластера с нужными значениями свойств, можно устранить эти несоответствующие ресурсы с помощью Политика Azure.
Выполнение config-agent
в кластере отслеживает новые и обновленные ресурсы расширения в ресурсе Kubernetes с поддержкой Azure Arc. extensions-manager
Агент, работающий в кластере, считывает тип расширения, который необходимо установить, а затем извлекает связанную диаграмму Helm из Реестр контейнеров Azure или реестра контейнеров Майкрософт и устанавливает его в кластере.
И компоненты, выполняемые config-agent
extensions-manager
в экземпляре расширения кластера, обновляются версии и удаление экземпляра расширения. Эти агенты используют управляемое удостоверение, назначаемое системой, для безопасного взаимодействия со службами Azure.
Примечание.
config-agent
проверяет наличие новых или обновленных экземпляров расширений на вершине кластера Kubernetes с поддержкой Azure Arc. Агенты требуют подключения для требуемого состояния расширения, чтобы вытащить его в кластер. Если агентам не удастся подключиться к Azure, распространение желаемого состояния в кластер задержится.
Защищенные параметры конфигурации для экземпляра расширения хранятся до 48 часов в службах Kubernetes с поддержкой Azure Arc. В результате, если кластер остается отключенным в течение 48 часов после создания ресурса расширения в Azure, расширение изменяется из Pending
состояния в состояние Failed
. Чтобы предотвратить это, рекомендуется регулярно использовать кластеры в сети.
Внимание
В настоящее время расширения кластера Kubernetes с поддержкой Azure Arc не поддерживаются в кластерах на основе ARM64, за исключением Flux (GitOps). Чтобы установить и использовать другие расширения кластера, кластер должен иметь по крайней мере один узел операционной системы и типа linux/amd64
архитектуры.
Область расширения
Каждый тип расширения определяет область, в которой они работают в кластере. Установка расширений в кластерах Kubernetes с поддержкой Arc является областью действия кластера или пространством имен.
Расширение с областью кластера будет установлено в указанном во release-namespace
время создания расширения. Как правило, в кластере устанавливаются только один экземпляр расширения с областью действия кластера и его компоненты, такие как pod, операторы и пользовательские определения ресурсов (CRD).
Расширение с областью имен можно установить в заданном пространстве имен, предоставленном –namespace
с помощью свойства. Так как расширение можно развернуть в области пространства имен, в кластере может выполняться несколько экземпляров расширения, ограниченного пространством имен, и его компоненты могут выполняться в кластере. Каждый экземпляр расширения имеет разрешения на пространство имен, в котором он развертывается. Все перечисленные выше расширения являются кластеризованными, за исключением сетки событий в Kubernetes.
Все доступные в настоящее время расширения являются кластеризованными, за исключением Azure Управление API в Azure Arc.
Следующие шаги
- Воспользуйтесь нашим кратким руководством по подключению кластера Kubernetes к Azure Arc.
- Разверните расширения кластера в кластере Kubernetes с поддержкой Azure Arc.