Data Center 用の Synchrony の設定

このページの内容

お困りですか?

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

コミュニティに質問

Confluence Server をインストールすると、Synchrony はサーバー上で別のプロセスとして動作するよう自動的に設定されます。

Data Center の場合、Synchrony を自分で設定することを許可することで、完全な制御を取得します。これによって、同じノード上に Confluence として Synchrony スタンドアロンを配置したり、必要な数のノードと共に独自のクラスター内に配置することができます。 

On this page:

3 ノード Confluence クラスターをサポートするため、2 ノード Synchrony クラスターを搭載したアーキテクチャの例を次に示します。


Data Center で Synchrony をセットアップするには、次のことが必要となります。

  1. 次のファイルとディレクトリを、Synchrony を実行するよう計画している Confluence ノードのいずれかにコピーします。
    • <install-directory>/bin/synchrony 
    • <local-home>/synchrony-standalone.jar
    • your database driver from <install-directory>/confluence/WEB-INF/lib 
  2. Edit the start-synchrony.sh or start-synchrony.bat file and follow the instructions in the script itself to insert the required parameters listed below. 

    (warning) Make sure the -Dsynchrony.database.password property is not commented out. 

    手順について

    For Linux, remove the '#' before this line to uncomment it:

    SYNCHRONY_OPTS="${SYNCHRONY_OPTS} -Dsynchrony.database.password=${DATABASE_PASSWORD}" 

    For Windows, remove the 'rem' before this line to uncomment it:

    set SYNCHRONY_OPTS=%SYNCHRONY_OPTS% -Dsynchrony.database.password=%DATABASE_PASSWORD%

    This issue has been fixed in later Confluence versions.

  3. オプションを上書き セクションにシステム プロパティを追加します。 

See Installing Confluence Data Center for a step by step guide to setting up Synchrony for Data Center. 

必須 Synchrony プロパティ (Data Center のみ)

Before you can run Synchrony, you need to edit the start-synchrony script to provide the following values. 

プロパティ名説明
SERVER_IPこの Synchrony ノードの公開 IP アドレスまたはホスト名。プライベート IP アドレスの場合もあります。その他のノードによって、Synchrony が到達可能なアドレスに設定する必要があります。
DATABASE_URLThis is the URL for your Confluence database. For example jdbc:postgresql://yourserver:5432/confluence . You can find this URL in <local-home>/confluence.cfg.xml .
DATABASE_USERConfluence データベース ユーザーのユーザー名。
DATABASE_PASSWORD

(Optional) This is the password for your Confluence database user. If your password contains special characters, Synchrony may silently fail to connect to the database.

Rather than hardcoding your password, we recommend setting your password with the environment variable SYNCHRONY_DATABASE_PASSWORD. Any dots (".") in variable names (identifiers) will need to be replaced with underscores ("_"). See

CLUSTER_JOIN_PROPERTIES

これにより、SYnchrony のデータ検出方法が決定します。次のいずれかのパラメーター セットのコメントを外すよう求められます。

  • TCP/IP
  • マルチキャスト
  • AWS

これらに入力する値については、スクリプトのプロンプトに従ってください。

DATABASE_DRIVER_PATHSynchrony jar ファイルへのパスです。専用ノードで Synchrony を実行している場合、データベースドライバーを適切なロケーションにコピーした後、このロケーションへのパスを指定します。
SYNCHRONY_JAR_PATHこのノードにコピーした synchrony-standalone.jar ファイルへのパスです。
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.

OPTIONAL_OVERRIDES追加システム プロパティを指定できます。認識済みのシステム プロパティについては、以下の表を参照してください。


オプションの Synchrony システム プロパティ (Data Center のみ)

Synchrony を起動すると、以下に示すプロパティに既定値が渡されます。Synchrony を起動する際、これらのプロパティのいずれかを指定することで、これらの値を上書きすることを選択できます。 

プロパティ名既定説明
cluster.listen.port5701

