# Agent Pools

When you create agent pools to run Azure Kubernetes (AKS) workloads, you create groups of agents available to a pipeline. When you run the pipeline, the pipeline selects the agent that best meets the performance demands of that pipeline.

Autoscaling can be enabled when creating agent pools in the DuploCloud Portal. Each agent pool contains nodes backed by virtual host machines.

## Prerequisites

To create an agent pool using availability zones, you must first create a [PostgreSQL Flexible Server subnet](/docs/automation-platform/overview-2/azure-services/databases/postgresql-flexible-server.md#create-a-postgresql-flexible-server-subnet-in-the-infrastructure) in the Infrastructure. For agent pools not using availability zones, skip this step.

## Adding an agent pool

Create an Azure agent pool for an existing Host in the DuploCloud Portal.

1. From the DuploCloud Portal, navigate to **Cloud Services** -> **Hosts**.
2. Select the **Azure Agent Pool** tab, and Click **Add**. The **Add Azure Agent Pool** page displays.<br>

<figure><img src="/files/5jj6BTKTdN16JnZgBz2j" alt=""><figcaption><p>The <strong>Add Azure Agent Pool</strong> page in the DuploCloud Portal</p></figcaption></figure>

1. Provide inputs for the **Id**, **Instance Type**, **Min Capacity**, **Max Capacity**, and **Desired Capacity** fields.
2. Enter allocation tags in the **Allocation Tags** field, if required.
3. Optionally, select one or more availability zones from the **Availability Zones** list box. If you select availability zones, you must create a [PostgreSQL Flexible Server subnet](/docs/automation-platform/overview-2/azure-services/databases/postgresql-flexible-server.md#create-a-postgresql-flexible-server-subnet-in-the-infrastructure) in the Infrastructure before adding your agent pool.
4. Optionally, select **Enable Autoscaling**.
5. Select the **Scale Set** priority: **Regular** creates a regular agent pool node with standard priority and **Spot** creates Spot AKS agent pool nodes.
6. If needed, adjust the number of **Max Pods Per Node** from the default of 30.<br>

   <figure><img src="/files/lySM3SQlyBd5edWfSSZw" alt=""><figcaption><p>The <strong>Add Azure Agent Pool</strong> page in the DuploCloud Portal</p></figcaption></figure>
7. Click **Add**. It may take some time to create the agent pool. When the agent pool is ready, **Succeeded** displays in the **Status** column.<br>

   <figure><img src="/files/pi8Y2AHsfXONuvy6nFFi" alt=""><figcaption><p>The <strong>Azure Agent Pool</strong> tab on the <strong>Hosts</strong> page shows the <strong>DLJEGA1</strong> agent pool with <strong>Succeeded</strong> status</p></figcaption></figure>
8. Optionally, select **Enable Autoscaling**.
9. In the **Scale Set Priority** list box, select **Regular**, or **Spot.** If you selected **Spot**, specify a **Scale Set Eviction Policy**, and **Spot Max Price**.

## Editing an agent pool

Edit an agent pool:

1. Select **Cloud Services** -> **Hosts** from the navigation menu.
2. Select the **Azure Agent Pool** tab. The **Azure Agent Pool** page displays.
3. In the **Name** column, select the agent pool that you want to edit.
4. Select the **Actions** menu and choose **Edit**.<br>

   <figure><img src="/files/8RbouyYjfCnO1sfjSX6l" alt=""><figcaption><p>The <strong>Azure Agent Pool</strong> page with the <strong>Edit</strong> menu option highlighted</p></figcaption></figure>
5. In the **Update agent pool capacity** pane, edit the pool configuration.
6. Click **Update**.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.duplocloud.com/docs/automation-platform/overview-2/azure-services/agent-pool.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
