Confluence Data Center への移行

ここでは、既存の Confluence Server (非クラスタ) サイトから Confluence Data Center (クラスタ化) への移行プロセスを説明します。

初めて Confluence をインストールする場合 (移行する既存の Confluence データがない場合) は、「Confluence Data Center のインストール」を参照してください。

非クラスタ化ソリューションに戻したい場合は、「Data Center から Sever への移行」を参照してください。

Confluence ライセンスにより、Confluence のタイプ (Server または Data Center) が決定します。Confluence 管理の 'ライセンス詳細' ページでライセンスキーを入力すると、Confluence がライセンスタイプを自動検出します。

Confluence Server から Data Center へのアップグレードでお悩みですか? Confluence Data Center のメリットについて詳細を参照してください。

On this page:

はじめる前に

クラスタリングの要件

Confluence をクラスタで実行するには以下が必須条件になります:

  • Data Center ライセンスを所有している (Data Center ライセンスを購入するか、my.atlassian.com で評価ライセンスを作成することが可能)。
  • サポート対象となっているバージョンの外部データベース、OS、Javaを使用する。
  • クラスタの前にセッションアフィニティと WebSockets サポートを使用したロードバランサを使用する
  • 同じパスですべてのクラスタノードにアクセス可能な共有ディレクトリ(共有ホームディレクトリになります)が存在する
  • 他のアトラシアン製品 (JIRA 等) へのアプリケーション リンクがある場合、OAuth 認証を使用する。

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

使用可能なデータベース、Java、およびオペレーティング システムの詳細については、「サポートされるプラットフォーム」を参照してください。Server と Datab Center デプロイメントの要件は同じです。重要なハードウェアおよびインフラストラクチャの考慮事項については、「Confluence Data Center の技術的概要」を参照してください。

また、AWSAzure で Confluence Data Center を実行するのに役立つ、具体的なガイドとテンプレート ガイドも用意しています。それらをチェックして何が必要かをご確認ください。

用語

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

  • インストール ディレクトリ - 単体ノードに Confluence をインストールしたディレクトリ。
  • ローカルのホームディレクトリ - 各ノードのホームディレクトリまたはデータディレクトリ(クラスタ化されていないディレクトリ。 Confluence では、単にホームディレクトリと呼ばれます) 。
  • 共有ホームディレクトリ - 作成したディレクトリで、クラスタの同一パスを経由してすべてのノードにアクセス可能なディレクトリ。 
  • Synchrony ディレクトリ - Synchrony をダウンロードしたディレクトリ (confluence ノードや独自のノード上にあります)

インストールが終了すると、各ノードにインストールディレクトリ、ローカルのホームディレクトリ、および Confluence に共有ホームディレクトリが 1 つと Synchrony のディレクトリが存在することになります (2 つのノードクラスタに合計で5 個のディレクトリ)。 

Data Center のセットアップ

1. Confluence サーバーのアップグレード 

Data Center への移行の一環として Confluence をアップグレードする予定がある場合は、最初の手順として Confluence Server サイトをアップグレードする必要があります。  

2. Data Center ライセンスの適用 

  1. Go to  > General Configuration > License Details
  2. 新しい Confluence Data Center のライセンス キーを入力します。
  3. 移行を開始するには Confluence を停止するよう求められます。

 

この段階では、ホーム ディレクトリ (confluence\WEB-INF\classes\confluence-init.properties で設定) は、既存のローカルのホーム ディレクトリを示した状態のままにしておきます。

3. 共有ホームディレクトリの作成 

  1. 同一パスを経由してすべてのクラスタ ノードにアクセス可能なディレクトリを作成します。ディレクトリは空にする必要があります。これが共有ホーム ディレクトリになります。 
  2. In your existing Confluence home directory, move the contents of <confluence home>/shared-home to the new shared home directory you just created.

    To prevent confusion, we recommend deleting the empty <confluence home>/shared-home directory once you've moved its contents.
  3. 添付ファイルディレクトリを新しい共有ホームディレクトリに移行します(現在添付ファイルをデータベースに保存している場合はこの手順をスキップしてください)。 

4. Confluence の起動

