Can I setup a farm of multiple Bamboo Servers out of the box?

Raja Nadar April 19, 2016

We are setting up a Bamboo system in AWS with a Bamboo Server, and remote & elastic agents. (no local agents) The Bamboo server uses an external database, which is a Multi-AZ Postgres Server in AWS RDS.

Currently we have just one instance of the Bamboo Server hidden under an AWS ELB.

And everything is working great, including remote agents and elastic agents.

 

We would like to setup a farm of Bamboo Servers (at least 2) for availability purposes.

  1. Is web farm, a valid scenario for Bamboo servers?
  2. Is it as simple as just spinning up another Bamboo server(s) and connecting it to the same external database? And everything will work seamlessly? OR
  3. Do we need to do custom configurations to support a web farm of Bamboo Servers?

1 answer

1 accepted

0 votes
Answer accepted
Przemek Bruski
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 20, 2016

You can't have two servers running against the same database. Your only option is cold standby.

Raja Nadar April 20, 2016

alright. so it looks like automatic fail-over is not possible. in that case, does the following setup does the closest to it?

  1. prepare a standby bamboo instance as a complete replica of the primary server, but the bamboo service is not started on it.
  2. keep the file systems of both servers in sync. (bamboo home, rsync or so)
  3. have the consumers hit a VIP, which internally points to the primary bamboo IP.

when the primary bamboo system goes down for some reason, we do the following things manually:

  1. start the bamboo service on the standby server. importantly start it with the jms uri from the command line, since the config file might be pointing to the synced primary server's config.
  2. modify the VIP to point to this now-active-previously-standby bamboo server.

and everything works normal within minutes.

though the 2 instances eventually use the same external database, they don't do it simultaneously. and hopefully can take turns.

will the above mechanism work without any glaring issues?

 

 

 

Przemek Bruski
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 21, 2016

Yes, it will work. BTW - you could use VIP as the broker client uri IP, couldn't you?

Raja Nadar April 21, 2016

absolutely. thanks @Przemyslaw Bruski

Salle Ingle August 15, 2019

Why not use an auto-scaling group with your min/max/desired set to 1 instance.  That way if your primary bamboo instance becomes unhealthy, auto-scaling will replace it with a new one.  You can also manually trigger this scaling process to replace the instance at any time with an updated build, version, or config, etc.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events