Köra en ACR-uppgift på en dedikerad agentpoolRun an ACR task on a dedicated agent pool

Konfigurera en Azure-hanterad VM-pool (agentpool) för att aktivera körning av Azure Container Registry i en dedikerad beräkningsmiljö.Set up an Azure-managed VM pool (agent pool) to enable running your Azure Container Registry tasks in a dedicated compute environment. När du har konfigurerat en eller flera pooler i registret kan du välja en pool för att köra en uppgift i stället för tjänstens standardmiljö för beräkning.After you've configured one or more pools in your registry, you can choose a pool to run a task in place of the service's default compute environment.

En agentpool tillhandahåller:An agent pool provides:

  • Stöd för virtuella nätverk – Tilldela en agentpool till ett virtuellt Azure-nätverk, vilket ger åtkomst till resurser i det virtuella nätverket, till exempel ett containerregister, nyckelvalv eller lagring.Virtual network support - Assign an agent pool to an Azure VNet, providing access to resources in the VNet such as a container registry, key vault, or storage.
  • Skala efter behov – Öka antalet instanser i en agentpool för beräkningsintensiva aktiviteter eller skala till noll.Scale as needed - Increase the number of instances in an agent pool for compute-intensive tasks, or scale to zero. Faktureringen baseras på poolallokering.Billing is based on pool allocation. Mer information finns i Prissättning.For details, see Pricing.
  • Flexibla alternativ – Välj mellan olika poolnivåer och skalningsalternativ som uppfyller dina uppgiftsarbetsbelastningsbehov.Flexible options - Choose from different pool tiers and scale options to meet your task workload needs.
  • Azure-hantering – Uppgiftspooler korrigeras och underhålls av Azure, vilket ger reserverad allokering utan att de enskilda virtuella datorerna behöver underhållas.Azure management - Task pools are patched and maintained by Azure, providing reserved allocation without the need to maintain the individual VMs.

Den här funktionen är tillgänglig på tjänstnivån premiumcontainerregister.This feature is available in the Premium container registry service tier. Information om registertjänstnivåer och begränsningar finns i Azure Container Registry SKU:er.For information about registry service tiers and limits, see Azure Container Registry SKUs.

Viktigt

Den här funktionen är för närvarande i förhandsversion och vissa begränsningar gäller.This feature is currently in preview, and some limitations apply. Förhandsversioner är tillgängliga för dig under förutsättning att du godkänner de kompletterande användningsvillkoren.Previews are made available to you on the condition that you agree to the supplemental terms of use. Vissa aspekter av funktionen kan ändras innan den är allmänt tillgänglig (GA).Some aspects of this feature may change prior to general availability (GA).

Begränsningar för förhandsversionPreview limitations

  • Uppgiftsagentpooler stöder för närvarande Linux-noder.Task agent pools currently support Linux nodes. Windows-noder stöds inte för närvarande.Windows nodes aren't currently supported.
  • Uppgiftsagentpooler är tillgängliga som förhandsversion i följande regioner: USA, västra 2, USA, södra centrala, USA, östra 2, USA, östra, USA, centrala, Europa, västra, Europa, norra, Kanada, centrala, USGov Arizona, USGov Texas och USGov Virginia.Task agent pools are available in preview in the following regions: West US 2, South Central US, East US 2, East US, Central US, West Europe, North Europe, Canada Central, USGov Arizona, USGov Texas, and USGov Virginia.
  • För varje register är den totala standardkvoten för vCPU (kärna) 16 för alla standardagentpooler och är 0 för isolerade agentpooler.For each registry, the default total vCPU (core) quota is 16 for all standard agent pools and is 0 for isolated agent pools. Öppna en supportbegäran om ytterligare allokering.Open a support request for additional allocation.
  • Du kan för närvarande inte avbryta en uppgiftskörning på en agentpool.You can't currently cancel a task run on an agent pool.

FörutsättningarPrerequisites

  • Om du vill använda Azure CLI-stegen i den här artikeln krävs Azure CLI version 2.3.1 eller senare.To use the Azure CLI steps in this article, Azure CLI version 2.3.1 or later is required. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.If you need to install or upgrade, see Install Azure CLI. Eller kör i Azure Cloud Shell.Or run in Azure Cloud Shell.
  • Om du inte redan har ett containerregister skapar du ett (Premium-nivå krävs) i en förhandsversionsregion.If you don't already have a container registry, create one (Premium tier required) in a preview region.

PoolnivåerPool tiers

Agentpoolnivåer tillhandahåller följande resurser per instans i poolen.Agent pool tiers provide the following resources per instance in the pool.

NivåTier TypType ProcessorCPU Minne (GB)Memory (GB)
S1S1 standardstandard 22 33
S2S2 standardstandard 44 88
S3S3 standardstandard 88 1616
I6I6 Isoleradeisolated 6464 216216

Skapa och hantera en uppgiftsagentpoolCreate and manage a task agent pool

Ange standardregister (valfritt)Set default registry (optional)

För att förenkla Azure CLI-kommandon som följer anger du standardregistret genom att köra kommandot az configure:To simplify Azure CLI commands that follow, set the default registry by running the az configure command:

az configure --defaults acr=<registryName>

I följande exempel förutsätts att du har angett standardregistret.The following examples assume that you've set the default registry. Om inte skickar du en --registry <registryName> parameter i varje az acr kommando.If not, pass a --registry <registryName> parameter in each az acr command.

