Skapa och hantera agent-pooler

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

En agentpool är en samling agenter. I stället för att hantera varje agent individuellt organiserar du agenter i agentpooler. När du konfigurerar en agent registreras den med en enda pool, och när du skapar en pipeline anger du den pool där pipelinen körs. När du kör pipelinen körs den på en agent från poolen som uppfyller pipelinens krav .

Kommentar

Hanterade DevOps-pooler hanteras i Azure-portalen. Om du använder Hanterade DevOps-pooler kan du läsa Skapa din första hanterade DevOps-pool.

I Azure Pipelines är pooler begränsade till hela organisationen. så att du kan dela agentdatorerna mellan projekt.

I Azure DevOps Server är agentpooler begränsade till hela servern. så att du kan dela agentdatorerna mellan projekt och samlingar.

Kommentar

Agentpoolsjobb kör ett jobb på en enda agent. Om du behöver köra ett jobb på alla agenter, till exempel en distributionsgrupp för klassiska versionspipelines, kan du läsa Etablera distributionsgrupper.

Om du är organisationsadministratör skapar och hanterar du agentpooler från fliken agentpooler i administratörsinställningarna.

  1. Logga in på din organisation (https://dev.azure.com/{yourorganization}).

  2. Välj Azure DevOps, Organisationsinställningar.

    Välj Organisationsinställningar.

  3. Välj Agentpooler.

    Välj fliken Agentpooler.

  1. Logga in på din projektsamling (http://your-server/DefaultCollection).

  2. Välj Azure DevOps, samlingsinställningar.

    Välj Samlingsinställningar.

  3. Välj Agentpooler.

    Välj Agentpooler.

  1. Välj Azure DevOps, samlingsinställningar.

    Samlingsinställningar, 2019.

  2. Välj Agentpooler.

    Välj Agentpooler, 2019.

Om du är medlem i projektteamet skapar och hanterar du agentpooler från fliken agentpooler i projektinställningarna.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler (2020).

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler (2019).

Standardagentpooler

Följande agentpooler tillhandahålls som standard:

  • Azure Pipelines-värdbaserad pool med olika Windows-, Linux- och macOS-avbildningar . En fullständig lista över tillgängliga avbildningar och deras installerade programvara finns i Microsoft-värdbaserade agenter.

    Kommentar

    Den värdbaserade Azure Pipelines-poolen ersätter de tidigare värdbaserade poolerna som hade namn som mappats till motsvarande avbildningar. Alla jobb som du hade i de tidigare värdbaserade poolerna omdirigeras automatiskt till rätt avbildning i den nya Azure Pipelines-värdbaserade poolen. I vissa fall kan du fortfarande se de gamla poolnamnen, men bakom kulisserna körs de värdbaserade jobben med hjälp av Azure Pipelines-poolen. Mer information finns i viktig information om single hosted pool från viktig information från 1 juli 2019 – Sprint 154.

Som standard är alla deltagare i ett projekt medlemmar i användarrollen i värdbaserade pooler. På så sätt kan alla deltagare i ett projekt skapa och köra pipelines med hjälp av Microsoft-värdbaserade agenter.

Ange en pool i pipelinen

Om du vill välja en Microsoft-värdbaserad agent från Azure Pipelines-poolen i yaml-pipelinen för Azure DevOps Services anger du namnet på avbildningen med hjälp av YAML VM Image Label från den här tabellen.

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

Så här använder du en privat pool utan krav:

pool: MyPool

Mer information finns i YAML-schemat för pooler.

Hantera pooler och köer

Om du är organisationsadministratör skapar och hanterar du agentpooler från fliken agentpooler i administratörsinställningarna.

  1. Logga in på din organisation (https://dev.azure.com/{yourorganization}).

  2. Välj Azure DevOps, Organisationsinställningar.

    Välj Organisationsinställningar.

  3. Välj Agentpooler.

    Välj fliken Agentpooler.

  1. Logga in på din projektsamling (http://your-server/DefaultCollection).

  2. Välj Azure DevOps, samlingsinställningar.

    Välj Samlingsinställningar.

  3. Välj Agentpooler.

    Välj Agentpooler.

  1. Välj Azure DevOps, samlingsinställningar.

    Samlingsinställningar, 2019.

  2. Välj Agentpooler.

    Välj Agentpooler, 2019.

Om du är medlem i projektteamet skapar och hanterar du agentpooler från fliken agentpooler i projektinställningarna.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler (2020).

Gå till projektet och välj Projektinställningar, Agentpooler.

Gå till projektet och välj Projektinställningar, Agentpooler (2019).

Om du vill ta bort en pool går du till listan Agentpooler , väljer Fler alternativ, Ta bort.

Skärmbild av borttagning av en agentpool.

Pooler används för att köra jobb. Lär dig mer om att ange pooler för jobb.

Om du har många lokalt installerade agenter som är avsedda för olika team eller syften kanske du vill skapa ytterligare pooler enligt beskrivningen nedan.

Skapa agentpooler

Här följer några vanliga situationer när du kanske vill skapa lokalt installerade agentpooler:

  • Du är medlem i ett projekt och vill använda en uppsättning datorer som ägs av ditt team för att köra bygg- och distributionsjobb. Kontrollera först att du har behörighet att skapa pooler i projektet genom att välja Säkerhet på sidan agentpooler i dina Projektinställningar. Du måste ha rollen Administratör för att kunna skapa nya pooler. Välj sedan Lägg till pool och välj alternativet för att skapa en ny pool. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du är medlem i infrastrukturteamet och vill konfigurera en pool med agenter för användning i alla projekt. Kontrollera först att du har behörighet att skapa pooler i projektet genom att välja Säkerhet på sidan agentpooler i organisationens inställningar. Skapa sedan en ny agentpool och välj alternativet för att etablera den här agentpoolen automatiskt i alla projekt när du skapar poolen. Den här inställningen säkerställer att alla projekt har åtkomst till den här agentpoolen. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du vill dela en uppsättning agentdatorer med flera projekt, men inte alla. Gå först till inställningarna för ett av projekten, lägg till en agentpool och välj alternativet för att skapa en ny pool på organisationsnivå. Gå sedan till vart och ett av de andra projekten och skapa en pool i var och en av dem medan du väljer alternativet Att använda en befintlig agentpool från organisationen. Installera och konfigurera slutligen agenter som en del av den delade agentpoolen.

  • Du är medlem i ett projekt och vill använda en uppsättning datorer som ägs av ditt team för att köra bygg- och distributionsjobb. Kontrollera först att du har behörighet att skapa pooler i projektet genom att välja Säkerhet på sidan agentpooler i dina Projektinställningar. Du måste ha rollen Administratör för att kunna skapa nya pooler. Välj sedan Lägg till pool och välj alternativet för att skapa en ny pool. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du är medlem i infrastrukturteamet och vill konfigurera en pool med agenter för användning i alla projekt. Kontrollera först att du har behörighet att skapa pooler i projektet genom att välja Säkerhet på sidan med agentpooler i inställningarna för Project-samlingen. Skapa sedan en ny agentpool och välj alternativet för att etablera den här agentpoolen automatiskt i alla projekt när du skapar poolen. Den här inställningen säkerställer att alla projekt har åtkomst till den här agentpoolen. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du vill dela en uppsättning agentdatorer med flera projekt, men inte alla. Gå först till inställningarna för ett av projekten, lägg till en agentpool och välj alternativet för att skapa en ny pool på organisationsnivå. Gå sedan till vart och ett av de andra projekten och skapa en pool i var och en av dem medan du väljer alternativet Att använda en befintlig agentpool från organisationen. Installera och konfigurera slutligen agenter som en del av den delade agentpoolen.

  • Du är medlem i ett projekt och vill använda en uppsättning datorer som ägs av ditt team för att köra bygg- och distributionsjobb. Kontrollera först att du är medlem i en grupp i Alla pooler med rollen Administratör . Skapa sedan en ny projektagentpool i projektinställningarna och välj alternativet skapa en ny organisationsagentpool. Därför skapas både en agentpool på organisations- och projektnivå. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du är medlem i infrastrukturteamet och vill konfigurera en pool med agenter för användning i alla projekt. Kontrollera först att du är medlem i en grupp i Alla pooler med rollen Administratör . Skapa sedan en ny organisationsagentpool i administratörsinställningarna och välj alternativet för att automatiskt etablera motsvarande projektagentpooler i alla projekt när du skapar poolen. Den här inställningen säkerställer att alla projekt har en pool som pekar på organisationens agentpool. Systemet skapar en pool för befintliga projekt, och i framtiden kommer det att göra det när ett nytt projekt skapas. Installera och konfigurera slutligen agenter som en del av agentpoolen.

  • Du vill dela en uppsättning agentdatorer med flera projekt, men inte alla. Skapa först en projektagentpool i ett av projekten och välj alternativet för att skapa en ny organisationsagentpool när du skapar poolen. Gå sedan till vart och ett av de andra projekten och skapa en pool i vart och ett av dem medan du väljer alternativet Att använda en befintlig organisationsagentpool. Installera och konfigurera slutligen agenter som en del av den delade agentpoolen.

Säkerhet för agentpooler

Genom att förstå hur säkerhet fungerar för agentpooler kan du styra delning och användning av agenter.

Roller definieras i varje agentpool, och medlemskap i dessa roller styr vilka åtgärder du kan utföra i en agentpool.

Säkerhetsinställningar på organisationsnivå

Roll i en agentpool i organisationsinställningar Syfte
Läsare Medlemmar i den här rollen kan visa både agentpoolen och agenterna. Du använder vanligtvis detta för att lägga till operatorer som ansvarar för att övervaka agenterna och deras hälsa.
Servicekonto Medlemmar i den här rollen kan använda organisationsagentpoolen för att skapa en projektagentpool i ett projekt. Om du följer riktlinjerna ovan för att skapa nya projektagentpooler behöver du vanligtvis inte lägga till några medlemmar här.
Administratör Förutom alla ovanstående behörigheter kan medlemmar i den här rollen registrera eller avregistrera agenter från organisationens agentpool. De kan också referera till organisationsagentpoolen när du skapar en projektagentpool i ett projekt. Slutligen kan de också hantera medlemskap för alla roller i organisationens agentpool. Användaren som skapade organisationsagentpoolen läggs automatiskt till i administratörsrollen för poolen.

Noden Alla agentpooler på fliken Agentpooler används för att kontrollera säkerheten för alla organisationsagentpooler. Rollmedlemskap för enskilda organisationsagentpooler ärvs automatiskt från noden "Alla agentpooler". Som standard är TFS- och Azure DevOps Server-administratörer även administratörer för noden "Alla agentpooler" när de använder TFS eller Azure DevOps Server.

Säkerhetsinställningar på projektnivå

Roller definieras också för varje projektagentpool, och medlemskap i dessa roller styr vilka åtgärder du kan utföra på en agentpool på projektnivå.

Roll i en agentpool i projektinställningar Syfte
Läsare Medlemmar i den här rollen kan visa projektagentpoolen. Du använder vanligtvis detta för att lägga till operatorer som ansvarar för att övervaka bygg- och distributionsjobben i den projektagentpoolen.
User Medlemmar i den här rollen kan använda projektagentpoolen vid redigering av pipelines.
Administratör Förutom alla ovanstående åtgärder kan medlemmar i den här rollen hantera medlemskap för alla roller i projektagentpoolen. Användaren som skapade poolen läggs automatiskt till i administratörsrollen för poolen.

Pipeline-behörigheter

Pipelinebehörigheter styr vilka YAML-pipelines som har behörighet att använda en agentpool. Pipelinebehörigheter begränsar inte åtkomsten från klassiska pipelines.

Du kan välja mellan följande alternativ:

  • Öppna åtkomsten för alla pipelines för att använda agentpoolen från de fler alternativen längst upp till höger i avsnittet Pipelinebehörigheter på fliken Säkerhet i en agentpool.

  • Lås agentpoolen och tillåt endast valda YAML-pipelines att använda den. Om någon annan YAML-pipeline refererar till agentpoolen genereras en auktoriseringsbegäran som måste godkännas av en agentpoolsadministratör. Detta begränsar inte åtkomsten från klassiska pipelines.

Skärmbild av användarupplevelsen för pipelinebehörigheter för en agentpool.

Det går inte att konfigurera pipelinebehörigheter för Azure Pipelines-agentpoolen eftersom poolen som standard är tillgänglig för alla pipelines.

Noden Alla agentpooler på fliken Agentpooler används för att kontrollera säkerheten för alla projektagentpooler i ett projekt. Rollmedlemskap för enskilda projektagentpooler ärvs automatiskt från noden "Alla agentpooler". Som standard läggs följande grupper till i administratörsrollen "Alla agentpooler": Byggadministratörer, versionsadministratörer, projektadministratörer.

Säkerhetsåtgärden på fliken Agentpooler används för att kontrollera säkerheten för alla projektagentpooler i ett projekt. Rollmedlemskap för enskilda projektagentpooler ärvs automatiskt från det du definierar här. Som standard läggs följande grupper till i administratörsrollen "Alla agentpooler": Byggadministratörer, versionsadministratörer, projektadministratörer.

Vanliga frågor

När kommer agenterna att köra underhåll om jag inte schemalägger ett underhållsperiod?

Om inget fönster har schemalagts kommer agenterna i poolen inte att köra underhållsjobbet.

Vad är ett underhållsjobb?

Du kan konfigurera agentpooler för att regelbundet rensa inaktuella arbetskataloger och lagringsplatser. Detta bör minska risken för att agenterna får slut på diskutrymme. Underhållsjobb konfigureras på organisationsnivå i inställningarna för agentpoolen.

Så här konfigurerar du inställningar för underhållsjobb:

  1. Logga in på din organisation (https://dev.azure.com/{yourorganization}).

  2. Välj Azure DevOps, Organisationsinställningar.

    Välj Organisationsinställningar.

  3. Välj Agentpooler.

    Välj fliken Agentpooler.

  1. Logga in på din projektsamling (http://your-server/DefaultCollection).

  2. Välj Azure DevOps, samlingsinställningar.

    Välj Samlingsinställningar.

  3. Välj Agentpooler.

    Välj Agentpooler.

  1. Välj Azure DevOps, samlingsinställningar.

    Samlingsinställningar, 2019.

  2. Välj Agentpooler.

    Välj Agentpooler, 2019.

Välj önskad pool och välj Inställningar för att konfigurera inställningar för underhållsjobb för agentpoolen.

Viktigt!

Du måste ha behörigheten Hantera byggköer för att konfigurera inställningar för underhållsjobb. Om du inte ser fliken Inställningar eller fliken Underhållshistorik har du inte den behörigheten , som som standard beviljas rollen Administratör . Mer information finns i Säkerhet för agentpooler.

Inställningar för underhållsjobb

Konfigurera önskade inställningar och välj Spara.

Välj Underhållshistorik för att se historiken för underhållsjobbet för den aktuella agentpoolen. Du kan ladda ned och granska loggar för att se de rensningssteg och åtgärder som vidtagits.

Historik för underhållsjobb

Underhållet utförs per agentpool, inte per dator. Så om du har flera agentpooler på en enda dator kan du fortfarande stöta på diskutrymmesproblem.

Underhållsjobbet för min lokalt installerade agentpool ser ut att ha fastnat. Varför?

Vanligtvis ”fastnar” ett underhållsjobb när det väntar på att köras på en agent som inte längre finns i agentpoolen. Detta inträffar när till exempel agenten avsiktligt har tagits offline eller när det finns problem med att kommunicera med den.

Underhållsjobb som har placerats i kö väntar sju dagar innan de körs. Sedan ställs de automatiskt in på feltillstånd om de inte körs. Den här tidsgränsen kan inte ändras.

Sjudagarsgränsen skiljer sig från tidsgränsinställningen för underhållsjobb. Den senare styr det maximala antalet minuter som en agent kan ägna åt underhåll. Timern startar när jobbet startar, inte när jobbet placeras i kö på en agent.

Jag försöker skapa en projektagentpool som använder en befintlig organisationsagentpool, men kontrollerna är nedtonade. Varför?

I dialogrutan Skapa en projektagentpool kan du inte använda en befintlig organisationsagentpool om den redan refereras av en annan projektagentpool. Varje organisationsagentpool kan bara refereras till av en projektagentpool i en viss projektsamling.

Jag kan inte välja en Microsoft-värdbaserad pool och jag kan inte ställa min version i kö. Hur åtgärdar jag detta?

Be Azure DevOps-organisationens ägare att ge dig behörighet att använda poolen. Se Säkerhet för agentpooler.

Jag behöver fler värdbaserade byggresurser. Vad ska jag göra?

S: Azure Pipelines-poolen ger alla Azure DevOps-organisationer molnbaserade byggagenter och kostnadsfria byggminuter varje månad. Om du behöver fler Microsoft-värdbaserade byggresurser eller behöver köra fler jobb parallellt kan du antingen: