About Elastic Bamboo
On this page:
Conceptual Overview
Elastic Bamboo Conceptual Overview
A Bamboo build job can be run on an elastic agent, provided that the capabilities of the elastic agent meet the requirements of the job. Bamboo will assign the relevant job to an available elastic agent from the build queue automatically. The elastic agent must already be running for a job to be assigned to it.
An elastic agent is started by creating a new instance of an elastic image. Creating this new elastic instance automatically runs an elastic agent process in the instance. The agent inherits the capabilities of the image it was created from. Only one agent process can be run in an instance, although multiple instances can be created from the same image.
Once a job has completed running on an elastic agent, its results are made available (like those of any other job executed on a non-elastic agent). The elastic agent and instance will continue to run until they are shut down. Shutting down an elastic instance will terminate the agent, not take it offline. However, Bamboo will store historical information about the terminated elastic agent, such as the job which it has run.
An Amazon Web Services (AWS) account is required to use Elastic Bamboo. Elastic Bamboo Costs are charged by Amazon, separate to Bamboo license costs, as Elastic Bamboo is powered by Amazon resources.
Did you know you can configure Bamboo to start and shut down elastic instances automatically, based on build queue demands? Please refer to Configuring Elastic Bamboo for more information.
Key Terms
Elastic Image
Each elastic image registered with the Amazon Web Services (AWS) has its own unique identifier, known as an AMI ID.
You can associate multiple elastic images with a Bamboo server. One default shared image is maintained by Atlassian in AWS, and is available to all Elastic Bamboo users.
You can also create your own custom elastic images.
Elastic Instance
An elastic instance is a running instance of an elastic image. One elastic instance is created whenever an elastic image is started. Hence, starting one elastic image multiple times, results in the creation of multiple elastic instances. Each time an elastic instance is created, one elastic agent is created on that instance.
Conceptually, an elastic instance can be thought of as a computer. The elastic agent's processes are run on this computer and the elastic image is the boot hard drive. Unlike computers, however, elastic instances are temporary and stateless. When an elastic instance is shut down:
- Any changes that an elastic instance makes to the boot hard drive (e.g. agent log file) will not persist
- Any customizations to the instance itself will also be lost.
The Amazon Elastic Block Store can provide persistent storage for your elastic instances.
Elastic Agent
Setting Up Elastic Bamboo
If you would like to set up Elastic Bamboo for your Bamboo installation, please read Getting started with Elastic Bamboo. This document guides you through the initial configuration of Elastic Bamboo and running your first Job build.