Реестр контейнеров Azure: возможности и ограничения SKU

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

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

Реестр контейнеров Azure предлагает три варианта плана тарификации: "Базовый", "Стандартный" и "Премиум". Каждый SKU предлагает различные функции и ограничения, чтобы соответствовать различным сценариям, от разработки программного обеспечения и тестирования до производственных нагрузок.

Артикул (SKU) Описание
Basic Оптимизированный по стоимости начальный вариант для разработчиков, изучающих Реестр контейнеров Azure. Базовые реестры обладают большинством таких же возможностей, как и реестры уровня "Стандартный" и "Премиум", таких как интеграция аутентификации Microsoft Entra , удаление изображений и веб-хуки . Однако включенная ёмкость хранения и пропускная способность обработки изображений наиболее подходят для менее интенсивных сценариев использования, а некоторые функциональные возможности недоступны.
Стандарт Реестры уровня "Стандартный" предоставляют те же возможности, что и реестры уровня "Базовый", но больший размер хранилища и более высокую пропускную способность образов. Стандартные реестры удовлетворяют потребностям многих рабочих сценариев.
Премиум В реестрах уровня "Премиум" обеспечивается наивысший объем хранилища и количество параллельных операций, что делает возможными сценарии с большим объемом данных. В дополнение к более высокой пропускной способности образа Premium добавляет такие функции, как георепликация для обеспечения высокой доступности путем управления одним реестром в нескольких регионах, приватного канала с частными конечными точками для ограничения доступа к реестру, а также более высокой пропускной способности API и пропускной способности для крупномасштабных параллельных развертываний.

Каждый SKU включает определенный объем бесплатного хранилища, с дополнительной памятью, доступной по тарифу на ГБ. Каждый номер SKU также имеет другой максимальный предел хранения.

SKU "Базовый", "Стандартный" и "Премиум" предоставляют одинаковые программатические возможности и API для плоскости данных. Они также получают все преимущества от хранилища образов, управляемого полностью Azure, и все SKU имеют зональную избыточность в Реестр контейнеров Azure, включенную по умолчанию в поддерживаемых регионах. Однако номер SKU уровня "Премиум" обеспечивает более широкий спектр функций и имеет более высокие ограничения.

Возможности и ограничения SKU

В следующей таблице приведены сведения о функциях и ограничениях реестра номеров SKU "Базовый", "Стандартный" и "Премиум".

Ресурс Базовая Стандарт Премиум
Включенное хранилище1 (ГиБ) 10 100 500
Ограничение хранилища (ТиБ) 40 40 100
Максимальный размер слоя образа (ГиБ) 200 200 200
Максимальный размер манифеста (МиБ) 4 4 4
Веб-хуки 2 10 500
Приватный канал с частными конечными точками Не применимо Не применимо Supported
• Частные конечные точки Не применимо Не применимо 200
Правила сети общедоступных IP-адресов Не применимо Не применимо 200
Доступ к виртуальной сети конечной точки службы Не применимо Не применимо Preview
• Правила виртуальной сети Не применимо Не применимо 100
Разрешения в области репозитория с назначениями ролей Microsoft Entra Supported Supported Supported
Разрешения на уровне репозитория с не Microsoft Entra токенами и картами областей Supported Supported Supported
• Токены, отличные от Microsoft Entra 100 500 50,000
• Карты областей токенов не-Microsoft Entra 100 500 50,000
• Действия по карте области токенов, не связанных с Microsoft Entra 500 500 500
• Репозитории для каждой карты области действий токенов, не относящихся к Microsoft Entra2 500 500 500
Анонимный доступ к выгрузке Не применимо Supported Supported
Георепликация Не применимо Не применимо Supported
Выделенные конечные точки данных Не применимо Не применимо Supported
Зоны доступности Supported Supported Supported
Доверие к содержимому Не применимо Не применимо Supported
Ключи, управляемые клиентом Не применимо Не применимо Supported
Подключенные реестры Не применимо Не применимо Supported
Потоковая передача артефактов Не применимо Не применимо Supported
Правила кэша артефактов Не применимо Supported Supported
Настройка правила доступа к IP-адресам Не применимо Не применимо Supported
Политика удержания для непомеченных манифестов Не применимо Не применимо Supported
Передача артефактов Не применимо Не применимо Supported
Политика экспорта Не применимо Не применимо Supported
Пулы агентов, выделенных для задач Не применимо Не применимо Supported

1 Хранилище включено в ежедневный тариф для каждого уровня. Может использоваться дополнительное хранилище, при этом взимается дополнительная плата в день за каждый ГиБ до достижения предела хранилища для реестра. Сведения о тарифах см. в разделе Цены на службу Реестр контейнеров Azure. Если вам требуется хранилище, превышающее ограничение хранилища реестра, обратитесь в службу поддержки Azure.

