Confluence Data Center への移行

お困りですか?

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

コミュニティに質問

 

以下では、Confluence サーバーから Confluence Data Center への移行 (クラスタ化ソリューション) プロセスを説明します。

Confluence Data Center から Confluence サーバーへの移行についても記載しています。

Confluence ライセンスは、Confluence のタイプ (サーバーまたは Data Center) を決定します。 Confluence 管理の 'ライセンス詳細' ページでライセンスキーを入力すると、Confluence がライセンスタイプを自動検出します。別のタイプのライセンスを入力した場合、移行 (Confluence サーバーから Data Center への移行など) を開始するように自動的にプロンプトが出されます。

 

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

サーバーからデータセンターへの移行

クラスタ化の要件および専門用語

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

On this page:

  • Have a Data Center license (you can purchase a Data Center license or create an evaluation license at my.atlassian.com)
  • 外部データベースを使用する
  • クラスタの前にセッションアフィニティを使用したロードバランサを使用する
  • 同じパスですべてのクラスタノードにアクセス可能な共有ディレクトリ (これが共有ホームディレクトリになります) が存在する
  • 他のアトラシアン製品 (JIRA アプリケーションなど) へのアプリケーション リンクがある場合、OAuth 認証を使用する。 

Confluence Data Center の評価版ライセンスが必要な場合は、弊社までご連絡ください。  

このガイドでは以下の用語について説明します:
  • インストールディレクトリ – Confluence がインストールされるディレクトリ。
  • ローカルのホームディレクトリ– 各ノードのホームディレクトリまたはデータディレクトリ (非クラスタ化 Confluence では、単にホームディレクトリと呼ばれます)。
  • 共有ホームディレクトリ – 同一パスを経由してクラスタ内のすべてのノードにアクセス可能な、ユーザーが作成したディレクトリ。

インストールプロセスが終了したとき、各ノードにインストールディレクトリとローカルのホームディレクトリが存在し、他に共有ホームディレクトリが1つ存在することになります (たとえば、2つのノードクラスタでは、合計で 5 個のディレクトリが存在します)。 

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

Confluence Data Center 5.9 以降に切り替える場合、まず、Confluence のバックアップとアップグレードの通常の手順に従ってください。アップグレードと最適なアップグレードパスの選択に関する詳細は、「Confluence のアップグレード」を参照してください。

Confluence Data Center 5.8 に切り替える場合は、アップグレードプロセスが少し異なります。詳細は、以前のドキュメントを参照してください。 

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

Your home directory (configured in confluence\WEB-INF\classes\confluence-init.properties) should still be pointing to your existing (local) home directory.

  1. Go to  > General administration.
  2. 管理という見出しの下のサイドバーからライセンス詳細を選択します。
  3. Confluence Data Center のライセンスキーを入力します。
  4. Confluence をシャットダウンします。

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 の起動

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

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

1 つ目のノードがアップロードされ、実行されます。  

2. Synchrony のセットアップ

共同編集では、別のプロセスとして実行される Synchrony が必要です。同じノード上に Confluence として Synchrony を配置したり、必要な数のノードと共に独自のクラスター内に配置することができます。この手順を開始する前に、手順 1 (Data Center の入力を含む) を完了する必要があります。

