[Bamboo Knowledge Base]
The recommendations in this guide may not fit all situations and your mileage may vary.
For Bamboo, the minimum CPU and memory requirements depend on the size and complexity of your plans. You need to consider:
See also:
User scenario | Usage profile | Bamboo server |
---|---|---|
Individual user/ Small team |
| 4 core, 2 GB RAM |
Medium team |
| 8 core, 4 GB RAM, remote agent use |
Multiple small teams/ Large team |
| 8 core, 8 GB RAM, more remote agents |
Multiple large teams/ Department/Division |
| 16 core, 8 GB RAM, all remote agents |
The Bamboo installation size is approximately 140MB, however, Bamboo's storage requirements depend upon its usage pattern during use. The usage pattern depends on factors such as:
Atlassian recommends that you allocate about 20GB on top of the Bamboo installation size, and evaluate your usage patterns. Where usage is likely to grow, consider adding additional storage.
Bamboo is a pure Java application and should run on any platform, provided all the JDK requirements are satisfied.
The Supported Platforms page lists the server and client software, and their versions, supported by Bamboo 5.7.x.
Disabling JavaScript in your browser, or using a script blocking tool like NoScript, will limit access to Bamboo's full functionality. JavaScript should be enabled.
Bamboo requires the full Java Developers Kit (JDK) platform to be installed on your server's operating system.
Bamboo is a web application that requires an application server. Currently Apache Tomcat is supported. Tomcat is a stable, lightweight and fast performing application server, however, please note the following:
lib
subdirectory.Bamboo requires a relational database to store its data. Bamboo supports most popular relational database servers, so we suggest using the one that you are most comfortable with administering. Bamboo ships pre-configured with an integrated HSQL database for evaluation purposes only. Since HSQLDB is prone to database corruption, we recommend configuring an external database for production environments.
Hence, if you intend to use Bamboo in a production environment, we strongly recommend that you connect Bamboo to a supported enterprise database system.
Bamboo also requires a number of services for efficient operation. You need to consider:
The number of database connections available to Bamboo is the the lower of two values: your DBMS connection limit and the configured Bamboo connection pool size. From Bamboo 4.2 and later, the Bamboo connection pool size has a default value of 100.
For a small to medium instances (~5 concurrent users, ~5 busy/building local agents, 20 remote agents, 50 plans), the default values are sufficient.
You should increase the connection limit if you notice UI freezes or general sluggish UI performance. Do not decrease the number of available connections below 25.
Note: having too many connections available to Bamboo carries no performance penalty as long as your DBMS can handle the load.
The following formula gives a rough estimate of the number of database connections that will be required:
(Concurrent users)/5 + (Busy remote agents)/5 + (Local agents)*1.1 + (Amount of concurrent change detections)
For example, an instance with:
would require 1 + 6 + 33 + 3 = 43 connections.
Bamboo ships with a pre-configured connection limit, however this can be modified by editing the following value in your bamboo.cfg.xml file:
<property name="hibernate.c3p0.max_size">100</property>
If you run more than 5 concurrently building local agents, you'll probably need to adapt the connection limit because each busy local agent requires a live database connection.
Also, note that large amounts of busy (building) local agents can negatively influence the performance of a Bamboo server (and other services running on that host).
Remote agents do not require special database connection settings.