2 Отдельные действия из content/delete, content/read, content/write, metadata/read, metadata/write соответствуют ограничению количества репозиториев на карту области действия маркера, не относящегося к Microsoft Entra.

Замечание

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

Сведения о ценах на каждый из вариантов SKU Реестр контейнеров Azure см. в разделе Container Registry pricing. Дополнительные сведения о ценах на передачу данных см. в разделе "Цены на пропускную способность".

Ограничения производительности загрузки и передачи образа реестра

Параллелизм API, пропускная способность и ограничение во время операций с большим объемом в основном влияют на производительность получения и загрузки изображений. SKU реестра, конфигурация сети и конфигурация клиента определяют эти факторы.

Ограничения пропускной способности и параллелизма API

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

Следующие факторы влияют на параллелизм API и пропускную способность во время извлечения и отправки изображений:

  • Число и размер слоев изображений
  • Повторное использование слоев между изображениями в реестре
  • Дополнительные вызовы API, необходимые для каждой операции
  • Масштаб параллельных развертываний, таких как развертывания Kubernetes, извлекающих образы на нескольких узлах одновременно

Следующие факторы клиентской среды влияют на производительность:

  • Управляющая программа Docker или конфигурация Podman для параллельных операций
  • Конфигурация выполнения контейнера, например параметры параллелизма containerd или CRI-O
  • Параметры конфигурации кластера или уровня данных кластера

Следующие сетевые факторы влияют на производительность:

  • Пропускная способность сети и задержка для сетевых прыжков из клиентов в реестр
  • Конфигурация сети на стороне клиента, например правила брандмауэра и параметры прокси-сервера
  • Географическое расстояние до реестра или ближайшей реплики, если геореплицировано

Дополнительные сведения об операциях API, происходящих во время отправки и извлечения образа, см. в документации по API Docker HTTP версии 2 . Сведения об устранении неполадок см. в разделе "Устранение неполадок с производительностью реестра".

Ограничения регулирования и пропускной способности

В периоды большого объема запросов может возникнуть ограничение с ошибкой HTTP 429 Too many requests или низкой пропускной способностью. Чтобы устранить эти проблемы, выполните следующие действия.

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

Замечание

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

Отображение использования реестра

Сведения об использовании помогают принимать решения об изменении номера SKU , когда реестр приближается к ограничению, и помогает управлять потреблением.

Чтобы получить снимок состояния текущего потребления хранилища и других ресурсов реестра по сравнению с ограничениями SKU этого реестра, посмотрите страницу Overview реестра на портале Azure. Вы также можете использовать ТАКИЕ API, как az acr show-usage (Azure CLI), Get-AzContainerRegistryUsage (Azure PowerShell) или Registries — List Usages (REST API).

Замечание

Использование хранилища реестра может не отражать все последние операции реестра. Отслеживайте метрику реестраStorageUsed для актуальных данных.

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

В геореплицированном реестре для домашнего региона отображается использование хранилища. Умножьте количество реплик для общего объема хранилища.

Изменение номера SKU реестра

Номер SKU реестра можно изменить на портале Azure или с помощью Azure CLI или Azure PowerShell. Вы можете свободно перемещаться между SKU, если SKU, на который вы переключаетесь, имеет требуемую максимальную емкость хранилища.

При изменении номера SKU реестра отсутствуют время простоя и влияние на его операции. Однако при переходе с уровня "Премиум" на более низкий номер SKU функции, относящиеся к категории "Премиум", отключены. В некоторых случаях необходимо удалить ресурсы, связанные с этими функциями, прежде чем переключать SKU. Например, необходимо удалить все георепликации или подключенные реестры, прежде чем переходить с уровня "Премиум" на "Стандартный" или "Базовый".

Чтобы изменить номера SKU на портале Azure, перейдите в реестр контейнеров. В меню службы в разделе "Параметры" выберите "Свойства". Измените параметр ценового плана и нажмите кнопку "Сохранить".

Чтобы изменить номера SKU с помощью Azure CLI, используйте команду az acr update. Например, чтобы переключиться на Premium, выполните приведенные ниже действия.

az acr update --name myContainerRegistry --sku Premium

Чтобы изменить SKU с помощью Azure PowerShell, используйте командлет Update-AzContainerRegistry. Например, чтобы переключиться на Premium, выполните приведенные ниже действия.

Update-AzContainerRegistry -ResourceGroupName myResourceGroup -Name myContainerRegistry -Sku Premium

Дополнительные сведения о предстоящих функциях Реестр контейнеров Azure см. в GitHub Roadmap.