Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,456,541
Community Members
 
Community Events
176
Community Groups

Configuring Jira Data Center with Netscaler as Load Balancer

Edited

Hi All,

Could I ask for some advice from anyone who has successfully set up Jira Data Centre using Netscaler as the load balancer?

The problem we're having is that when a user successfully completes authentication on one of the nodes, they are quite often redirected to another node on a new anonymous session and asked to authenticate again. Basically, session stickiness isn't working.

We believe that the problem relates to how we've attempted to set up cookie-based session affinity as described in the installation instructions. In particular we're struggling with the description of the jira.node.id property in the cluster.properties file: "This unique ID must match the username and the BalanceMember entry in the Apache configuration".

We've not been able to find a direct equivalent of this in the configuration for Netscaler, so this is where we believe that the problem is occurring. We've just set this value to be the fully qualified host name of the node.

Our tests have shown that the for the JSESSIONID cookie, a new value is written to this after a successful authentication. In spite of the fact that we're appending the "node name" to the cookie by setting the -DjvmRoute startup parameter, as described in the example 2 of this documentation.

I think there has to be something we're missing in the Netscaler configuration that tells it how to route traffic to those node names.

So far we've managed to work around this by using source IP-based persistence instead, but since all of Atlassian's documentation seems to be geared up towards cookie based session affinity, we'd be quite keen to get this working.

Any suggestions on where we might be going wrong would be much appreciated.

 

Many thanks

Darren

 

1 answer

1 accepted

2 votes
Answer accepted

We've managed to fix this issue now. The nearest equivalent we can find to what is described in Atlassian's documentation is COOKIEINSERT, as described here.

This gives us a similar solution to that described in example 1 of the load balancer examples (Specific load balancing cookie).

 

I hope that helps someone else!

Can you expand a bit? We are having this exact issue, too, with a nearly identical setup. 

The Jira load balancer example is for Apache, and it mentions ROUTEID and JSESSIONID, while the Citrix Netscaler mentions COOKIEINSERT. I'm not sure how to apply the examples to Netscaler.

Hi David,

Well, I'm no CDN engineer, but once I found the word COOKIEINSERT from Netscaler's documentation, I just handed that over to our engineers, and they just made it so.

Hopefully this KB article on Citrix's website will get you what you need.

https://support.citrix.com/article/CTX124630

You shouldn't need to tinker with JSessionID through the load balancer AFAIK. It will insert a new cookie; the name if I'm not mistaken always begins with NSC_ - and the rest is the name of the node name of the node you're being persisted to, but encrypted.

Hope that helps

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events