Skapa agentpoolCreate agent pool

Skapa en agentpool med hjälp av kommandot az acr agentpool create.Create an agent pool by using the az acr agentpool create command. I följande exempel skapas en nivå S2-pool (4 CPU/instans).The following example creates a tier S2 pool (4 CPU/instance). Som standard innehåller poolen 1 instans.By default, the pool contains 1 instance.

az acr agentpool create \
    --name myagentpool \
    --tier S2

Anteckning

Det tar flera minuter att skapa en agentpool och andra poolhanteringsåtgärder.Creating an agent pool and other pool management operations take several minutes to complete.

SkalningspoolScale pool

Skala upp eller ned poolstorleken med kommandot az acr agentpool update.Scale the pool size up or down with the az acr agentpool update command. I följande exempel skalas poolen till 2 instanser.The following example scales the pool to 2 instances. Du kan skala till 0 instanser.You can scale to 0 instances.

az acr agentpool update \
    --name myagentpool \
    --count 2

Skapa pool i ett virtuellt nätverkCreate pool in a virtual network

Lägga till brandväggsreglerAdd firewall rules

Uppgiftsagentpooler kräver åtkomst till följande Azure-tjänster.Task agent pools require access to the following Azure services. Följande brandväggsregler måste läggas till i befintliga nätverkssäkerhetsgrupper eller användardefinierade vägar.The following firewall rules must be added to any existing network security groups or user-defined routes.

RiktningDirection ProtokollProtocol KällaSource KällportSource Port MålDestination Dest-portDest Port AnväntUsed
UtgåendeOutbound TCPTCP VirtualNetworkVirtualNetwork ValfriAny AzureKeyVaultAzureKeyVault 443443 StandardvärdeDefault
UtgåendeOutbound TCPTCP VirtualNetworkVirtualNetwork ValfriAny StorageStorage 443443 StandardvärdeDefault
UtgåendeOutbound TCPTCP VirtualNetworkVirtualNetwork ValfriAny EventHubEventHub 443443 StandardvärdeDefault
UtgåendeOutbound TCPTCP VirtualNetworkVirtualNetwork ValfriAny AzureActiveDirectoryAzureActiveDirectory 443443 StandardvärdeDefault
UtgåendeOutbound TCPTCP VirtualNetworkVirtualNetwork ValfriAny AzureMonitorAzureMonitor 443443 StandardvärdeDefault

Anteckning

Om dina uppgifter kräver ytterligare resurser från det offentliga Internet lägger du till motsvarande regler.If your tasks require additional resources from the public internet, add the corresponding rules. Ytterligare regler krävs till exempel för att köra en docker-build-uppgift som hämtar basavbildningarna från Docker Hub, eller återställer ett NuGet-paket.For example, additional rules are needed to run a docker build task that pulls the base images from Docker Hub, or restores a NuGet package.

Skapa pool i VNetCreate pool in VNet

I följande exempel skapas en agentpool i undernätet mysubnet i nätverket myvnet:The following example creates an agent pool in the mysubnet subnet of network myvnet:

# Get the subnet ID
subnetId=$(az network vnet subnet show \
        --resource-grop myresourcegroup \
        --vnet-name myvnet \
        --name mysubnetname \
        --query id --output tsv)

az acr agentpool create \
    --name myagentpool \
    --tier S2 \
    --subnet-id $subnetId

Köra uppgiften på agentpoolenRun task on agent pool

I följande exempel visas hur du anger en agentpool när du köar en uppgift.The following examples show how to specify an agent pool when queuing a task.

Anteckning

Om du vill använda en agentpool i en ACR-uppgift ser du till att poolen innehåller minst 1 instans.To use an agent pool in an ACR task, ensure that the pool contains at least 1 instance.

SnabbuppgiftQuick task

Köa en snabbuppgift i agentpoolen med hjälp av kommandot az acr build och skicka --agent-pool parametern :Queue a quick task on the agent pool by using the az acr build command and pass the --agent-pool parameter:

az acr build \
    --agent-pool myagentpool \
    --image myimage:mytag \
    --file Dockerfile \
    https://github.com/Azure-Samples/acr-build-helloworld-node.git#main

Automatiskt utlöst uppgiftAutomatically triggered task

Du kan till exempel skapa en schemalagd aktivitet i agentpoolen med az acr task createoch skicka --agent-pool parametern .For example, create a scheduled task on the agent pool with az acr task create, passing the --agent-pool parameter.

az acr task create \
    --name mytask \
    --agent-pool myagentpool \
    --image myimage:mytag \
    --schedule "0 21 * * *" \
    --file Dockerfile \
    --context https://github.com/Azure-Samples/acr-build-helloworld-node.git#main \
    --commit-trigger-enabled false

Kontrollera aktivitetskonfigurationen genom att köra az acr task run:To verify task setup, run az acr task run:

az acr task run \
    --name mytask

FrågepoolstatusQuery pool status

Om du vill hitta antalet körningar som är schemalagda i agentpoolen kör du az acr agentpool show.To find the number of runs currently scheduled on the agent pool, run az acr agentpool show.

az acr agentpool show \
    --name myagentpool \
    --queue-count

Nästa stegNext steps

Fler exempel på containeravbildningsbyggen och underhåll i molnet finns i ACR-uppgifter självstudieserien.For more examples of container image builds and maintenance in the cloud, check out the ACR Tasks tutorial series.