Ganesh Boggarapu

May 25, 2026 • 2 min read

VM based vs Agent based CICD setup

VM based vs Agent based CICD setup

When setting up your CICD server you are very often stuck with the dilema of whether to choose a Node based setup or an agent based setup?

The traditional setup in general is the node based setup where you have multiple VM nodes connected to the CICD server and depending upon the use case you will use a particular node which has all the required packages that you need for building your code.

This also comes with a cost of time and compute that goes into updating the nodes with the latest packages, libraries and system dependencies from time to time to ensure that your nodes are upto date. Incase a node crashes it takes time and effort to spin up a new server and install the required softwares/packages/libraries to bring the server upto speed. VM based nodes also require backup and patching and many other overheads that come along with this setup.

Whereas in an Agent based setup you just install the docker agent and spin up containers during build and testing phase. Once the build is successful and the code is safe and secure and the application is tested the containers automatically stops and can also be deleted towards the end. In this way the agent based model is light weight, quick and does not consume any overhead resources. This is very suitable if you are planning to optimise your infrastrucutre costs and keep the system simple.

This setup can be used in both OSS tools like Jenkins and cloud based setups like GitHub Actions etc.

While there is no best method for use. If we draw a side byu comparison to how it would look. Below chart can be useful.

You can choose a VM based CICD approach if the application is small and team size is also small and where the chances of scaling are minimal.

If the priority is scale with cost and simplicity is mind then agent based approach is the best.

Join Ganesh on Peerlist!

Join amazing folks like Ganesh and thousands of other builders on Peerlist.

peerlist.io/

It’s available... this username is available! 😃

Claim your username before it's too late!

This username is already taken, you’re a little late.😐

0

1

0