Выполнение обслуживания для собственных агентов Azure DevOps - PullRequest
0 голосов
/ 25 марта 2019

У меня есть несколько самодостаточных агентов Azure DevOps (каждый из которых установлен на выделенном локальном сервере), и мне необходимо выполнять их повторное обслуживание (т. Е. Исправления и т. Д.). Есть ли хороший способ определить эти окна обслуживания в DevOps Azure, чтобы администраторы сервера могли выполнять свою работу, не беспокоясь о том, чтобы прервать любую текущую задачу сборки / выпуска?

Кажется, есть настройка, связанная с настройкой повторяющегося обслуживания (Organization Settings -> Agent Pools -> <Pool Name> -> Settings [tab]), но похоже, что это будет применяться ко всему пулу, и его трудно скажите, какой из агентов будет считаться автономным в какой момент времени. К сожалению, я не смог найти какую-либо документацию по этому поводу и не уверен, будет ли что-то, что Azure DevOps будет также выполнять на машинах агентов (т. Е. Запуск очистки, обновления агентов и т. Д.)

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

1 Ответ

1 голос
/ 25 марта 2019

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

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

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

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

Для сервера Azure DevOps:

  1. https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/agents?view=azure-devops-2019
  2. https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/pools-queues?view=azure-devops-2019

Для службы Azure DevOps (в облакеTFS, ранее Visual Studio Team Services):

  1. https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/agents?view=azure-devops
  2. https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/pools-queues?view=azure-devops
...