以下の項目を入力して移行を完了するようにセットアップウィザードからプロンプトが出されます。

  • クラスタ名
  • 作成済みの共有ホームディレクトリへのパス
  • 他のノードとの通信用に Confluence が使用するネットワーク インターフェイス
  • マルチキャストアドレス (自動生成または手動入力) または各クラスターノードの IP アドレス
  • Confluence によるクラスター ノードの検出方法:

    • マルチキャスト - マルチキャスト アドレスを入力または自動生成します。
    • TCP/IP - 各クラスタ ノードの IP アドレスを入力します。
    • AWS - 自分の IAM ロールまたは秘密キーと領域を入力します。
       

      AWS ノード検出...

      古いクイック スタートまたは Cloud Formation テンプレートを使用して Confluence Data Center を AWS にデプロイすることをお勧めします。これは自動的に必要なすべてをプロビジョニング、設定、および接続してくれます。

      独自のカスタム デプロイメントを行う場合は、以下の情報を提供して、Confluence にクラスタ ノードを自動検出させることができます。

      フィールド説明
      IAM ロールまたはシークレット キーこれは認証方式です。IAM ロールによる認証かシークレット キーによる認証かを選択することができます。
      リージョンこれはクラスタ ノード(EC2 インスタンス)を実行するリージョンです。
      ホスト ヘッダーオプション。Confluence が使用する AWS エンドポイントです (「ec2.amazonaws.com」など、EC2 API が検出可能なアドレス)。デフォルトのエンドポイントを使用する場合は、空白のままにしておきます。
      セキュリティ グループ名オプション。クラスタのメンバーを特定のセキュリティ グループ(EC2 コンソールで指定)のリソースのみに絞り込むために使用します。
      タグ キータグ値

      オプション。クラスタのメンバーを特定のタグ(EC2 コンソールで指定)のリソースのみに絞り込むために使用します。

Confluence が実行中であることを確認したら、Synchrony をセットアップできるよう Confluence を停止します (引き続き共同編集を使用する場合には必要)。  

Synchrony のセットアップ

5. Synchrony クラスタのセットアップ

Collaborative editing requires Synchrony, which runs as a separate process. You can deploy Synchrony on the same nodes as Confluence, or in its own cluster with as many nodes as you need. 