この例では、独自のクラスタで 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 based operating systems
    -classpath <PATH_TO_SYNCHRONY_STANDALONE_JAR>:<JDBC_DRIVER_PATH> 
     
    # To set the classpath in Windows operating systems
    -classpath <PATH_TO_SYNCHRONY_STANDALONE_JAR>;<JDBC_DRIVER_PATH> 
     
    -Dsynchrony.cluster.impl=hazelcast-btf 
    -Dsynchrony.port=<SYNCHRONY_PORT> 
    -Dcluster.listen.port=<CLUSTER_LISTEN_PORT>
    -Dsynchrony.cluster.base.port=<CLUSTER_BASE_PORT>
     
    # 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
    -Dcluster.join.multicast.group=<MULTICAST_GROUP> 
    -Dcluster.join.multicast.port=54327 
    -Dcluster.join.multicast.ttl=32 
     
    -Dsynchrony.context.path=/synchrony 
    -Dsynchrony.cluster.bind=<SERVER_IP> 
    -Dsynchrony.bind=<SERVER_IP> 
    -Dcluster.interfaces=<SERVER_IP>
    -Dsynchrony.service.url=<SYNCHRONY_URL> 
    -Djwt.private.key=<JWT_PRIVATE_KEY> 
    -Djwt.public.key=<JWT_PUBLIC_KEY>
    -Dsynchrony.database.url=<YOUR_DATABASE_URL> 
    -Dsynchrony.database.username=<DB_USERNAME> 
    -Dsynchrony.database.password=<DB_PASSWORD>  
    
    # The following properties must be passed, but their values do not matter
    -Dip.whitelist=127.0.0.1,localhost
    -Dauth.tokens=dummy 
    -Dopenid.return.uri=http://example.com 
    -Ddynamo.events.table.name=5 
    -Ddynamo.snapshots.table.name=5
    -Ddynamo.secrets.table.name=5 
    -Ddynamo.limits.table.name=5 
    -Ddynamo.events.app.read.provisioned.default=5 
    -Ddynamo.events.app.write.provisioned.default=5 
    -Ddynamo.snapshots.app.read.provisioned.default=5 
    -Ddynamo.snapshots.app.write.provisioned.default=5 
    -Ddynamo.max.item.size=5 
    -Ds3.synchrony.bucket.name=5 
    -Ds3.synchrony.bucket.path=5 
    -Ds3.synchrony.eviction.bucket.name=5 
    -Ds3.synchrony.eviction.bucket.path=5 
    -Ds3.app.write.provisioned.default=100
    -Ds3.app.read.provisioned.default=100
    -Dstatsd.host=localhost 
    -Dstatsd.port=8125 
    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.

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

    説明
    <SYNCHRONY_PORT>
    Synchrony を実行する HTTP ポートです。 利用可能な場合は、ポート 8091 を提案します。
    <CLUSTER_LISTEN_PORT>
    Synchrony の Hazelcast ポートです。利用可能な場合は、ポート 5701 の使用を提案します。Confluence の Hazelcast ポート (5801) と同様に、ファイアウォールまたはネットワークの分離の使用を通じて、承認を受けたクラスタ ノードのみがこのポートへの接続を許可されていることを確認してください。
    <CLUSTER_BASE_PORT>
    これは Aleph バインディング ポートです。Synchrony は Aleph を使用して、ノード間で通信します、利用可能であれば、ポート 25500 をお勧めします。
    <TCPIP_ MEMBERS>TCP/IP を使用してノードを検出するようせんたくした場合、各クラスターノードの IP アドレスのコンマ区切りリストを提供します。
    <MULTICAST_GROUP>マルチキャストを使用してノードを検出する場合は、マルチキャスト グループの IP アドレスを指定します。
    <SERVER_IP>
    この Synchrony ノードの公開 IP アドレスまたはホスト名。プライベート IP アドレスの場合もあります。その他のノードによって、Synchrony が到達可能なアドレスに設定する必要があります。
    <SYNCHRONY_URL>This is the URL that the browser uses to contact Synchrony. Generally this will be the URL for your load balancer plus the Synchrony context path, for example http://yoursite.com/synchrony
    <JWT_PRIVATE_KEY>
    <JWT_PUBLIC_KEY>
    These keys are generated by Confluence. Copy each key from the <local-home>/confluence.cfg.xml file on your first Confluence node. The keys must be the same on all Confluence and Synchrony nodes.
    <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>
     Confluence データベース ユーザーのユーザー名とパスワード。
    <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.
    <YOUR_LOAD_BALANCER>
    This is the full URL of the load balancer Synchrony will run behind, for example, http://<lb_host>:<lb_port><lb_context_path>. For example, if your loadbalancer path is synchrony, then it will be http://hostname:80/synchrony. Notice 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.

    機密性の高い情報(データベースの認証情報など)は、コマンドライン経由ではなく、環境変数を使用して指定することができます。変数名(識別子)のドット(「.」)は、アンダースコア(「_」)で置き換える必要があります。 

    いくつかの他のプロパティは、環境に合わせて変更することができます。詳細は、「Data Center 用の Synchrony の設定」を参照してください。

  4. To check that Synchrony is accessible, 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接続を終了させる必要があります。 

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

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

    -Dsynchrony.service.url=http://<YOUR_LOAD_BALANCER>:<LOAD_BALANCER_PORT>/synchrony/v1

    このシステム プロパティを <install-directory>/bin/setenv.bin または 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.

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

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

  1. ノード 1 で Confluence をシャットダウンする。
  2. ノード2 でアプリケーション サーバーをシャットダウン、または自動的にウェブアプリケーションのロードを停止する。
  3. ノード 1 からノード 2 へインストール ディレクトリをコピーする。
  4. Copy the local home directory from node 1 to node 2
    If the file path of the local home directory is not the same on nodes 1 and 2 you'll need to update the <installation directory>/confluence/WEB-INF/classes/confluence-init.properties file on node 2 to point to the correct location.

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

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

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

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

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