Synchrony の Hazelcast ポートです。ポート 5701 を使用しない/使用できない場合は、このプロパティを指定します。

Confluence の Hazelcast ポート (5801) と同様に、ファイアウォールまたはネットワークの分離の使用を通じて、承認を受けたクラスタ ノードのみが Synchrony の Hazelcast ポートへの接続を許可されていることを確認してください。

synchrony.cluster.base.port
25500Aleph バインディング ポートです。Synchrony は Aleph を使用して、ノード間で通信します。既定を使用しない場合は、このプロパティを指定します。
cluster.join.multicast.group224.2.2.3

クラスタ結合タイプがマルチキャストで、既定を使用しない場合はマルチキャスト グループの IP アドレスを指定できます。

cluster.join.multicast.port54327クラスタ結合タイプがマルチキャストで、既定を使用しない場合はマルチキャスト ポートを指定できます。
cluster.join.multicast.ttl
32クラスタのジョイン タイプがマルチキャストの場合、これは TTL しきい値です。既定の 32 は、同じサイト、組織、または部門に範囲が制限されていることを意味します。別のしきい値を使用する場合はこのプロパティを指定します。

cluster.join.aws.access.key


クラスタのジョイン タイプが AWS の場合、これが AWS アクセス キーです。

cluster.join.aws.secret.key


クラスタのジョイン タイプが AWS の場合、IAM ロールまたはシークレット キーで認証できます。これが AWS シークレット キーです。

cluster.join.aws.iam


クラスタのジョイン タイプが AWS の場合、IAM ロールまたはシークレット キーで認証できます。これが AWS IAM ロールです。

cluster.join.aws.region

us-east-1クラスタのジョイン タイプが AWS の場合、これが Synchrony ノードを実行する AWS リージョンです。

cluster.join.aws.security.group


クラスタのジョイン タイプが AWS で、クラスタのメンバーを特定のセキュリティ グループのリソースに絞り込みたい場合、AWS セキュリティ グループの名前を指定します。

cluster.join.aws.tag.key


クラスタのジョイン タイプが AWS で、クラスタのメンバーを特定のタグが付いたリソースに絞り込みたい場合、AWS タグ キーを指定します。

cluster.join.aws.tag.value


クラスタのジョイン タイプが AWS で、クラスタのメンバーを特定のタグが付いたリソースに絞り込みたい場合、AWS タグ 値を指定します。

cluster.join.aws.host.header


クラスタのジョイン タイプが AWS の場合、これが使用する Synchrony 用 AWS エンドポイントです (EC2 API に到達するためのアドレス。例: "ec2.amazonaws.com")。

cluster.join.aws.timeout

5クラスタのジョイン タイプが AWS の場合、これがジョイン タイムアウト (秒単位) です。
cluster.interfacesDefaults to the same value as SERVER_IP This is the network interface Synchrony will use to communicate between nodes. Specify this property if you don't want to use the default, which uses the value of the required property Defaults to the same value as SERVER_IP (also known as synchrony.bind).
synchrony.cluster.bind既定値は SERVER_IP と同じ値

Aleph のバインディング アドレス。cluster.interfaces と同じ値に設定する必要があります。

cluster.interfaces の既定値を使用しなかった場合はこのプロパティを指定します。

synchrony.port8091Synchrony を実行する HTTP ポートです。ポート 8091 を利用できない場合は、別のポートを選択するようこのプロパティを指定します。
synchrony.context.path既定値は SYNCHRONY_URL のコンテキスト パスSynchrony のコンテキスト パスです。これを変更する必要はありません。




Synchrony の起動と停止

To start Synchrony, run start-synchrony.sh or start-synchrony.bat.  A process ID (PID) file will be created in your synchrony directory. 

To stop Synchrony, run stop-synchrony.sh or stop-synchrony.bat.  This will destroy the PID file that the start script created in your Synchrony directory.  If you've customised the location for storing the PID file in the start-synchrony script, you'll need to also update this in the stop-synchrony script. 

