Erstellen und Verwalten von Agentpools

Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018

Hinweis

In Microsoft Team Foundation Server (TFS) 2018 und früheren Versionen werden Build- und Release-Pipelines als Definitionen bezeichnet, Ausführungen werden als Builds bezeichnet, Dienstverbindungen werden als Dienstendpunkte bezeichnet, Stages werden als Umgebungen bezeichnet und Aufträge werden als Phasen bezeichnet.

Ein Agentpool ist eine Sammlung von Agents. Anstatt jeden Agent einzeln zu verwalten, organisieren Sie Agents in Agentpools. In TFS werden Pools auf den gesamten Server angewendet; So können Sie einen Agentpool über Projektsammlungen und Projekte freigeben.

Eine Agentwarteschlange bietet Zugriff auf einen Agentpool innerhalb eines Projekts. Wenn Sie eine Build- oder Releasepipeline erstellen, geben Sie an, welche Warteschlange sie verwendet. Warteschlangen sind auf Ihr Projekt in TFS 2017 und neuer festgelegt, sodass Sie diese nur über Build- und Releasepipelinen innerhalb eines Projekts verwenden können.

Um einen Agentpool für mehrere Projekte freizugeben, erstellen Sie in jedem dieser Projekte eine Agentwarteschlange, die auf denselben Agentpool verweist. Während mehrere Warteschlangen über Projekte hinweg den gleichen Agentpool verwenden können, können mehrere Warteschlangen innerhalb eines Projekts den gleichen Agentpool nicht verwenden. Außerdem kann jede Agentwarteschlange nur einen Agentpool verwenden.

TFS 2017 und TFS 2018 Buildsystemarchitektur

Ein Agentpool ist eine Sammlung von Agents. Anstatt jeden Agent einzeln zu verwalten, organisieren Sie Agents in Agentpools. Wenn Sie einen Agent konfigurieren, wird er mit 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 werden Pools auf die gesamte Organisation angewendet; Damit Sie die Agentcomputer über Projekte hinweg freigeben können.

In Azure DevOps Server werden Agentpools auf den gesamten Server angewendet. Daher können Sie die Agentcomputer über Projekte und Sammlungen freigeben.

Hinweis

Agentpoolaufträge führen einen Auftrag auf einem einzelnen Agent aus. Wenn Sie einen Auftrag für alle Agents ausführen müssen, z. B. eine Bereitstellungsgruppe für klassische Releasepipelinen, finden Sie unter Bereitstellen von Bereitstellungsgruppen.

Sie erstellen und verwalten Agentpools auf der Registerkarte "Agentpools" in den Administratoreinstellungen.

Wenn Sie ein Organisationsadministrator sind, erstellen und verwalten Sie Agentpools auf der Registerkarte "Agentpools" in den Administratoreinstellungen.

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

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Wählen Sie die Registerkarte

  1. Wählen Sie Azure DevOps, Auflistungseinstellungen aus.

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agentpools aus.

  1. Wählen Sie Azure DevOps, Auflistungseinstellungen aus.

    Sammlungseinstellungen, 2019.

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agentpools, 2019 aus.

  1. Navigieren Sie zu Ihrem Projekt, und wählen Sie "Einstellungen " (Zahnradsymbol) >Agentwarteschlangen aus.

    Wählen Sie

  2. Wählen Sie "Pools verwalten" aus.

    Wählen Sie

Sie erstellen und verwalten Agentwarteschlangen auf der Registerkarte "Agentwarteschlangen" in Projekteinstellungen.

Wenn Sie ein Projektteammitglied sind, erstellen und verwalten Sie Agentwarteschlangen auf der Registerkarte "Agentpools" in Projekteinstellungen.

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

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

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

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen, Agentpools (2020) aus.

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

Navigieren Sie zu Ihrem Projekt, und wählen Sie Project-Einstellungen, Agentpools (2019) aus.

Navigieren Sie zu Ihrem Projekt, und wählen Sie "Einstellungen " (Zahnradsymbol) >Agentwarteschlangen aus.

Wählen Sie Einstellungen, Agent-Warteschlangen, TFS 2018 aus.

Standard-Agentpools

