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


Экземпляры контейнеров Azure и оркестраторы контейнеров

Благодаря небольшому размеру и ориентации приложения контейнеры хорошо подходят для эластичных сред доставки и архитектур на основе микрослужб. Задача автоматизации большого числа контейнеров, управления ими, а также способом их взаимодействия называется оркестрацией. Популярными оркестраторами контейнеров являются Kubernetes, DC/OS и Docker Swarm.

Служба "Экземпляры контейнеров Azure" предоставляет ряд базовых возможностей планирования платформ оркестрации. И хотя он не охватывает службы с более высоким уровнем ценности, предоставляемые этими платформами, Экземпляры контейнеров Azure могут быть дополнительными для них. В этой статье описана область обработки службы "Экземпляры контейнеров Azure" и взаимодействие с ней полнофункциональных оркестраторов контейнеров.

Традиционная оркестрация

Стандартное определение оркестрации включает в себя следующие задачи:

  • Планирование. Получив образ контейнера и запрос ресурса, найдите подходящий компьютер для запуска контейнера.
  • Сходство/удаление сходства. Укажите, что контейнеры должны выполняться рядом друг с другом (для повышения производительности) или на достаточном расстоянии друг от друга (для увеличения доступности).
  • Мониторинг работоспособности. Проверьте наличие ошибок в контейнере и автоматически перенесите их устранение.
  • Отработка отказа. Отслеживайте процессы, которые выполняются на каждом компьютере, и перенесите контейнеры с неисправных компьютеров в работоспособные узлы.
  • Масштабирование. Добавьте или удалите экземпляры контейнеров в соответствии с требованиями вручную или автоматически.
  • Сеть. Укажите наложенную сеть для координации контейнеров, взаимодействующих в нескольких хост-компьютерах.
  • Обнаружение служб. Обеспечьте возможность автоматического взаимного обнаружения контейнеров, даже когда они перемещаются между хост-компьютерами и их IP-адреса изменяются.
  • Координирование обновления приложений. Управляйте обновлениями контейнеров, чтобы избежать простоя приложений, и выполняйте откат, если что-то пошло не так.

Оркестрация с помощью экземпляров контейнеров Azure: многоуровневый подход

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

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

Сценарии

Хотя интеграция оркестратора с Экземпляры контейнеров Azure по-прежнему нарождается, мы ожидаем, что несколько различных сред возникают:

Монопольная оркестрация экземпляров контейнеров

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

Сочетание экземпляров контейнеров и контейнеров на виртуальных машинах

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

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

Пример реализации: виртуальные узлы на Экземпляры контейнеров Azure

Чтобы быстро масштабировать рабочие нагрузки приложений в кластере Службы Azure Kubernetes (AKS), используйте виртуальные узлы, созданные динамически в экземплярах контейнеров Azure. Виртуальные узлы регистрируются как узлы с неограниченной емкостью в плоскости управления кластером AKS. При развертывании модулей pod в виртуальном узле в кластере AKS они выполняются как группы контейнеров в ACI.

В настоящее время виртуальные узлы поддерживают экземпляры контейнеров Linux. Дополнительные сведения см. в Экземпляры контейнеров Azure виртуальных узлов.

Следующие шаги

Создайте свой первый контейнер с использованием службы "Экземпляры контейнеров Azure", используя краткое руководство.