Erstellen und Verwalten von Agentpools

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Ein Agentpool ist eine Sammlung von Agents. Agents werden in Agentpools zusammengefasst, um sie nicht alle einzeln verwalten zu müssen. Wenn Sie einen Agent konfigurieren, wird er bei einem einzelnen Pool registriert, und wenn Sie eine Pipeline erstellen, geben Sie den Pool an, in dem die Pipeline ausgeführt wird. Wenn Sie die Pipeline ausführen, wird sie auf einem Agent aus diesem Pool ausgeführt, der die Anforderungen der Pipeline erfüllt.

In Azure Pipelines ist der Geltungsbereich von Pools auf die gesamte Organisation festgelegt, sodass Sie die Agent-Computer projektübergreifend nutzen können.

In Azure DevOps Server ist der Geltungsbereich von Agentpools auf den gesamten Server festgelegt, sodass Sie die Agent-Computer projekt- und sammlungsübergreifend nutzen können.

Hinweis

Agentpoolaufträge führen einen Auftrag auf einem einzelnen Agent aus. Wenn Sie einen Auftrag für alle Agents ausführen müssen (etwa eine Bereitstellungsgruppe für klassische Releasepipelines), lesen Sie die Informationen unter Provision deployment groups (Bereitstellen von Bereitstellungsgruppen).

