Управление Kubernetes-инфраструктурой часто похоже на жонглирование множеством задач. Это отнимает у разработчиков драгоценное время и внимание, которые лучше потратить на создание приложений. Чтобы решить эту проблему, Microsoft представила AKS Automatic — новый режим развертывания для Azure Kubernetes Service, который сейчас доступен в режиме предварительного просмотра. Его цель — снять с команд значительную часть операционной нагрузки и передать её на платформу Azure, позволяя сосредоточиться на коде, а не на кластерах.
В этой статье мы разберём, что такое AKS Automatic, какие преимущества он даёт и как развернуть свой первый автоматизированный кластер.
Что такое AKS Automatic?
AKS Automatic — это упрощённый вариант развертывания кластеров AKS. Вместо того чтобы вручную управлять настройкой, масштабированием и обновлением инфраструктуры, пользователь получает всё «из коробки». Платформа берёт на себя обновления, безопасность и эксплуатацию кластера, освобождая команды для разработки приложений.
Ключевые возможности и преимущества
1. Интеллектуальное управление узлами и масштабирование
Главное достоинство — полностью автоматизированное управление узлами с помощью Node Autoprovisioning (NAP), основанного на проекте Karpenter с открытым исходным кодом. Система анализирует требования ожидающих запуска pod’ов и автоматически подбирает оптимальный тип виртуальной машины для баланса производительности и стоимости.
Кроме того, AKS Automatic сразу включает несколько механизмов масштабирования:
-
Horizontal Pod Autoscaler (HPA): масштабирует количество pod’ов в зависимости от нагрузки.
-
KEDA (Kubernetes Event-driven Autoscaling): изменяет масштаб приложений на основе внешних событий (например, сообщений из очередей или триггеров базы данных).
-
Vertical Pod Autoscaler (VPA): динамически корректирует запросы ресурсов pod’ов (CPU, память).
Дополнительно:
-
Автоматический ремонт узлов: при сбое система пытается восстановить узел.
-
Автоматические обновления кластера: обеспечивают актуальные версии и патчи безопасности с возможностью планирования технических окон.
Важно: пока AKS Automatic поддерживает только узлы на Azure Linux, Windows-узлы недоступны.
2. Встроенная безопасность по умолчанию
Безопасность интегрирована изначально и соответствует лучшим практикам Microsoft:
-
Azure RBAC: управление доступом через роли и разрешения Azure.
-
Microsoft Entra Workload ID: безопасное подключение приложений к сервисам Azure без секретов и ключей.
-
Политики развёртывания: автоматическая проверка на соответствие стандартам Kubernetes с помощью Azure Policy.
-
Очистка образов: удаление уязвимых и неиспользуемых контейнерных образов.
3. Полностью управляемая сеть
Сетевые настройки в Kubernetes часто становятся проблемой, но AKS Automatic упрощает этот процесс, предоставляя готовую оптимизированную инфраструктуру:
-
Azure CNI Overlay с Cilium: высокопроизводительная и безопасная связь между pod’ами.
-
Управляемый Nginx Ingress: интеграция с Azure DNS для автоматической настройки доменов и Azure Key Vault для управления SSL/TLS-сертификатами.
-
Управляемый NAT Gateway: надёжное и масштабируемое исходящее интернет-соединение.
Практическое руководство: создание кластера AKS Automatic
Шаг 1. Настройка Azure CLI
Установите расширение и включите необходимые флаги:
az extension add --name aks-preview az extension update --name aks-preview az feature register --namespace "Microsoft.ContainerService" --name "AKS-Automatic" az feature register --namespace "Microsoft.ContainerService" --name "NodeAutoProvisioningPreview" az provider register --namespace Microsoft.ContainerService
Дождитесь, пока статус функций станет Registered.
Шаг 2. Создание кластера через Azure Portal
-
Откройте Kubernetes Services → Create.
-
В поле «Cluster preset configuration» выберите Automatic.
-
Заполните базовые параметры (ресурсная группа, имя, регион).
-
(Опционально) Настройте мониторинг с Azure Monitor, Prometheus и Grafana.
-
Нажмите Review + Create.
Шаг 3. Подключение и проверка
Получите учётные данные:
az aks get-credentials --resource-group <ResourceGroup> --name <ClusterName>
Проверьте узлы и системные pod’ы:
kubectl get nodes kubectl get pods -n kube-system
Шаг 4. Развёртывание тестового приложения
Создайте пространство имён:
kubectl create namespace demo-app
Разверните приложение:
kubectl apply -f your-app.yaml -n demo-app
Получите публичный IP Ingress:
kubectl get ingress -n demo-app
Откройте IP в браузере — приложение должно быть доступно.
Итог
AKS Automatic — это серьёзный шаг вперёд в упрощении работы с Kubernetes. Автоматизация инфраструктуры, масштабирования, обновлений и безопасности снимает с команд рутинные задачи и позволяет сосредоточиться на создании бизнес-ценности. Несмотря на то, что функция пока в режиме предварительного просмотра, она уже демонстрирует огромный потенциал для пользователей Azure Kubernetes Service.