Load balancing JIRA

Hello,

We need some advice regarding the indexation of JIRA in case we use master and slave configuration. Indexing JIRA in slave mode can take lot of time and makes JIRA unavailable for users, so we need to know if there is a way to avoid this unavailability. We thought about some ideas: create a folder shared between JIRA master and slave.

Any proposition is welcome.
Thanks for your help!

5 answers

Hi there,

This isn't going to be easy. Despite charge the new Enterprise licences for Jira, it still doesn't come with basic Enterprise features. if you create a shared folder between the two instances and only have one running at a time you may get it to work but the problem is you can't have two instances access the lucine index at once as they will lead to corruption. This is the main problem with trying to get a Jira cluster, attachments are fine but everything in Jira runs off the index which is why it's unavailable during a re-index. There is a distributed version of Lucene available but for some reason Atlassian haven't made any moves to using it.

Even if you got to Atlassian, they will tell you to get a bigger server that can handle the load & use a cold standby for failover.

I presume you've already read this?

http://confluence.atlassian.com/display/JIRA/Is+Clustering+or+Load+Balancing+JIRA+Possible

1 vote
Stefan Broda Atlassian Team Jun 05, 2012

On this topic: Atlassian has just released a dedicated best practice guide for High Availability. It covers a cold failover scenario and includes implementation details on reverse proxying, monitoring, replication and failover mechanisms:

https://confluence.atlassian.com/display/ATLAS/Failover+for+JIRA

Maybe not such a good idea since a shared folder usually means SMB or NFS access to the index which is really too slow for indexes. Atlassian recommends to put the index on the fastest disk you can get, e.g. a local disk or a SSD. If indexing downtime is annoying you could write your own service that loops through all issues and indexes them using the IndexManager.reInde method. This can take a long time but should not put too much load on your system but might of course temporarily produce wrong search results. It's your decision accuracy vs. Availability
Thanks to Matthew for clarification. In my answer i assumed you want to continuously replicate your combined Jira/DB to a warm standby server and in case of failure you switch to that server by redirecting your load balancer to the standby server so actually you use the load balancer just as a switch.

OK thanks a lot to both of you. your responses were very helpful for our team.

Thanks again.

0 vote

On July 9, 2014, Atlassian has released its Enterprise Edition which answers all the questions about JIRA Load Balancing and Clustering. It is available only from JIRA 6.3. Upgrade soon and enjoy clustered JIRA.

More info can be found in:

JIRA DataCenter

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Thursday in Marketplace Apps

Tips on how to choose the best estimation method for your planning

Planning and grooming sessions all come with their own sets of rules. Team members meet to estimate stories or other work items, all according to an agreed-upon process. And with every session comes ...

77 views 0 11
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you