Wenn Sie Organisationsadministrator*in sind, erstellen und verwalten Sie Agentpools über die Registerkarte „Agentpools“ in den Administratoreinstellungen.

  1. Melden Sie sich bei Ihrem organization (https://dev.azure.com/{yourorganization}) an.

  2. Wählen Sie Azure DevOps, Organisationseinstellungen aus.

    Auswählen von „Organisationseinstellungen“

  3. Wählen Sie Agentpools aus.

    Registerkarte „Agentpools auswählen“

  1. Melden Sie sich bei Ihrer Projektsammlung unter http://your-server/DefaultCollection an.

  2. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Auswählen von „Sammlungseinstellungen“

  3. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“

  1. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Sammlungseinstellungen (2019)

  2. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“ (2019)

Wenn Sie Mitglied eines Projektteams sind, erstellen und verwalten Sie Agentpools über die Registerkarte „Agentpools“ in den Projekteinstellungen.

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“ (2020)

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“ (2019)

Standard-Agentpools

Die folgenden Agentpools werden standardmäßig bereitgestellt:

  • Standardpool: Verwenden Sie diesen Pool, um selbstgehostete Agents zu registrieren, die Sie eingerichtet haben.
  • Gehosteter Azure Pipelines-Pool mit verschiedenen Windows-, Linux- und macOS-Images. Eine vollständige Liste der verfügbaren Images und der installierten Software finden Sie unter Von Microsoft gehostete Agents.

    Hinweis

    Der gehostete Azure Pipelines-Pool ersetzt die früheren gehosteten Pools, deren Namen den entsprechenden Images zugeordnet waren. Alle Aufträge in den vorherigen Hostpools werden automatisch zum richtigen Image im neuen von Azure Pipelines gehosteten Pool weitergeleitet. Möglicherweise werden noch die alten Poolnamen angezeigt, aber hinter den Kulissen werden die gehosteten Aufträge unter Verwendung des Azure Pipelines-Pools ausgeführt. Weitere Informationen finden Sie in den Versionshinweisen zu Einzelner gehosteter Pool in den Versionshinweisen vom 1. Juli 2019 – Sprint 154.

Standardmäßig sind alle Mitwirkenden in einem Projekt Mitglieder der Rolle Benutzer in den gehosteten Pools. Dadurch kann jeder Mitwirkender in einem Projekt Pipelines mit von Microsoft gehosteten Agents erstellen und ausführen.

Festlegen eines Pools in Ihrer Pipeline

Um einen von Microsoft gehosteten Agent aus dem Azure Pipelines-Pool in Ihrer Azure DevOps Services-YAML-Pipeline auszuwählen, geben Sie den Namen des Images anhand der YAML-VM-Imagebezeichnung aus dieser Tabelle an.

pool:
  vmImage: ubuntu-latest # This is the default if you don't specify a pool or vmImage.

So verwenden Sie einen privaten Pool ohne Anforderungen:

pool: MyPool

Weitere Informationen finden Sie im YAML-Schema für Pools.

Verwalten von Pools und Warteschlangen

Wenn Sie Organisationsadministrator*in sind, erstellen und verwalten Sie Agentpools über die Registerkarte „Agentpools“ in den Administratoreinstellungen.

  1. Melden Sie sich bei Ihrem organization (https://dev.azure.com/{yourorganization}) an.

  2. Wählen Sie Azure DevOps, Organisationseinstellungen aus.

    Auswählen von „Organisationseinstellungen“

  3. Wählen Sie Agentpools aus.

    Registerkarte „Agentpools auswählen“

  1. Melden Sie sich bei Ihrer Projektsammlung unter http://your-server/DefaultCollection an.

  2. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Auswählen von „Sammlungseinstellungen“

  3. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“

  1. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Sammlungseinstellungen (2019)

  2. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“ (2019)

Wenn Sie Mitglied eines Projektteams sind, erstellen und verwalten Sie Agentpools über die Registerkarte „Agentpools“ in den Projekteinstellungen.

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“ (2020)

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen > Agentpools aus.

Navigieren zu Ihrem Projekt und Auswählen von „Projekteinstellungen“ > „Agentpools“ (2019)

Pools werden zum Ausführen von Aufträgen verwendet. Erfahren Sie mehr über das Angeben von Pools für Aufträge.

Wenn Sie viele selbstgehostete Agents besitzen, die für verschiedene Teams oder Zwecke vorgesehen sind, können Sie wie im Anschluss erläutert zusätzliche Pools erstellen.

Erstellen von Agentpools

Hier finden Sie einige typische Situationen, in denen Sie möglicherweise selbstgehostete Agentpools erstellen sollten:

  • Sie sind ein Mitglied eines Projekts und möchten eine Gruppe von Computern im Besitz Ihres Teams verwenden, um Build- und Bereitstellungsaufträge auszuführen. Vergewissern Sie sich zunächst, dass Sie dazu berechtigt sind, im Rahmen Ihres Projekts Pools zu erstellen. Gehen Sie hierzu auf der Seite für Agentpools zu Projekteinstellungen und wählen Sie Sicherheit aus. Sie müssen über die Rolle Administrator verfügen, um neue Pools erstellen zu können. Wählen Sie anschließend Pool hinzufügen aus und klicken Sie auf die Option zum Erstellen eines neuen Pools. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie sind ein Mitglied des Infrastrukturteams und möchten einen Pool mit Agents zur Verwendung in allen Projekten einrichten. Vergewissern Sie sich zunächst, dass Sie dazu berechtigt sind, im Rahmen Ihres Projekts Pools zu erstellen. Gehen Sie hierzu auf der Seite für Agentpools zu Organisationseinstellungen und wählen Sie Sicherheit aus. Klicken Sie nun auf die Option Neuer Agentpool und wählen Sie, während der Pool erstellt wird, die Option Diesen Agentpool in allen Projekten automatisch bereitstellen aus. Mit dieser Einstellung wird sichergestellt, dass alle Projekte Zugriff auf diesen Agentpool haben. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie möchten eine Gruppe von Agent-Computern in mehreren Projekten gemeinsam nutzen, aber nicht alle. Navigieren Sie zunächst zu den Einstellungen für eins der Projekte, fügen Sie einen Agentpool hinzu, und wählen Sie die Option zum Erstellen eines neuen Pools auf Organisationsebene aus. Wechseln Sie als Nächstes zu jedem der anderen Projekte, und erstellen Sie in jedem der Projekte einen Pool. Wählen Sie dabei die Option Vorhandenen Agentpool aus der Organisation verwenden aus. Installieren und konfigurieren Sie schließlich Agents, die Teil des gemeinsam genutzten Agentpools sein sollen.

  • Sie sind ein Mitglied eines Projekts und möchten eine Gruppe von Computern im Besitz Ihres Teams verwenden, um Build- und Bereitstellungsaufträge auszuführen. Vergewissern Sie sich zunächst, dass Sie dazu berechtigt sind, im Rahmen Ihres Projekts Pools zu erstellen. Gehen Sie hierzu auf der Seite für Agentpools zu Projekteinstellungen und wählen Sie Sicherheit aus. Sie müssen über die Rolle Administrator verfügen, um neue Pools erstellen zu können. Wählen Sie anschließend Pool hinzufügen aus und klicken Sie auf die Option zum Erstellen eines neuen Pools. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie sind ein Mitglied des Infrastrukturteams und möchten einen Pool mit Agents zur Verwendung in allen Projekten einrichten. Vergewissern Sie sich zunächst, dass Sie dazu berechtigt sind, im Rahmen Ihres Projekts Pools zu erstellen. Gehen Sie hierzu auf der Seite für Agentpools zu Projektsammlungseinstellungen und wählen Sie Sicherheit aus. Klicken Sie nun auf die Option Neuer Agentpool und wählen Sie, während der Pool erstellt wird, die Option Diesen Agentpool in allen Projekten automatisch bereitstellen aus. Mit dieser Einstellung wird sichergestellt, dass alle Projekte Zugriff auf diesen Agentpool haben. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie möchten eine Gruppe von Agent-Computern in mehreren Projekten gemeinsam nutzen, aber nicht alle. Navigieren Sie zunächst zu den Einstellungen für eins der Projekte, fügen Sie einen Agentpool hinzu, und wählen Sie die Option zum Erstellen eines neuen Pools auf Organisationsebene aus. Wechseln Sie als Nächstes zu jedem der anderen Projekte, und erstellen Sie in jedem der Projekte einen Pool. Wählen Sie dabei die Option Vorhandenen Agentpool aus der Organisation verwenden aus. Installieren und konfigurieren Sie schließlich Agents, die Teil des gemeinsam genutzten Agentpools sein sollen.

  • Sie sind ein Mitglied eines Projekts und möchten eine Gruppe von Computern im Besitz Ihres Teams verwenden, um Build- und Bereitstellungsaufträge auszuführen. Stellen Sie zunächst sicher, dass Sie Mitglied einer Gruppe in Alle Pools mit der Rolle Administrator sind. Erstellen Sie als Nächstes in Ihren Projekteinstellungen einen neuen Projekt-Agentpool, und wählen Sie die Option Neuen Organisations-Agentpool erstellen aus. Daraufhin wird sowohl ein Agentpool auf Organisationsebene als auch einer auf Projektebene erstellt. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie sind ein Mitglied des Infrastrukturteams und möchten einen Pool mit Agents zur Verwendung in allen Projekten einrichten. Stellen Sie zunächst sicher, dass Sie Mitglied einer Gruppe in Alle Pools mit der Rolle Administrator sind. Erstellen Sie als Nächstes in Ihren Administratoreinstellungen einen neuen Organisations-Agentpool, und wählen Sie beim Erstellen des Pools die Option Entsprechende Projekt-Agentpools in allen Projekten automatisch bereitstellen aus. Mit dieser Einstellung wird sichergestellt, dass alle Projekte über einen Pool verfügen, der auf den Organisations-Agentpool verweist. Das System erstellt einen Pool für vorhandene Projekte und wird dies auch in Zukunft immer dann tun, wenn ein neues Projekt erstellt wird. Installieren und konfigurieren Sie schließlich Agents, die Teil dieses Agentpools sein sollen.

  • Sie möchten eine Gruppe von Agent-Computern in mehreren Projekten gemeinsam nutzen, aber nicht alle. Erstellen Sie zunächst einen Projekt-Agentpool in einem der Projekte, und wählen Sie beim Erstellen dieses Pools die Option Neuen Organisations-Agentpool erstellen aus. Wechseln Sie als Nächstes zu jedem der anderen Projekte, und erstellen Sie in jedem der Projekte einen Pool. Wählen Sie dabei die Option Vorhandenen Organisations-Agentpool verwenden aus. Installieren und konfigurieren Sie schließlich Agents, die Teil des gemeinsam genutzten Agentpools sein sollen.

Sicherheit von Agent-Pools

Wenn Sie wissen, wie die Sicherheit für Agentpools funktioniert, hilft Ihnen dies dabei, die Freigabe und Verwendung von Agents zu steuern.

Rollen werden für jeden Agentpool definiert, und die Mitgliedschaft in diesen Rollen bestimmt, welche Vorgänge Sie für einen Agentpool ausführen können.

Sicherheitseinstellungen auf Organisationsebene

Rolle für einen Agentpool in den Organisationseinstellungen Zweck
Leser Mitglieder dieser Rolle können den Agentpool und die Agents anzeigen. Sie verwenden diese Rolle in der Regel, um Operatoren hinzuzufügen, die für die Überwachung der Agents und ihrer Integrität verantwortlich sind.
Dienstkonto Mitglieder dieser Rolle können den Organisations-Agentpool verwenden, um einen Projekt-Agentpool in einem Projekt zu erstellen. Wenn Sie die oben genannten Richtlinien zum Erstellen neuer Projekt-Agentpools befolgen, müssen Sie hier in der Regel keine Mitglieder hinzufügen.
Administrator Zusätzlich zu den oben genannten Berechtigungen haben Mitglieder dieser Rolle die Berechtigung, Agents im Organisations-Agentpool zu registrieren oder ihre Registrierung aufzuheben. Sie können auch auf den Organisations-Agentpool verweisen, wenn sie einen Projekt-Agentpool in einem Projekt erstellen. Schließlich können sie auch die Mitgliedschaft für alle Rollen des Organisations-Agentpools verwalten. Der Benutzer bzw. die Benutzerin, der bzw. die den Organisations-Agentpool erstellt hat, wird automatisch der Rolle „Administrator“ für diesen Pool hinzugefügt.

Der Knoten Alle Agentpools auf der Registerkarte „Agentpools“ wird verwendet, um die Sicherheit aller Organisations-Agentpools zu steuern. Rollenmitgliedschaften für einzelne Organisations-Agentpools werden automatisch von denen des Knotens „Alle Agentpools“ geerbt. Standardmäßig sind TFS- und Azure DevOps Server-Administrator*innen bei Verwendung von TFS oder Azure DevOps Server auch Administrator*innen des Knotens „Alle Agentpools“.

Sicherheitseinstellungen auf Projektebene

Rollen werden auch für jeden Projekt-Agentpool definiert, und Mitgliedschaften in diesen Rollen bestimmen, welche Vorgänge Sie für einen Agentpool auf Projektebene ausführen können.

Rolle für einen Agentpool in Projekteinstellungen Zweck
Leser Mitglieder dieser Rolle können den Projekt-Agentpool anzeigen. Sie verwenden diese Rolle in der Regel, um Operatoren hinzuzufügen, die für die Überwachung der Build- und Bereitstellungsaufträge in diesem Projekt-Agentpool verantwortlich sind.
Benutzer Mitglieder dieser Rolle können den Projekt-Agentpool beim Erstellen von Pipelines verwenden.
Administrator Mitglieder dieser Rolle können nicht nur alle oben genannten Vorgänge ausführen, sondern auch die Mitgliedschaft für alle Rollen des Projekt-Agentpools verwalten. Der Benutzer, der den Pool erstellt hat, wird automatisch der Rolle „Administrator“ für diesen Pool hinzugefügt.

Pipelineberechtigungen und Sicherheitsrollen

Pipelineberechtigungen steuern, welche YAML-Pipelines für die Verwendung eines Agentpools autorisiert sind. Pipelineberechtigungen beschränken nicht den Zugriff über klassische Pipelines.

Sie können eine der folgenden Optionen auswählen:

  • Öffnen Sie den Zugriff, sodass alle Pipelines den Agentpool verwenden können, über die weiteren Optionen oben rechts im Abschnitt Pipelineberechtigungen auf der Registerkarte „Sicherheit“ eines Agentpools.

  • Sperren Sie den Agentpool, und lassen Sie nur die Verwendung durch ausgewählte YAML-Pipelines zu. Wenn eine andere YAML-Pipeline auf den Agentpool verweist, wird eine Autorisierungsanforderung ausgelöst, die von einem/einer Agentpooladministrator*in genehmigt werden muss. Dadurch wird der Zugriff über klassische Pipelines nicht eingeschränkt.

Screenshot: Benutzeroberfläche für Pipelineberechtigungen für einen Agentpool

Pipelineberechtigungen für den Azure Pipelines-Agentpool können nicht konfiguriert werden, weil der Pool standardmäßig für alle Pipelines zugänglich ist.

Der Knoten Alle Agentpools auf der Registerkarte „Agentpools“ steuert die Sicherheitseinstellungen aller Projekt-Agentpools in einem Projekt. Rollenmitgliedschaften für einzelne Projekt-Agentpools werden automatisch von denen des Knotens „Alle Agentpools“ geerbt. Standardmäßig werden die folgenden Gruppen der Rolle „Administrator“ von „Alle Agentpools“ hinzugefügt: Buildadministratoren, Releaseadministratoren, Projektadministratoren.

Die Aktion Sicherheit auf der Registerkarte „Agentpools“ wird verwendet, um die Sicherheit aller Projekt-Agentpools zu steuern. Rollenmitgliedschaften für einzelne Projektagentpools werden automatisch von der hier getroffenen Definition geerbt. Standardmäßig werden die folgenden Gruppen der Rolle „Administrator“ von „Alle Agentpools“ hinzugefügt: Buildadministratoren, Releaseadministratoren, Projektadministratoren.

Häufig gestellte Fragen

Wann führen die Agents eine Wartung aus, wenn ich kein Wartungsfenster plane?

Wenn kein Wartungsfenster geplant ist, führen die Agents in diesem Pool den Wartungsauftrag nicht aus.

Was ist ein Wartungsauftrag?

Sie können Agentpools konfigurieren, um von Zeit zu Zeit veraltete Arbeitsverzeichnisse und Repositorys zu bereinigen. Dadurch kann das Risiko, dass nicht genügend Speicherplatz für die Agents verfügbar ist, verringert werden. Wartungsaufträge werden auf Organisationsebene in den Agentpooleinstellungen konfiguriert.

So konfigurieren Sie Einstellungen für Wartungsaufträge

  1. Melden Sie sich bei Ihrem organization (https://dev.azure.com/{yourorganization}) an.

  2. Wählen Sie Azure DevOps, Organisationseinstellungen aus.

    Auswählen von „Organisationseinstellungen“

  3. Wählen Sie Agentpools aus.

    Registerkarte „Agentpools auswählen“

  1. Melden Sie sich bei Ihrer Projektsammlung unter http://your-server/DefaultCollection an.

  2. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Auswählen von „Sammlungseinstellungen“

  3. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“

  1. Wählen Sie Azure DevOps > Sammlungseinstellungen aus.

    Sammlungseinstellungen (2019)

  2. Wählen Sie Agentpools aus.

    Auswählen von „Agentpools“ (2019)

Wählen Sie den gewünschten Pool und dann Einstellungen aus, um Wartungsauftragseinstellungen für diesen Agentpool zu konfigurieren.

Wichtig

Sie müssen über die Berechtigung Buildwarteschlangen verwalten verfügen, damit Sie Wartungsauftragseinstellungen konfigurieren können. Wenn die Registerkarte Einstellungen oder die Registerkarte Wartungsverlauf nicht angezeigt wird, verfügen Sie nicht über diese Berechtigung. Diese wird standardmäßig der Rolle Administrator erteilt. Weitere Informationen finden Sie unter Sicherheit von Agentpools.

Einstellungen eines Wartungsauftrags

Konfigurieren Sie die gewünschten Einstellungen, und wählen Sie Speichern aus.

Wählen Sie Wartungsverlauf aus, um den Wartungsauftragsverlauf für den aktuellen Agentpool anzuzeigen. Sie können Protokolle herunterladen und überprüfen, um die durchgeführten Bereinigungsschritte und Aktionen anzuzeigen.

Wartungsauftragsverlauf

Die Wartung erfolgt pro Agentpool (nicht pro Computer). Wenn Sie mehrere Agentpools auf einem einzelnen Computer besitzen, können daher dennoch Speicherplatzprobleme auftreten.

Der Wartungsauftrag meines selbstgehosteten Agentpools ist anscheinend hängen geblieben. Warum?

In der Regel bleibt ein Wartungsauftrag hängen, wenn er auf die Ausführung eines Agents wartet, der sich nicht mehr im Agentpool befindet. Dies geschieht beispielsweise, wenn der Agent absichtlich offline geschaltet wurde oder wenn Probleme bei der Kommunikation mit dem Agent auftreten.

Wartungsaufträge, die für die Ausführung in die Warteschlange eingefügt wurden, warten sieben Tage lang auf die Ausführung. Danach werden sie automatisch auf einen Fehlerzustand festgelegt, wenn sie nicht ausgeführt werden. Dieses Zeitlimit kann nicht geändert werden.

Das Sieben-Tage-Limit unterscheidet sich von der Timeouteinstellung für Wartungsaufträge. Letztere steuert die maximale Anzahl von Minuten, die ein Agent für die Wartung aufwenden kann. Der Timer startet, wenn der Auftrag beginnt, nicht wenn der Auftrag in die Warteschlange eines Agent eingefügt wird.

Ich versuche, einen Projekt-Agentpool zu erstellen, der einen vorhandenen Organisations-Agentpool verwendet, aber die Steuerelemente sind abgeblendet. Was ist der Grund dafür?

Sie können im Dialogfeld „Projekt-Agentpool erstellen“ keinen vorhandenen Organisations-Agentpool verwenden, wenn bereits von einem anderen Projekt-Agentpool darauf verwiesen wird. Auf jeden Organisations-Agentpool kann nur von einem Projekt-Agentpool innerhalb einer bestimmten Projektsammlung verwiesen werden.

Ich kann keinen von Microsoft gehosteten Pool auswählen und meinen Build keiner Warteschlange hinzufügen. Wie kann ich dies korrigieren?

Bitten Sie den Besitzer Ihrer Azure DevOps-Organisation, Ihnen die Berechtigung zur Verwendung des Pools zu erteilen. Weitere Informationen finden Sie unter Sicherheit von Agentpools.

Ich benötige mehr gehostete Buildressourcen. Was kann ich tun?

A: Der Azure Pipelines-Pool stellt monatlich allen Azure DevOps-Organisationen in der Cloud gehostete Build-Agents und kostenlose Erstellungsminuten zur Verfügung. Wenn Sie mehr von Microsoft gehostete Buildressourcen benötigen oder mehr Aufträge parallel ausführen müssen, haben Sie folgende Möglichkeiten: