Browsing sessions are switching between data center nodes in load balanced environment

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問


プラットフォームについて: Data Center のみ - この記事は、Data Center プラットフォームのアトラシアン製品にのみ適用されます。

この KB は Data Center バージョンの製品用に作成されています。Data Center 固有ではない機能の Data Center KB は、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。

*Fisheye および Crucible は除く

要約

When browsing a site hosted on a Data Center platform, the client is switching sessions from one node to the other in between each page load.

This can often be confirmed by observing the "NodeID" that is printed at the bottom of almost every Confluence page - if that NodeID is changing in between page navigations or page refreshes then the load balancer is not persisting sessions and the client is "bouncing" between nodes. 

環境

Load-balanced Confluence Data Center

  • this is to include the load balancer / Ingress of:
    • A Kubernetes cluster if Confluence DC is running in a K8 cluster
    • NetScaler

原因

Session Affinity, or "Sticky Sessions", is not enabled on the load balancer. 

ソリューション

The steps for implementing this feature differs from load balancer vendor to vendor, look for "Session Affinity" or "Sticky Sessions" and ensure this is enabled. This is a requirement for Confluence per "Load Balancer Configuration Options" to use session persistence when load balancing.

Kubernetes Ingress Annotation example

In the case where, when deploying Confluence via a Helm chart to a Kubernetes cluster, you happen to not be using the default NGINX Ingress/Ingress Controller and are using Traefik instead, the following would be the annotations necessary to ensure the Traefik Ingress (acting as the load balancer) enforces session persistence

traefik.ingress.kubernetes.io/service.sticky.cookie: "true",
traefik.ingress.kubernetes.io/service.sticky.cookie.name: "confluence_cookie",
traefik.ingress.kubernetes.io/service.sticky.cookie.secure: "true"


NetScaler Example

If you're using NetScaler session affinity can be done via COOKIEINSERT.

Session Affinity Method: COOKIEINSERT
Time-out (mins): 0 (no expiry)
Cookie Name: <empty>

最終更新日 2024 年 8 月 30 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.