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


Подготовка приложений контейнеров Azure

Примечание.

Планы "Базовый", "Стандартный" и "Корпоративный" будут устарели начиная с середины марта 2025 г. с 3-летнего периода выхода на пенсию. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.

Стандартный план потребления и выделенного плана будет устарел с 30 сентября 2024 г. с полным завершением работы после шести месяцев. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в статье "Миграция потребления Azure Spring Apps Standard" и выделенного плана в приложения контейнеров Azure.

Эта статья относится к:✅ Basic/Standard ✅ Enterprise

В этой статье представлен обзор рекомендаций по созданию приложений контейнеров Azure.

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

Необходимые компоненты

Создание среды приложений контейнеров Azure

Чтобы создать среду приложений контейнеров Azure, используйте следующую команду:

az containerapp env create \
    --resource-group $RESOURCE_GROUP \
    --name $ENVIRONMENT \
    --location "$LOCATION"

Другие параметры конфигурации см. в командах CLI для приложений контейнеров Azure.

После создания среды в ней можно развернуть приложение-контейнер. Пошаговые инструкции см. в кратком руководстве по развертыванию первого приложения-контейнера с помощью портал Azure.

Примечание.

Среды приложений-контейнеров удаляются автоматически, если они соответствуют определенному условию, например, если среда остается бездействующей в течение более 90 дней. Полный список условий см. в разделе "Политики" сред контейнеров Azure.

Поддержка регионов

Регионы, поддерживаемые в настоящее время приложениями контейнеров Azure, могут не полностью соответствовать этим регионам, поддерживаемым Azure Spring Apps. Проверьте последнюю доступность в продуктах, доступных по регионам.

Цены

Для экземпляра Azure Spring Apps плата взимается на основе одного из доступных планов: "Базовый", "Стандартный" или "Корпоративный". Хотя в приложениях контейнеров Azure цены зависят от типа среды и выбранных профилей рабочей нагрузки.

Тип среды

В приложениях контейнеров Azure есть два типа среды: Workload profile и Consumption only. Тип среды можно указать с помощью --enable-workload-profiles параметра при создании среды "Приложения контейнеров Azure". По умолчанию --enable-workload-profiles устанавливается значение true при создании Workload profile среды. Если оно falseзадано, Consumption only создается среда.

Workload profile среды позволяют создавать профили потребления и выделенных рабочих нагрузок.

Consumption only среды не поддерживают создание профилей рабочей нагрузки.

Рекомендации по выставлению счетов для разных типов см. в разделе "Типы" сред контейнеров Azure. Если вы планируете использовать собственную виртуальную сеть, рассмотрите различия, описанные в следующей таблице:

Тип среды Поддерживаемые типы планов Description
Профили рабочей нагрузки Потребление, выделенное Поддерживает определяемые пользователем маршруты (UDR), исходящие данные через шлюз NAT и создание частных конечных точек в среде приложения-контейнера. Минимальный обязательный размер подсети — /27.
Только за использование Потребление Не поддерживает определяемые пользователем маршруты (UDR), исходящие данные через шлюз NAT, пиринг через удаленный шлюз или другие пользовательские исходящие данные. Минимальный обязательный размер подсети — /23.

Дополнительные сведения см. в средах приложений контейнеров Azure.

Профиль рабочей нагрузки

Если вы решили создать Workload profile среду, можно использовать профиль по умолчанию Consumption или создать дополнительные Dedicated профили для удовлетворения конкретных требований приложения. В следующей таблице описаны следующие параметры:

Тип графика Description Потенциальное использование
Потребление Автоматически добавляется в любую новую среду. Приложения, которые не требуют конкретных требований к оборудованию.
Выделенный (общего назначения) Балансирует память и вычислительные ресурсы. Приложения, требующие больших объемов ЦП и (или) памяти.
Выделенный (оптимизированная для памяти) Увеличение ресурсов памяти. Приложения, которым требуется доступ к большим данным в памяти, моделям машинного обучения в памяти или другим высоким требованиям к памяти.
Выделенный (GPU с поддержкой) (предварительная версия) GPU с увеличенным объемом памяти и вычислительными ресурсами, доступными в регионах западной части США 3 и Северной Европы. Приложения, требующие GPU.

Дополнительные сведения о типах и размерах профилей рабочей нагрузки см. в разделе "Типы профилей рабочих нагрузок" в приложениях контейнеров Azure.

Оценка затрат

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

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

Дополнительные сведения см. в разделе "Профили рабочей нагрузки" в приложениях контейнеров Azure.

Обслуживание

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

az containerapp env maintenance-config add \
    --resource-group <RESOURCE_GROUP> \
    --environment <ENVIRONMENT_NAME> \
    --weekday Monday \
    --start-hour-utc 1 \
    --duration 8

Аналогично функции планового обслуживания в Azure Spring Apps, вы можете задать дни недели, время начала и длительность ( по крайней мере 8 часов) в приложениях контейнеров Azure. Контейнерные приложения выполняют некритические обновления в соответствии с конфигурацией обслуживания.

Примечание.

Время в формате UTC выражается с помощью 24-часового формата времени. Например, если вы хотите, чтобы ваш начальный час был 1:00 вечера, то start-hour-utc значение равно 13.

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

Только некритические обновления следуют заданному периоду обслуживания. Критические обновления не делают.

Дополнительные сведения см. в статье о плановом обслуживании приложений контейнеров Azure.

Надежность

Поддержка зоны доступности

В большинстве регионов Azure Spring Apps и Azure Container Apps используют зоны доступности в регионах, где они доступны. Список регионов, поддерживающих зоны доступности, см. в службах Azure с поддержкой зоны доступности. Приложения контейнеров Azure обеспечивают одинаковую поддержку надежности независимо от типа плана.

Чтобы включить зоны доступности в приложениях контейнеров Azure, необходимо указать виртуальную сеть с доступной подсетью при создании среды приложения-контейнера. Как Azure Spring Apps, так и приложения контейнеров Azure используют один и тот же параметр для обеспечения избыточности зоны. Дополнительные сведения о включении зон доступности см. в статье "Надежность" в приложениях контейнеров Azure.

Аварийное восстановление

Azure Spring Apps и приложения контейнеров Azure используют единую стратегию аварийного восстановления и непрерывности бизнес-процессов. Дополнительные сведения см. в разделе аварийного восстановления между регионами и непрерывности бизнес-процессов в приложениях контейнеров Azure.

Известные ограничения

  • Запуск и остановка. Azure Spring Apps позволяет запускать или останавливать весь экземпляр службы или отдельные приложения. В отличие от этого, приложения контейнеров Azure поддерживают функции запуска и остановки только на уровне приложения контейнера, а не для всей среды.
  • Удаление. При удалении экземпляра службы Azure Spring Apps все базовые ресурсы автоматически удаляются. В отличие от этого, для приложений контейнеров Azure необходимо сначала удалить вложенные ресурсы, например удалить все приложения-контейнеры перед удалением среды приложений контейнеров.