Synchrony を起動できない場合は、Synchrony ディレクトリには既存の PID ファイルがないか確認してください。 

これらのスクリプトは、Confluence Data Center で Synchrony を起動/終了するためにのみ使用できます。

To restart Synchrony in Confluence server head to  > General Configuration > Collaborative editing.


Synchrony ログにアクセスする 

Synchrony ログは、各ノード (スクリプトを開始および停止できる場所) の Synchrony ディレクトリに保存されます。 

注意

If your users are unlikely to be able to get a WebSocket connection to Synchrony (for example your load balancer or reverse proxy does not support WebSockets) you can enable XHR fallback by passing the synchrony.enable.xhr.fallback system property to Confluence. Note that this is a Confluence system property and must be passed to Confluence, it is not part of your start Synchrony command. 

You will need to open Synchrony's port, as you can't use the built-in Synchrony proxy with Data Center. The synchrony.proxy.enabled system property mentioned in the Confluence Server documentation has no effect in Data Center. 

Synchrony をサービスとして実行する

Synchrony をサービスとして実行したくない場合は、Linux でサービスとして Synchrony スタンドアロンを実行する を参照してください。 

現在、Windows でサービスとして Synchrony を実行することはできません。 

環境変数を使用して Synchrony に資格情報を提供する (Linux)

If you prefer to store sensitive information in your environment, rather than directly in the Synchrony startup scripts you can create a synchronyenv file, and use it to provide your database credentials. 

These instructions are for Linux users. We'll assume your dedicated Synchrony user is named synchrony.

synchronyenv ファイルを作成する

  • Synchrony ユーザーに変更します。例:

    sudo su - synchrony
  • In your <synchrony-home> directory, create a new file called synchronyenv
  • Add the following lines to the synchronyenv file, and include your database credentials.

    export SYNCHRONY_DATABASE_USERNAME="database-username"
    export SYNCHRONY_DATABASE_PASSWORD="database-password"

Synchrony 起動スクリプトを変更する

  1. Edit your start-synchrony.sh  script. 

  2. 次の行をコメント アウトします。

    DATABASE_USER="<DB_USERNAME>"
    DATABASE_PASSWORD="<DB_PASSWORD>"

    既にコメントアウトされているか、異なる情報を持つ可能性があります。 

  3. Uncomment the following line, and include the path to the synchronyenv file you've just created.

    SYNCHRONY_ENV_FILE=<PATH_TO_ENV_FILE>
  4. 変更を保存します。 

シェル プロファイルを変更する

bash のログイン シェルは、次のプロファイルを順に読み込みます。お使いの環境によって異なる場合がありますが、これは Ubuntu の例です。

  • /etc/profile
  • ~/.bash_profile
  • ~/.bash_login
  • ~/.profile

注: bash の非ログイン インタラクティブ シェルは load ~/.bashrc を読み込みます。

  1. 上記のように、適切なプロファイルを編集し、次のコードを追加します。

    # Defines the absolute path to the synchronyenv file. 
    # For example, if your synchronyenv file was located in
    /opt/synchrony-home/synchrony, you would use the example:
    source /opt/synchrony-home/synchrony/synchronyenv
  2. Synchrony ユーザーの bash セッションを終了してから再開し、次のコマンドを実行することで、変数が保存されていることを確認します。

    env
  3. 定義したデータベース資格情報が env 出力に表示されます。次のようになります (一部の情報を非表示にしています)。

    XDG_SESSION_ID=15
    SYNCHRONY_DATABASE_PASSWORD=<sanitized>
    ...
    SYNCHRONY_DATABASE_USERNAME=<sanitized>
    ...
    _=/usr/bin/env

If the info you defined in your synchronyenv file appears correctly in the output above, you should be good to start Synchrony once again. If they don't appear, you may need to define them in a different profile config, based on your operating system and shell.

最終更新日 2019 年 5 月 31 日

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

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