Azure Kubernetes Service (AKS). Планирование проектирования и операций

Kubernetes — это система с открытым исходным кодом, которая автоматизирует развертывание, масштабирование и управление контейнерными приложениями. Мы рекомендуем Azure Kubernetes Service (AKS) развернуть управляемый кластер Kubernetes в Azure.

Организации внедряют Kubernetes в Azure с различной скоростью. Путешествие вашей организации, скорее всего, будет следовать пути, аналогичному тому, как вы используете другие технологии. Вы изучаете основы, согласовываете роли и обязанности в вашей организации и развертываете рабочие нагрузки, готовые для производства. Оттуда вы выполняете итерации и развиваете своё решение по мере изменения потребностей клиентов и бизнеса.

Схема, на которую показано путешествие по внедрению AKS.

Общие сведения об AKS

Если вы не знакомы с Kubernetes или AKS, начните с Microsoft Learn. Эта бесплатная онлайн-платформа предоставляет интерактивное обучение для Microsoft продуктов. Схема обучения Introduction to Kubernetes на Azure охватывает основные понятия контейнеров, управления кластерами AKS и развертывания рабочей нагрузки.

Путь к эксплуатации

После того как вы поймете преимущества и компромиссы Kubernetes, оцените, подходит ли AKS в качестве вычислительной платформы Azure для вашей рабочей нагрузки, и установите организационные политики, связанные с этой технологией.

Для большинства рабочих нагрузок начните с AKS Automatic. AkS Automatic — это предварительно настроенные параметры, которые соответствуют рекомендациям Azure Well-Architected Framework. Она включает встроенную конфигурацию для управления узлами, масштабирования, политик безопасности и обновлений. Эта конфигурация сокращает время, затраченное на проектирование платформы.

Если для рабочей нагрузки требуется явный контроль над сетями, пулами узлов, частотой обновления или авторизацией, используйте базовый кластер AKS в качестве эталонной архитектуры для полной настройки с помощью AKS Standard.

Выберите свой путь AKS

В следующей таблице показано, как выбрать akS Automatic и AKS Standard на основе требований рабочей нагрузки:

Потребности рабочей нагрузки Рекомендуемый путь Почему
Ранний этап зрелости Kubernetes с акцентом на быстрый выпуск AKS Automatic Снижает сложность управления платформой; команды сосредоточены на приложениях, а не на настройке инфраструктуры.
Обычное размещение приложений с использованием стандартной безопасности, масштабирования и сети AKS Automatic Готовые к работе значения по умолчанию предварительно настроены. Автоматическое управление узлами с поддержкой HPA/KEDA/VPA, автоматическое обновление, встроенные соглашения об уровне обслуживания, управляемые политики безопасности и эффективная упаковка корзин. Снижение затрат на проектирование платформы.
Явный контроль над пулами узлов, топологией сети или частотой обновления AKS Standard на основе базовой архитектуры Полная настройка с помощью эталонной архитектуры кластера AKS. Поддерживает расширенные конфигурации сети, настраиваемые CNI и точное управление компонентами.
Среды с жёстким регулированием, требующие строгих механизмов контроля соответствия и аудиторских журналов AKS Standard на основе регламентированной архитектуры кластера Архитектура PCI DSS демонстрирует модели обеспечения соответствия, применимые во многих регулируемых отраслях. Он включает явный контроль над каждым компонентом, включает проверку нормативных требований и документацию по соответствию требованиям.
Установленные процессы проектирования платформы и архитектурные стандарты AKS Standard Поддерживает расширенные операционные шаблоны и стандартизацию организации.

AkS Automatic: Готово к производству по умолчанию

AKS Автоматически настраивает и автоматизирует множество операционных задач, уменьшая количество решений и конфигураций вручную, необходимых для выполнения рабочих нагрузок.

Что предварительно настроено в AKS Automatic

  • Пулы управляемых системных узлов: AKS подготавливает и управляет системными компонентами от вашего имени. Вы не управляете виртуальными машинами плоскости управления.
  • Автоматическое масштабирование: Horizontal Pod Autoscaler (HPA), Kubernetes Event-Driven Autoscaler (KEDA) и Vertical Pod Autoscaler (VPA) автоматически включаются в соответствии с потребностями нагрузки.
  • Автоматические обновления: обновления образов ОС кластера и узлов выполняются автоматически с безопасной периодичностью.
  • Встроенные средства наблюдаемости: управляемая служба Azure Monitor для Prometheus (метрики) и Container insights (журналы) включены по умолчанию.
  • Встроенные элементы управления безопасностью: средства защиты развертывания, удостоверение рабочей нагрузки, издатель OIDC и интеграция виртуальной сети сервера API предварительно настроены для применения рекомендаций Kubernetes.
  • Эффективное использование ресурсов: Поды оптимально распределяются по узлам, чтобы максимально повысить уровень использования ресурсов и свести к минимуму неиспользуемые мощности.
  • Включенные соглашения об уровне обслуживания: SLA готовности pod (99,9% в течение 5 минут) и SLA доступности (99,95%) включены.

Полное сравнение функций см. в статье AKS Automatic и AKS Standard.

AKS Standard: базовая архитектура и специализированные сценарии

Если вам требуется настройка за пределами предварительно настроенного интерфейса AKS Automatic, используйте базовый кластер AKS в качестве эталонной архитектуры. В базовом плане показаны готовые к работе шаблоны проектирования, элементы управления безопасностью и рекомендации по эксплуатации для AKS Standard.

Начните разработку из базовой реализации и измените ее в соответствии с конкретными потребностями рабочей нагрузки.

Специализированные архитектуры для конкретных сценариев

В следующих базовых реализациях описывается настройка компонентов базового кластера AKS для конкретных вариантов использования за пределами типичного размещения приложений.

Микрослужбы

При запуске микрослужб в базовом кластере необходимо настроить политики сети и автомасштабирование pod и реализовать распределенную трассировку для наблюдения.

Соответствие требованиям высокого уровня безопасности

Для регулируемых сред расширьте базовую реализацию с помощью более строгих элементов управления безопасностью и ограниченных взаимодействий с кластером. В следующем примере показан кластер, на котором выполняется рабочая нагрузка в соответствии с финансовыми регламентами.

Непрерывность бизнес-процессов и аварийное восстановление

Для устойчивых решений разверните несколько базовых экземпляров кластера в разных регионах в активной или активной конфигурации с высоким уровнем доступности.

Лучшие практики

В рамках текущих операций периодически проверяйте ваш кластер, чтобы убедиться, что он соответствует рекомендуемым лучшим практикам.

Для автоматических кластеров AKS: по умолчанию реализовано множество рекомендаций. Ознакомьтесь с документацией по автоматическому использованию AKS , чтобы понять, какие шаблоны предварительно настроены и где может потребоваться дополнительная конфигурация для рабочей нагрузки.

Для кластеров AKS Standard: начните с приведения кластера в соответствие с базовым кластером AKS, а затем примените рекомендации из документации по лучшим практикам.

Дополнительные сведения можно найти здесь

Вы также можете рассмотреть использование утилиты, созданной сообществом, например AKS Checklist, чтобы организовать и отслеживать, насколько ваша среда соответствует этим рекомендациям.

Руководство по операциям

После развертывания рабочей нагрузки в AKS операции второго этапа становятся приоритетом. Руководство по операциям AKS day-2 помогает удовлетворять потребности клиентов и осуществлять реагирование на инциденты посредством оптимизированных процессов триажа.

Мониторинг рабочей нагрузки и кластера

Включите мониторинг кластеров AKS для сбора метрик и журналов. Затем анализировать, визуализировать и обрабатывать эти данные, чтобы поддерживать оптимальную исправность и производительность.

Автоматические кластеры AKS по умолчанию включают управляемую службу Azure Monitor для Prometheus для метрик и Container Insights для журналов. При необходимости можно включить Управление Azure для Grafana для расширенной визуализации.

Кластеры AKS Standard требуют настройки мониторинга отдельно с помощью Azure Monitor с управляемой службой для Prometheus, Container Insights и Управление Azure для Grafana для обеспечения комплексной видимости между кластерами и уровнями приложений.

Оставайтесь актуальными с помощью AKS

Kubernetes и AKS быстро развиваются. Просмотрите дорожную карту, чтобы принимать обоснованные архитектурные решения и предвидеть планируемое устаревание.

Другие ресурсы

Типичное путешествие с AKS начинается с изучения AKS и продолжается расширением существующих кластеров, чтобы соответствовать новым требованиям продукта и клиентов. Следующие ресурсы предоставляют справочные материалы для конкретных ситуаций на пути.

Примеры решений

В следующих примерах решений в качестве основы используются AKS:

Kubernetes с поддержкой Azure Arc

AKS предоставляет управляемый интерфейс Kubernetes на Azure. Но вы можете управлять некоторыми рабочими нагрузками в собственных кластерах Kubernetes с помощью Azure Arc с поддержкой Kubernetes. Поддерживаемые кластеры включают Red Hat OpenShift, систему SUSE Rancher Kubernetes (RKE) и Canonical Charmed Kubernetes.

Вы также можете управлять кластерами с помощью Azure Arc и Kubernetes Cluster API Provider Azure, чтобы использовать представление Azure Resource Manager и расширения кластеров, такие как аналитика контейнеров Azure Monitor и политика Политика Azure. Kubernetes с поддержкой Azure Arc также поддерживает AKS в кластерах Azure Local и Kubernetes, работающих в других облачных поставщиках.

Kubernetes с поддержкой Azure Arc

Поставщик управляемых служб

Управляемые поставщики услуг используют Azure Lighthouse для управления ресурсами для нескольких клиентов. AKS поддерживает Azure Lighthouse, чтобы вы могли управлять хостинг-средами Kubernetes и развертывать контейнерные приложения в рамках арендаторов ваших клиентов.

Специалисты по AWS или Google Cloud

Следующие статьи сравнивают службы Azure с другими облачными платформами, чтобы быстро приступить к работе с Azure: