Creating and managing agent pools
Similar to resource groups, agent pools help you organize and manage agents that are installed in different environments.
You can use an agent pool to spread the deployment processing work among participating agents and provide relief to otherwise overburdened agents. Users assign agents to pools and pools are assigned to resources, just like lone agents. When an agent pool is assigned to a resource, work items are sent to eligible agents. If you don't use a pool, then the agent that is assigned to the resource is assigned all the processing work regardless of its current workload. Such a workload might lead to bottlenecks.Note: Starting in IBM DevOps Deploy (Deploy) 7.0.3,
there is a new agent pool algorithm which will assign the workload to the most available
agents in the pool. Most available agents are determined by which agents have the
minimum running plugin steps in the agent pool. If there are multiple agents in the pool
with the same plugin step count, the agents the database returns first will be assigned
the workload. Prior to Deploy 7.0.3,
agents were assigned the work at random.
Creating an agent pool
To create an agent pool, specify the agents that are the members of the
pool.
Managing agent pools
You can manage agent pools from the web interface.
Agent pools for containers
Agent pools can be used to provide efficiency with your use of Deploy licenses. You can take advantage of running your agents in a Kubernetes-based environment where you can spin agent instances up and down quickly.
Follow these steps in order to achieve this efficiency:
- Build the application resource tree using an Agent Pool instead of using the Agent directly. .
- Deploy an instance of the Deploy Agent to your Kubernetes cluster. See Deploying Agent in Kubernetes Cluster.
- The agent will be automatically get a license per the system setting on licensing agent.
- Use the REST API to add the agent into the specified Agent Pool. See Add an agent to an agent pool.
- Run your deployment.
- Use the REST API to remove the agent from the specified Agent Pool. See Remove an agent from an agent pool.
- The license will be removed if you are using server-agent license model; license will be released 15 minutes later if you are using Simultaneous Session license model.
- Delete the instance of the Deploy Agent from the Kubernetes cluster.