Настройка и оплата параллельных заданий

Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Внимание

При использовании Azure DevOps Server вы не оплачиваете локальные параллельные задания. Количество агентов является единственным ограничением.

Внимание

Общедоступные проекты в Azure DevOps прекращены. Начиная с 2027 года существующие общедоступные проекты преобразуются в частные. Для получения дополнительной информации см. О прекращении поддержки общедоступных проектов и Переход с общедоступного проекта на GitHub.

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

Предпосылки

Категория Требования
Azure DevOps
Лазурный

Что такое параллельное задание?

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

Совет

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

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

службы Azure DevOps имеют два типа параллельных заданий: размещенные Microsoft и локально размещенные. Он предлагает бесплатный уровень и платный уровень обслуживания для обоих типов. Бесплатный уровень для собственного размещения предоставляется автоматически, но необходимо включить бесплатный уровень, размещаемый Microsoft.

При включении уровня "Бесплатный" для частных проектов вы получаете одно бесплатное задание, которое выполняется до 60 минут каждый раз, с ежемесячным ограничением в 1800 минут (30 часов). Такое же выделение применяется к существующим общедоступным проектам после их преобразования в частный в 2027 году. Чтобы включить бесплатный уровень, размещенный Microsoft, см. статью "Как включить бесплатный уровень параллельных заданий"?

Уровень Ограничение времени задания Ежемесячное ограничение времени
Free tier Одно бесплатное задание, которое может выполняться до 60 минут каждый раз 1800 минут (30 часов) в месяц
Платный уровень 360 минут на задание Нет ежемесячного ограничения

Совет

Если время выполнения вашего конвейера превышает максимально допустимое время выполнения задания, попробуйте разбить конвейер на несколько заданий. Дополнительную информацию о заданиях см. в разделе «Указание заданий в вашем конвейере».

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

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

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

Сколько стоят параллельные задания?

Сколько параллельных заданий нужно?

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

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

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

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

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

Просмотр истории заданий в отчете об использовании пула

Вы можете использовать отчет о потреблении пула, доступный на вкладке пула агентов «Аналитика», чтобы просмотреть диаграмму выполняемых и очередных заданий в сравнении с параллельными заданиями за предыдущие 30 дней. Если у вас есть невыполненные задания в очереди, и выполняемые задания достигли ограничения параллелизма, возможно, потребуется приобрести больше параллельных заданий. Дополнительные сведения см. в отчете о потреблении пула.

Исторический график пула агентов, размещенного в Microsoft

Проверьте параметр параллельных заданий напрямую

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

  1. Перейдите к Настройкам организации>Конвейеры>Параллельные задачи.

    Расположение параллельных заданий в параметрах организации.

    Пример URL-адреса: https://{Your_Organization}/_admin/_buildQueue?_a=resourceLimits

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

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

Как купить дополнительные параллельные задания?

Перед изменением количества параллельных заданий убедитесь, что:

Чтобы купить дополнительные параллельные задания или изменить количество уже приобретённых заданий:

  1. Войдите в свою организацию (https://dev.azure.com/{yourorganization}).

  2. Выберите значок шестерёнкиПараметры организации.

    Открытие параметров организации

  3. Выберите параллельные задания в разделе "Конвейеры", а затем выберите "Приобрести параллельные задания" или "Изменить" для заданий, размещенных корпорацией Майкрософт, или "Изменить" для локальных заданий.

    Снимок экрана: управление параллельными заданиями.

  4. Введите требуемое количество Microsoft размещенных или локальных заданий, а затем нажмите кнопку "Сохранить".

Может потребоваться до 30 минут, пока новое количество параллельных заданий станет активным.

Как включить бесплатный уровень параллельных заданий?

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

Дополнительные сведения о бесплатном уровне параллельных заданий см. в разделе Сколько стоят параллельные задания?

Примечание.

Общедоступные проекты выведены из эксплуатации. Новые общедоступные проекты больше не могут быть созданы. Существующие публичные проекты сохранят свои текущие бесплатные квоты на параллелизм до перевода в частные в 2027 году.

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

Вопросы и ответы

Можно ли назначить параллельное задание конкретному проекту или пулу агентов?

В настоящее время нельзя ни разделить, ни выделить ресурсы для параллельного выполнения заданий для конкретного проекта или пула агентов. Например:

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

Как службы Azure DevOps используют параллельные задания?

Запуск конвейера потребляет параллельное задание только во время активного выполнения на агенте:

  • Для конвейеров релиза или YAML-конвейеров запуск потребляет параллельное задание только в то время, когда он активно развертывается на этапе. Запуск, который ожидает утверждения или ручного вмешательства, не занимает параллельное задание.
  • Серверные задания и выпуски, которые развертываются в группе развертывания , не используют параллельные задания.

В следующем примере показано, как используются параллельные задания:

Простой пример параллельных заданий

  1. Сначала запускается сборка непрерывной интеграции FabrikamFiber 102 (основная ветвь).
  2. Завершение сборки CI FabrikamFiber 102 активирует развертывание FabrikamFiber выпуска 11.
  3. Выполнена сборка CI 101 (фича-ветка) FabrikamFiber. Сборка не может начаться, пока развертывание версии 11 активировано. Поэтому сборка остается в списке ожидания.
  4. Выпуск 11 ожидает утверждения. Fabrikam CI Build 101 начинается, так как выпуск, ожидающий утверждения, не задействует параллельное выполнение.
  5. Выпуск 11 утвержден. Возобновление произойдёт только после завершения сборки CI 101 от Fabrikam.

Существуют ли ограничения для использования Azure Pipelines?

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

Существуют ли ограничения на количество сборок и конвейеров выпусков, которые я могу создать?

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

Как насчет варианта оплаты облачных агентов по минутам?

Некоторые из наших ранних клиентов по-прежнему находятся на тарифе с оплатой за минуту для размещенных агентов. В этом плане вы платите $ 0,05/минуты за первые 20 часов после бесплатного уровня, и $ 0,01/минуты после 20 часов. Из-за следующих ограничений в этом плане может потребоваться перейти к модели параллельных заданий:

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

Я использую контроллеры сборки XAML в моей организации. Как с меня взимается плата за них?

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