この例では、独自のクラスタで Synchrony を実行していると仮定します。クラスタ ノードを設定する場合、各 Synchrony クラスタ ノードの IP アドレスまたはマルチキャスト アドレスを提供することができます。

  1. Create a Synchrony directory on your first node and copy synchrony-standalone.jar from your Confluence <home-directory> to this directory. 
  2. Copy your database driver from your Confluence <install-directory>/confluence/web-inf/lib to an appropriate location on your Synchrony node.
  3. 次のコマンドを使用して Synchrony ディレクトリに変更し、Synchrony を起動します。
    リストされているすべてのシステム プロパティをすべて私、表示されている値を置き換える必要があります。

    Synchrony コマンドを起動する...

    In a terminal / command prompt, execute the following command, replacing <values> with appropriate values for your environment. Scroll down for more information on each of the values you will need to replace.

     

    java 
    -Xss2048k 
    -Xmx2g
     
    # To set the classpath in Linux  
    -classpath <PATH_TO_SYNCHRONY_STANDALONE_JAR>:<JDBC_DRIVER_PATH> 
     
    # To set the classpath in Windows 
    -classpath <PATH_TO_SYNCHRONY_STANDALONE_JAR>;<JDBC_DRIVER_PATH> 
     
    # Remove this section if you don't want to discover nodes using TCP/IP
    -Dcluster.join.type=tcpip 
    -Dcluster.join.tcpip.members=<TCPIP_MEMBERS> 
     
    # Remove this section if you don't want to discover nodes using multicast
    -Dcluster.join.type=multicast
     
    # Remove this section if you don't need to discover nodes in AWS
    -Dsynchrony.cluster.impl=hazelcast-micros
    -Dcluster.join.type=aws
     
    -Dsynchrony.bind=<SERVER_IP> 
    -Dsynchrony.service.url=<SYNCHRONY_URL> 
    -Dsynchrony.database.url=<YOUR_DATABASE_URL> 
    -Dsynchrony.database.username=<DB_USERNAME> 
    -Dsynchrony.database.password=<DB_PASSWORD>  
     
    synchrony.core 
    sql

    (warning) Remember to remove all commented lines completley before you execute this command, and replace all new lines with white space. You may also need to change the name of the synchrony-standalone.jar if the file you copied is different to our example.

    上記のコマンドで提供する必要のある各値に関するその他の情報。

    必須かどうか説明
    <PATH_TO_SYNCHRONY_STANDALONE_JAR>
    はいThis is the path to the synchrony_standalone.jar that you copied in step 1. For example <synchrony-directory>/synchrony_standalone.jar
    <JDBC_DRIVER_PATH>
    はいThis is the path to your database driver. For example <synchrony-directory>/postgresql-9.2-1002.jdbc.jar.
    <TCPIP_ MEMBERS>Yes, if TCP/IPTCP/IP を使用してノードを検出するようせんたくした場合、各クラスターノードの IP アドレスのコンマ区切りリストを提供します。
    <SERVER_IP>
    はいThis is the public IP address or hostname of this Synchrony node. It could also be a private IP address - it should be configured to the address where Synchrony is reachable by the other nodes.
    <SYNCHRONY_URL>はいThis is the URL that the browser uses to contact Synchrony. Generally this will be the full URL of the load balancer Synchrony will run behind plus the Synchrony context path, for example http://yoursite.com:8091/synchrony. Note that it does not end with /v1, unlike the synchrony.service.url system property passed to Confluence. If this URL doesn't match the URL coming from a users' browser, Synchrony will fail.
    <YOUR_DATABASE_URL>
    はいThis is the URL for your Confluence database. For example jdbc:postgresql://localhost:5432/confluence. You can find this URL in <local-home>/confluence.cfg.xml.
    <DB_USERNAME>
    <DB_PASSWORD>
    はいThe username and password for your Confluence database user. Sensitive information (like these database credentials) may be provided using environmental variables, rather than via the command line. Any dots (".") in variable names (identifiers) will need to be replaced with underscores ("_"). 

    When you start Synchrony we also pass default values for a number of additional properties. You can choose to override these values by specifying these optional properties when you start Synchrony. See Configuring Synchrony for Data Center for more information.

    (warning) You can use this info to create your own script to run Synchrony, or follow the steps in this guided example to create a service script - Run Synchrony-standalone as a service on Linux.

     

  4. To check that Synchrony is accessible, you can go to:
    http://<SERVER_IP>:<SYNCHRONY_PORT>/synchrony/heartbeat
  5. このプロセスを繰り返して、Synchrony クラスタの各ノードで Synchrony を起動します。
    各ノードが結合すると、表示はこのコンソール内のようになります。

    Members [2] {
    	Member [172.22.52.12]:5701
    	Member [172.22.49.34]:5701 
    }
    
  6. Synchrony 用にロードバランサを設定します。
    ロードバランサは WebSockets (例: NGINX 1.3 以降、Apache httpd 2.4、IIS 8.0 以降) およびセッション アフィニティをサポートする必要があります。Synchrony が Web ブラウザからの XHR リクエストを承認できるよう、ロードバランサで SSL接続を終了させる必要があります。 

6. ノード 1 で Confluence を開始する

この例では、「Data Center 用の Synchrony の設定」に示すように、Synchrony と Confluence に同じロード バランサを使用していると想定しています。

  1. ノード 1 で Confluence を起動し、次のシステム プロパティを Confluence に渡して Synchrony クラスタの場所を Confluence に伝えます。

    -Dsynchrony.service.url=http://<synchrony load balancer url>/synchrony/v1

    たとえば、http://yoursite.example.com/synchrony/v1 のように、URL の末尾に /v1 を含める必要があります。

    Synchrony がロード バランサを使用しない単体のノードとして設定されている場合、代わりに以下を使用します。

    -Dsynchrony.service.url=http://<synchrony ip or hostname>:<synchrony port>/synchrony/v1

    たとえば、http://42.42.42.42:8091/synchrony/v1 または http://synchrony.example.com:8091/synchrony/v1 のようになります。

    このシステム プロパティを <install-directory>/bin/setenv.sh または setenv.bat に追加すると、Confluence を起動するたびに自動的に渡されます。ご利用の環境でこれを実施する方法の詳細については、「システム プロパティの設定」を参照してください。

  2. Head to  > General Configuration > Collaborative editing to check that this Confluence node can connect to Synchrony. 

    Note: to test creating content you'll need to access Confluence via your load balancer.  You can't create or edit pages when accessing a node directly.

Confluence ノードを追加する

7.ノード 2 に Confluence をコピー

2 つ目のノードに Confluence をコピーするには:

  1. ノード 1 で Confluence をシャットダウンする。
  2. ノード2 でアプリケーション サーバーをシャットダウン、または自動的にウェブアプリケーションのロードを停止する。
  3. ノード 1 からノード 2 へインストール ディレクトリをコピーする。
  4. ノード 1 からノード 2 にローカルのホーム ディレクトリをコピーします。
    ノード 1 と 2 でローカル ホーム ディレクトリのファイル パスが異なる場合、<installation directory>/confluence/WEB-INF/classes/confluence-init.properties ファイルをノード 2 で更新し、正しい場所を示すようにする必要があります。

ローカルのホームディレクトリをコピーすることで、確実に Confluence 検索インデックス、データベース、クラスタ設定、その他の設定をノード 2 にコピーします。

8. ロードバランサの設定

Confluence 用にロードバランサを設定します。ロードバランサはお好みで選択できますが、セッションアフィニティと WebSocketsのサポートが必要となります。

Synchrony が Web ブラウザからの XHR リクエストを承認できるよう、ロードバランサで SSL接続を終了させる必要があります。

ご利用のロードバランサを以下の点で検証します:リクエストを送信する際、Confluence にアクセスしてロードバランサを通過し、既存の Confluence サーバーに正しく送信してページを作成し、このページがロードバランサを使用した他のマシンから閲覧・編集が可能である。

9.一度に Confluence の 1 つのノードを起動する

一度に1つの Confluence ノードのみ起動する必要があります。最初のノードを立ち上げ、利用可能になってから、次のノードを起動してください。

  1. ノード 1 で Confluence を開始する。
  2. Confluence がノード 1 で使用可能になるまで待つ。
  3. ノード 2 で Confluence を開始する。
  4. Confluence がノード 2 で使用可能になるまで待つ。

The Cluster monitoring console ( > General Configuration > Clustering) shows information about the active cluster.

クラスタが適切に実行されていると、このページにシステムの使用状況やアップタイムなどを含む各ノードの詳細情報が表示されます。クラスタの各ノードの詳細情報については、 メニューから参照してください。

10. Confluence クラスタのテスト

コンテンツをテストするには、ロードバランサ経由で Confluence にアクセスする必要があります。ノードに直接アクセスする場合、ページを作成または編集することはできません。

クラスタが正しく作動しているか確認する簡単な方法は:

  1. ロードバランサ経由でノードにアクセスし、このノードで新しいドキュメントを作成します。
  2. 異なるノードに直接アクセスして新しいドキュメントが見えているかを確認します。
  3. 元のノードで新しいドキュメントを検索し、表示されるか確認します。
  4. 別のノードで新しいドキュメントを検索し、表示されるか確認します。

作動していないクラスタの 2 つ以上のインスタンスがデータベースにアクセスしていることを Confluence が 検知すると、クラスタ パニックを起こし、Confluence はシャットダウンします。クラスタネットワーク接続性のトラブルシューティングから解決してください。


セキュリティ

ファイアウォールやネットワーク分離の使用により、許可されたクラスタ ノードのみが次のポートに接続できるようにします。

  • 5801 - Confluence 用の Hazelcast ポート
  • 5701 - Synchrony 用の Hazelcast ポート
  • 25500 - Synchrony 用のクラスタ ベース ポート
  • 54327- Multicast port for Synchrony 

トラブルシューティング

上記の手順で問題が発生した場合は、クラスタ トラブルシューティング ガイドを参照してください。

クラスタを一つのマシンで作動させて Confluence データセンターのテストを行う場合は、 単体マシンで Confluence クラスタ を開始に記載された開発者向け説明書を参照してください。

最終更新日 2019 年 5 月 31 日

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

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