Die folgenden Agentpools werden standardmäßig bereitgestellt:

  • Azure Pipelines gehosteten Pool mit verschiedenen Windows-, Linux- und macOS-Bildern. Eine vollständige Liste der verfügbaren Images und ihrer installierten Software finden Sie unter Microsoft gehostete Agents.

    Hinweis

    Der gehostete Azure-Pipelines-Pool ersetzt die vorherigen gehosteten Pools, die Namen hatten, die den entsprechenden Bildern zugeordnet sind. Alle Aufträge, die Sie in den vorherigen gehosteten Pools hatten, werden automatisch in das richtige Bild im neuen gehosteten Azure-Pipelines-Pool umgeleitet. In einigen Fällen sehen Sie möglicherweise noch die alten Poolnamen, aber hinter den Kulissen werden die gehosteten Aufträge mit dem Azure Pipelines-Pool ausgeführt. Weitere Informationen finden Sie in den Versionshinweisen der single gehosteten Poolversion vom 1. Juli 2019 – Sprint 154 Versionshinweise.

Standardmäßig sind alle Mitwirkenden in einem Projekt Mitglieder der Rolle "Benutzer " auf gehosteten Pools. Dadurch kann jeder Mitwirkende in einem Projekt Pipelines mithilfe von microsoft gehosteten Agents erstellen und ausführen.

Festlegen eines Pools in Ihrer Pipeline

YAML-Pipelines werden in Azure DevOps Server 2019 und höher unterstützt.

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 Bilds mit der YAML-VM-Bildbezeichnung in 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

Sie erstellen und verwalten Agentpools auf der Registerkarte "Agentpools" in den Administratoreinstellungen.

Wenn Sie ein Organisationsadministrator sind, erstellen und verwalten Sie Agentpools auf der Registerkarte "Agentpools" in den Administratoreinstellungen.

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

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Wählen Sie die Registerkarte

  1. Wählen Sie Azure DevOps, Auflistungseinstellungen aus.

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agentpools aus.

  1. Wählen Sie Azure DevOps, Auflistungseinstellungen aus.

    Sammlungseinstellungen, 2019.

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agentpools, 2019 aus.

  1. Navigieren Sie zu Ihrem Projekt, und wählen Sie "Einstellungen " (Zahnradsymbol) >Agentwarteschlangen aus.

    Wählen Sie

  2. Wählen Sie "Pools verwalten" aus.

    Wählen Sie

Sie erstellen und verwalten Agentwarteschlangen auf der Registerkarte "Agentwarteschlangen" in Projekteinstellungen.

Wenn Sie ein Projektteammitglied sind, erstellen und verwalten Sie Agentwarteschlangen auf der Registerkarte "Agentpools" in Projekteinstellungen.

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

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

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

Navigieren Sie zu Ihrem Projekt, und wählen Sie Projekteinstellungen, Agentpools (2020) aus.

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

Navigieren Sie zu Ihrem Projekt, und wählen Sie Project-Einstellungen, Agentpools (2019) aus.

Navigieren Sie zu Ihrem Projekt, und wählen Sie "Einstellungen " (Zahnradsymbol) >Agentwarteschlangen aus.

Wählen Sie Einstellungen, Agent-Warteschlangen, TFS 2018 aus.

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

Wenn Sie viele selbst gehostete Agents haben, die für verschiedene Teams oder Zwecke vorgesehen sind, möchten Sie möglicherweise zusätzliche Pools wie unten erläutert erstellen.

Erstellen von Agentpools

Hier sind einige typische Situationen, in denen Sie möglicherweise selbst gehostete Agentpools erstellen möchten:

  • Sie sind Mitglied eines Projekts und möchten eine Reihe von Computern verwenden, die ihrem Team gehören, um Build- und Bereitstellungsaufträge auszuführen. Stellen Sie zunächst sicher, dass Sie die Berechtigungen zum Erstellen von Pools in Ihrem Projekt haben, indem Sie auf der Seite "Agentpools" in Ihren Projekteinstellungen Sicherheit auswählen. Sie müssen über die Administratorrolle verfügen, um neue Pools zu erstellen. Wählen Sie dann " Pool hinzufügen " aus, und wählen Sie die Option zum Erstellen eines neuen Pools auf Organisationsebene aus. Installieren und Konfigurieren von Agents schließlich als Teil dieses Agentpools.

  • 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 allen Agentpools mit der Administratorrolle sind, indem Sie zur Seite "Agentpools" in Ihren Organisationseinstellungen navigieren. Erstellen Sie als Nächstes einen Neuen Agentpool , und wählen Sie die Option zum Automatischen Bereitstellen entsprechender Agentpools in allen Projekten beim Erstellen des Pools aus. Diese Einstellung stellt sicher, dass alle Projekte Zugriff auf diesen Agentpool haben. Installieren und Konfigurieren von Agents schließlich als Teil dieses Agentpools.

  • 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 einen der Projekte, fügen Sie einen Agentpool hinzu, und wählen Sie die Option aus, um einen neuen Pool auf Organisationsebene zu erstellen. Wechseln Sie als Nächstes zu jedem der anderen Projekte, und erstellen Sie einen Pool in jedem dieser Projekte, während Sie die Option zum Verwenden eines vorhandenen Agentpools aus der Organisation auswählen. Installieren und Konfigurieren von Agents schließlich als Teil des freigegebenen Agentpools.

  • Sie sind Mitglied eines Projekts und möchten eine Reihe von Computern verwenden, die ihrem Team gehören, um Build- und Bereitstellungsaufträge auszuführen. Stellen Sie zunächst sicher, dass Sie mitglied einer Gruppe in allen Pools mit der Administratorrolle sind. Erstellen Sie als Nächstes einen Neuen Projekt-Agent-Pool in Ihren Projekteinstellungen und wählen Sie die Option zum Erstellen eines neuen Organisations-Agent-Pools aus. Daraufhin wird sowohl ein Agentpool auf Organisationsebene als auch einer auf Projektebene erstellt. Installieren und Konfigurieren von Agents schließlich als Teil dieses Agentpools.

  • 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 allen Pools mit der Administratorrolle sind. Erstellen Sie als Nächstes einen Neuen Organisations-Agent-Pool in Ihren Administratoreinstellungen und wählen Sie die Option zum Automatischen Bereitstellen entsprechender Projekt-Agentpools in allen Projekten beim Erstellen des Pools 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 in Zukunft erfolgt dies, wenn ein neues Projekt erstellt wird. Installieren und konfigurieren Sie schließlich Agents, um Teil dieses Agentpools zu sein.

  • Sie möchten eine Gruppe von Agent-Computern in mehreren Projekten gemeinsam nutzen, aber nicht alle. Erstellen Sie zunächst einen Projekt-Agent-Pool in einem der Projekte, und wählen Sie die Option zum Erstellen eines neuen Organisations-Agent-Pools aus, während sie diesen Pool erstellen. Wechseln Sie als Nächstes zu den anderen Projekten, und erstellen Sie jeweils einen Pool, während Sie die Option zum Verwenden eines vorhandenen Organisations-Agent-Pools auswählen. Installieren und konfigurieren Sie schließlich Agents, um Teil des freigegebenen Agentpools zu sein.

Sicherheit von Agentpools

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 steuert, welche Vorgänge Sie in einem Agentpool ausführen können.

Rolle in einem Agentpool in den Organisationseinstellungen Zweck
Leser Mitglieder dieser Rolle können den Agentpool sowie Agents anzeigen. Sie verwenden dies in der Regel, um Operatoren hinzuzufügen, die für die Überwachung der Agents und deren 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 den oben genannten Richtlinien zum Erstellen neuer Projekt-Agent-Pools folgen, müssen Sie hier in der Regel keine Mitglieder hinzufügen.
Administrator Zusätzlich zu allen oben genannten Berechtigungen können Mitglieder dieser Rolle Agents aus dem Organisations-Agent-Pool registrieren oder aufheben. 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, der den Organisations-Agent-Pool erstellt hat, wird automatisch der Administratorrolle für diesen Pool hinzugefügt.

Der Knoten "Alle Agentpools " auf der Registerkarte "Agentpools" wird verwendet, um die Sicherheit aller Organisations-Agent-Pools zu steuern. Rollenmitgliedschaften für einzelne Organisations-Agentpools werden automatisch von denen des Knotens "Alle Agentpools" geerbt. Bei verwendung von TFS oder Azure DevOps Server sind TFS und Azure DevOps Server Administratoren standardmäßig auch Administratoren des Knotens "Alle Agentpools".

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

Rolle in einem Agentpool in Projekteinstellungen Zweck
Leser Mitglieder dieser Rolle können den Projekt-Agentpool anzeigen. Sie verwenden dies in der Regel, um Operatoren hinzuzufügen, die für die Überwachung der Build- und Bereitstellungsaufträge in diesem Projekt-Agent-Pool verantwortlich sind.
Benutzer Mitglieder dieser Rolle können den Projekt-Agent-Pool beim Erstellen von Pipelines verwenden.
Administrator Zusätzlich zu allen oben genannten Vorgängen können Mitglieder dieser Rolle die Mitgliedschaft für alle Rollen des Project Agent-Pools verwalten. Der Benutzer, der den Pool 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 Projekt-Agent-Pools in einem Projekt zu steuern. Rollenmitgliedschaften für einzelne Projekt-Agent-Pools 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 Sicherheitsaktion auf der Registerkarte "Agentpools" wird verwendet, um die Sicherheit aller Projekt-Agent-Pools in einem Projekt zu steuern. Rollenmitgliedschaften für einzelne Projekt-Agent-Pools werden automatisch von dem geerbt, was Sie hier definieren. Standardmäßig werden die folgenden Gruppen der Rolle „Administrator“ von „Alle Agentpools“ hinzugefügt: Buildadministratoren, Releaseadministratoren, Projektadministratoren.

Häufig gestellte Fragen

Wenn ich kein Wartungsfenster einplane, wann wird die Wartung der Agents ausgeführt?

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

Was ist ein Wartungsauftrag?

Sie können Agentpools so konfigurieren, dass sie regelmäßig veraltete Arbeitsverzeichnisse und Repositorys bereinigen. Dadurch sollte das Potenzial für die Agents verringert werden, dass der Speicherplatz nicht mehr verfügbar ist. Wartungsaufträge werden auf Projektsammlungs- oder Organisationsebene in den Agentpooleinstellungen konfiguriert.

So konfigurieren Sie Wartungsauftragseinstellungen:

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

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Registerkarte

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

    Wählen Sie

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agentpools aus.

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

    Sammlungseinstellungen, 2019.

  2. Wählen Sie Agentpools aus.

    Wählen Sie Agent-Pools aus, 2019.

  1. Navigieren Sie zu Ihrem Projekt, und wählen Sie "Einstellungen " (Zahnradsymbol) >Agentwarteschlangen aus.

    Wählen Sie

  2. Wählen Sie "Pools verwalten" aus.

    Wählen Sie

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

Wichtig

Sie müssen über die Berechtigung zum Verwalten von Buildwarteschlangen verfügen, um Wartungsauftragseinstellungen zu konfigurieren. Wenn die Registerkarte "Einstellungen " oder die Registerkarte " Wartungsverlauf " nicht angezeigt wird, verfügen Sie nicht über diese Berechtigung, die standardmäßig der Administratorrolle gewährt wird. Weitere Informationen finden Sie unter Sicherheit von Agentpools.

Wartungsauftragseinstellungen

Wartungsauftragseinstellungen für TFS

Konfigurieren Sie Ihre 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 Reinigungsschritte und -aktionen anzuzeigen.

Wartungsauftragsverlauf

Die Wartung erfolgt pro Agentpool, nicht pro Computer; Wenn Sie also über mehrere Agentpools auf einem einzelnen Computer verfügen, treten möglicherweise weiterhin Probleme mit dem Speicherplatz auf.

Der Wartungsauftrag meines selbst gehosteten Agentpools sieht hängen aus. Warum?

In der Regel wird ein Wartungsauftrag "hängen" angezeigt, wenn er auf die Ausführung eines Agenten wartet, der nicht mehr im Agentpool vorhanden ist. Dies geschieht, wenn der Agent beispielsweise gezielt offline genommen wurde oder probleme bei der Kommunikation mit diesem auftreten.

Wartungsaufträge, die in der Warteschlange ausgeführt wurden, warten sieben Tage, bis sie ausgeführt werden. Danach werden sie automatisch auf den Fehlerstatus festgelegt, wenn sie nicht ausgeführt werden. Dieses Zeitlimit kann nicht geändert werden.

Die Sieben-Tage-Grenze unterscheidet sich von der Einstellung für wartungsauftragstimeout . Letztere steuert die maximale Anzahl von Minuten, die ein Agent bei der Wartung verbringen kann. Der Timer wird gestartet, wenn der Auftrag gestartet wird, nicht, wenn der Auftrag in eine Agentwarteschlange gestellt wird.

Ich versuche, einen Projekt-Agent-Pool zu erstellen, der einen vorhandenen Organisations-Agent-Pool verwendet, aber die Steuerelemente sind abgeblendt. Warum?

Im Dialogfeld "Projekt-Agent-Pool erstellen" können Sie keinen vorhandenen Organisations-Agent-Pool verwenden, wenn er bereits von einem anderen Projekt-Agent-Pool referenziert wird. Jeder Organisations-Agent-Pool kann nur von einem Projekt-Agent-Pool innerhalb einer bestimmten Projektsammlung referenziert werden.

Ich kann keinen von Microsoft gehosteten Pool auswählen und kann meinen Build nicht in die Warteschlange stellen. Wie kann ich dies korrigieren?

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

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

A: Der Azure Pipelines-Pool stellt alle Azure DevOps-Organisationen mit in der Cloud gehosteten Build-Agents und kostenlosen Buildminuten jeden Monat bereit. Wenn Sie mehr von Microsoft gehostete Buildressourcen benötigen oder weitere Aufträge parallel ausführen müssen, können Sie entweder: