Поделиться через


Проектирование и эксплуатация кластеров

В этой статье рассматриваются конфигурация кластера и проектирование сети. Узнайте, как обеспечить будущую масштабируемость путем автоматизации подготовки инфраструктуры. Развертывание — это процесс настройки ИТ-инфраструктуры, необходимой вам. Автоматическая подготовка инфраструктуры поддерживает удаленную установку и настраивает виртуальные среды. Она также помогает поддерживать высокий уровень доступности, планируя непрерывность бизнес-процессов и аварийное восстановление.

Планирование, обучение и подтверждение

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

  • Вы определили требования к проектированию сети для кластера?
  • У вас есть службы с различными требованиями? Сколько пулов узлов вы собираетесь использовать?

Контрольный перечень:

  • Определите рекомендации по проектированию сети. Ознакомьтесь с рекомендациями по проектированию сети кластера, сравнением сетевых моделей и выбором сетевого подключаемого модуля Kubernetes, который соответствует вашим потребностям. Для сетевого интерфейса контейнеров Azure (CNI) учитывайте количество IP-адресов, необходимых как произведение максимального количества подов на узел (по умолчанию 30) и количества узлов. Добавьте один узел, необходимый во время обновления. При выборе служб балансировки нагрузки рекомендуется использовать Ingress-контроллер, если служб слишком много, чтобы сократить число открытых конечных точек. Для Azure CNI служба CIDR должна быть уникальной в виртуальной сети и всех подключенных виртуальных сетях, чтобы обеспечить соответствующую маршрутизацию.

    Дополнительные сведения см. на следующих ресурсах:

  • Создайте несколько пулов узлов. Для поддержки приложений с разными требованиями к вычислительным ресурсам или хранилищу можно настроить кластер с несколькими пулами узлов. Например, используйте дополнительные пулы узлов для предоставления GPU для вычислительных приложений или доступа к хранилищу SSD с высокой производительностью. Дополнительные сведения см. в статье "Создание и управление несколькими пулами узлов" для кластера в службе Azure Kubernetes.

  • Определите требования к доступности. Как минимум два пода в рамках службы Azure Kubernetes обеспечивают высокую доступность вашего приложения в случае сбоев или перезапусков подов. Используйте три или более подов для обработки нагрузки во время сбоев и перезапусков. Для конфигурации кластера требуется не менее двух узлов в группе доступности или масштабируемом наборе виртуальных машин, чтобы соответствовать соглашению об уровне обслуживания 99,95%. Используйте как минимум три pod, чтобы обеспечить их планирование во время сбоев и перезагрузок узлов.

    Чтобы обеспечить более высокий уровень доступности для приложений, кластеры можно распределять по зонам доступности. Эти зоны физически разделены центрами обработки данных в определенном регионе. Если компоненты кластера распределены по нескольким зонам, кластер может терпеть сбой в одной из зон. Ваши приложения и операции управления остаются доступными, даже если весь центр обработки данных испытывает сбой. Дополнительные сведения см. в статье "Создание кластера Службы Azure Kubernetes (AKS), использующего зоны доступности.

Перейдите на рабочую среду и примените лучшие практики по инфраструктуре.

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

  • Вы можете уверенно развернуть инфраструктуру кластера?
  • Применены ли квоты ресурсов?

Контрольный перечень:

  • Автоматизируйте провизию кластера. С помощью инфраструктуры в качестве кода можно автоматизировать подготовку инфраструктуры, чтобы обеспечить большую устойчивость во время аварий и повысить гибкость, чтобы быстро развернуть инфраструктуру по мере необходимости. Дополнительные сведения см. в статье "Создание кластера Kubernetes с помощью службы Azure Kubernetes с помощью Terraform".

  • Планирование доступности с помощью бюджетов сбоев pod. Чтобы поддерживать доступность приложений, определите бюджеты прерываний pod (PDB) для обеспечения доступности минимального количества pod в кластере во время сбоев оборудования или обновлений кластера. Дополнительные сведения см. в статье «Планирование доступности с использованием бюджетов нарушений работы pod».

  • Примените квоты ресурсов в пространствах имен. Планирование и применение квот ресурсов на уровне пространства имен. Квоты можно задать для вычислительных ресурсов, ресурсов хранилища и количества объектов. Дополнительную информацию см. в разделе Принудительная квота ресурсов.

Оптимизация и масштабирование

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

  • У вас есть план обеспечения непрерывности бизнес-процессов и аварийного восстановления?
  • Можно ли масштабировать кластер для удовлетворения требований приложений?
  • Вы можете отслеживать работоспособность кластера и приложения и получать оповещения?

Контрольный перечень: