Rate this post

Управление 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

  1. Откройте Kubernetes ServicesCreate.

  2. В поле «Cluster preset configuration» выберите Automatic.

  3. Заполните базовые параметры (ресурсная группа, имя, регион).

  4. (Опционально) Настройте мониторинг с Azure Monitor, Prometheus и Grafana.

  5. Нажмите 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.