6. ノード 1 で Confluence を開始、待つ、ノード 2 で Confluence を開始

一度に1つの Confluence サーバーのみ起動する必要があります。

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

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

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

スクリーンショット:クラスタ監視コンソール

7. Confluence クラスタのテスト

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

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

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

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

セキュリティ

権限のあるクラスターノードのみが、ファイアウォールおよびネットワークの分離を利用して Confluence Data Center インスタンスの Hazelcast ポート (デフォルトではポート 5801) または Synchrony の Hazelcast (デフォルトではポート 5701) への接続を許可されるようにします。

トラブルシューティング

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

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

データセンターからサーバーへの移行

Data Center (クラスタ化) からサーバー (非クラスタ化) へ移行する必要がある場合は、以下をお読みください。ここでは、既存のクラスタノードのひとつを新しい非クラスタ化のインストールに使用するものと仮定して説明します。 

サーバーに切り替えるには、 Confluence サーバーライセンスが必要になります。

このプロセスを完了する前に

万一に備えて、1つのノードを除いてすべてのノードをシャットダウンし、単一ノード上で Confluence を実行することをお勧めします。

 

1. Confluence サーバーライセンスの入力

ホーム ディレクトリ (confluence\WEB-INF\classes\confluence-init.properties で設定済み) は、ローカルのホーム ディレクトリに設定されていると想定しています。

  1. Go to  > General administration
  2. 管理という見出し の下のサイドバーからライセンス詳細を選択します。
  3. Confluence サーバーのライセンスキーを入力します。

2. Confluence のシャットダウン

続行する前に、実行中のクラスタノードがあれば停止します。Confluence からトラフィックをリダイレクトするようにロードバランサーを設定しておくことをお勧めします。

3. ホームで共有されているクラスタのの項目をローカルのホームに戻す

  1. 1 つのノードで、<local home> ディレクトリに /shared-home という名のディレクトリを作成します (Data Center のインストール時にこのディレクトリを削除した場合)。
  2. config ディレクトリ全体を <shared home> ディレクトリから local home>/shared-home ディレクトリに移動します。
  3. <shared home> ディレクトリの残りのコンテンツを <local home> ディレクトリの root に移動します。

この時点で、クラスタの共有ホームディレクトリが空になっているはずです。 

4. Confluence の起動

セットアップウィザードに従って移行プロセスを実行します。

tip/resting Created with Sketch.

To confirm you're now running the non-clustered edition, go to  > General Configuration. The 'Cluster Configuration' page should not appear. Instead you'll see information about Confluence Data Center.

最終更新日 2016 年 9 月 29 日

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

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