All pages
Powered by GitBook
1 of 2

Loading...

Loading...

Agent Pools

Meet performance demand in AKS workloads by organizing Azure agents into 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 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.

The Add Azure Agent Pool page in the DuploCloud Portal
  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 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.

    The Add Azure Agent Pool page in the DuploCloud Portal
  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.

    The Azure Agent Pool tab on the Hosts page shows the DLJEGA1 agent pool with Succeeded status
  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.

    The Azure Agent Pool page with the Edit menu option highlighted
  5. In the Update agent pool capacity pane, edit the pool configuration.

  6. Click Update.

Spot Instances for AKS Agent Pools

Configure AKS Agent pools and Services to use spot instances in the DuploCloud platform

Spot Instances in AKS are discounted VMs that use Azure's spare capacity. This makes them a cost-effective strategy for running Kubernetes workloads. However, they can be evicted when Azure needs the resources back, so they're best for fault-tolerant tasks that are resilient to interruptions.

Creating Agent Pools with Spot Instances

  1. Follow the steps to add an agent pool.

  2. On the Add Azure Agent Pool page, select Spot from the Scale Set Priority list box.

The Add Azure Agent Pool page
  1. In the Scale Set Eviction Policy list box, specify how the virtual machines (VMs) should be managed when they need to be evicted due to capacity constraints or other reasons:

  • Delete: When a VM is evicted, it is completely removed from the scale set and cannot be recovered. This option is typically used when you do not need to preserve the VM's state and prefer to free up resources immediately.

  • Deallocate: The evicted VM is stopped and its resources are released, but its configuration and state are preserved and it can be restarted later. This is useful when you want to save the VM's state for potential future use.

  1. In the Spot Max Price field, Specify the highest price you are willing to pay for a spot instance.

Configuring a DuploCloud Service to use Spot Instances

When adding or editing a Service, select Tolerate spot instances.

The Add Service page with Tolerate spot instances enabled

Tolerations will be entered by default in the Add Service page, Advanced Options, Other Container Config field.

The Add Service page, Advanced Options, with tolerations shown in the Other Container Config field