Jira Data Center クラスタのセットアップ

このページの内容

お困りですか?

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

コミュニティに質問

Jira Data Center では複数の Jira ノードのクラスタを実行して、高可用性、拡張のためのキャパシティ、および大規模環境でのパフォーマンスを実現できます。このガイドでは、お客様自身のインフラストラクチャで Data Center クラスタを構成するプロセスについて説明します。 

クラスタ化が自社に適しているかわからない場合、詳細な概要について「クラスタでの Jira Data Center の実行」を参照してください。

はじめる前に

Data Center をセットアップするにあたり、次の情報をご確認ください。

サポート対象プラットフォーム

使用可能なデータベース、Java、およびオペレーティング システムの詳細については、「サポート対象のプラットフォーム」を参照してください。Server と Data Center デプロイメントで要件は同じです。

要件

Jira Data Center を使用するには、次の条件を満たしている必要があります。

Jira をクラスタで実行するには、次の条件も満たす必要があります。

  • Jira クラスタの手前に、セッション アフィニティと WebSocket サポートを提供するロード バランサを使用する。ロード バランサの例
  • 同じパスですべてのクラスタ ノードにアクセス可能な共有ディレクトリ (共有ホーム ディレクトリになります) が存在する。ローカル ホームまたはインストール ディレクトリ内ではない、別のディレクトリである必要があります。
アプリの互換性

アプリは、アトラシアン アプリケーションでチームが実現できる内容を拡張します。Data Center に移行した後もチームで引き続きアプリを使用できるかどうかを確認しておくことが重要です。Data Center に切り替える際に、アプリの Data Center 互換バージョンが利用可能な場合はそれに切り替える必要があります。 

詳細については、「Data Center への移行に向けてアプリを評価する」を参照してください。 

用語

このガイドでは以下の用語について説明します:

  • インストール ディレクトリ: Jira をインストールしたディレクトリ。

  • ローカルのホーム ディレクトリ: 各クラスタ ノードにローカルで保存されるホームまたはデータ ディレクトリ (Jira がクラスタで実行されていない場合は単に "ホーム ディレクトリ")。

  • 共有ホーム ディレクトリ: 同一パスを経由してクラスタのすべてのノードにアクセス可能な、ユーザーが作成したディレクトリ。

クラスタのセットアップと構成

1. Jira インスタンスのインストールまたはアップグレード

Jira Data Center は Jira 7.0 以降で使用できます。これよりも前のバージョンを使用している場合、Jira インスタンスをインストールまたはアップグレードしてください。 

Jira インストールおよびアップグレード ガイド

2. 共有ディレクトリのセットアップ

クラスター内のすべてのノードで読み取り/書き込み可能なリモート ディレクトリを作成する必要があります。これを行うには複数の方法がありますが、もっとも簡単な方法は、NFS 共有を使用することです。

  1. クラスタ内のすべてのノードがアクセス可能なリモート ディレクトリを作成し、名前を設定します (例: sharedhome
  2. Jira インスタンスを停止します。
  3. 次のディレクトリを Jira のローカル ホーム ディレクトリから新しい sharedhome ディレクトリにコピーします (一部は空の場合があります)。

    • data
    • plugins
    • logos
    • import
    • export
    • caches

3. Jira インスタンスをクラスタ内で動作するように設定する

  1. Jira のローカル ホーム ディレクトリで、次のコンテンツを含む cluster.properties ファイルを作成します。 

    cluster.properties ファイルの例:

    # この ID はクラスタ間で一意である必要があります
    jira.node.id = node1
    # すべての Jira ノードの共有ホーム ディレクトリの場所
    jira.shared.home = /data/jira/sharedhome

    詳細や追加パラメーターについては、「Cluster.properties ファイルのパラメーター」を参照してください。

  2. Linux 接続の場合: オープンなファイルの最大数を増やすことをおすすめします。これを行うには、次の行を <jira-install>/bin/setenv.sh に追加します。

    ulimit -n 16384


  3. インスタンスを起動して、Data Center ライセンスを適用します。


4. 最初のノードをロード バランサに追加する

ロード バランサはノード間のトラフィックを分散させます。ノードが動作を停止すると、残りのノードがワークロードを引き継ぐため、ユーザーは気付くこともありません。

  1. 最初のノードをロード バランサに追加します。 
  2. ノードを再起動し、Jira で別のページを開きます。ロード バランサが正常に動作している場合、Jira に問題なくアクセスできます。 

5. 残りのノードをクラスターに追加します。

  1. この新しいノードに、1 つ目のノードからインストール ディレクトリローカル ホーム ディレクトリをコピーします。

  2. 新しいノードが共有ホーム ディレクトリにアクセス (読み取りおよび書き込み) できることを確認します。

  3. cluster.properties ファイルを編集し、ノード ID を変更します。すべてのノード ID は、ノード間で一意でなければなりません。

  4. Jira を起動します。共有ホーム ディレクトリから設定が読み取られ、追加手順なしで開始されます。

  5. 新しい Jira インスタンスで、課題の作成、検索、ファイル添付、およびカスタマイズが期待どおりに動作することを確認します。

  6. すべて問題なければ、新しいノードへのトラフィックのルーティングを開始するようにロード バランサを構成できます。この構成を行ったら、1 つの Jira インスタンスで複数の変更を行い、ほかのインスタンスに反映されることを確認します。

ノードをクラスタに追加する際は、 > [システム] > [システム情報] でステータスを確認できます。ノードは、[クラスター ノード] セクションに一覧表示されます。

Cluster.properties ファイルのパラメーター

必須パラメーターに加えて、cluster.properties ファイルで一部の追加オプション (ほとんどは EhCache に関するもの) を設定できます。

詳細を読む...
パラメーター必須説明/値
jira.node.id はいこの固有 ID は、Apache 構成のユーザー名および BalancerMember エントリと一致する必要があります。
jira.shared.homeはいすべての Jira ノードの共有ホーム ディレクトリの場所。
ehcache.peer.discoveryいいえ

ノードがお互いを見つける方法を示します。

default - Jira は自動的にノードを検出します (推奨)。
automatic - Jira は EhCache のマルチキャスト検出を使用します。これは EhCache が使用する従来の方法ですが、設定が難しい場合があるため、アトラシアンでは推奨していません。

自動を選択した場合...

ehcache.peer.discovery = automatic を設定する場合、次のパラメーターを設定する必要があります。

  • ehcache.multicast.address

  • ehcache.multicast.port

  • ehcache.multicast.timeToLive

  • ehcache.multicast.hostName

これらのパラメーターの詳細については、Ehcache ドキュメントを参照してください。

ehcache.listener.hostNameいいえ

キャッシュ通信のための現行ノードのホスト名。パラメーターが設定されていない場合、Jira Data Center はこれを内部的に解決します。
ネットワークのホスト名の解決に問題がある場合、このパラメータを設定できます。

ehcache.listener.portいいえ

ノードがリッスンすることになるポート (既定 = 40001)。

複数のノードが同じホスト上にあるか、このポートが利用できない場合、手動でこれを設定することが必要な場合もあります。

ehcache.object.portいいえ

レジストリでバインドされているリモート オブジェクトが呼び出しを受信するポート (既定は 40011)。このポートはファイアウォールでも開放する必要があります。

複数のノードが同じホスト上にあるか、このポートが利用できない場合、手動でこれを設定することが必要な場合もあります。

ehcache.listener.socketTimeoutMillisいいえ既定では、これは Ehcache の既定に設定されます。

最終更新日: 2020 年 2 月 26 日

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

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