Data Center 用の Synchrony の設定

このページの内容

お困りですか?

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

コミュニティに質問

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

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

このページの内容:

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. 
  3. オプションを上書き セクションにシステム プロパティを追加します。 

Data Center 用に Synchrony を設定する手順の詳細は、「Confluence 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_URL This 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_USER Confluence データベース ユーザーのユーザー名。
DATABASE_PASSWORD

(オプション) Confluence データベース ユーザーのパスワード。

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_PATH Synchrony 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.example.com/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.port 5701

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

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

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

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

cluster.join.multicast.port 54327 クラスタ結合タイプがマルチキャストで、既定を使用しない場合はマルチキャスト ポートを指定できます。
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.interfaces Defaults 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.port 8091 Synchrony を実行する HTTP ポートです。ポート 8091 を利用できない場合は、別のポートを選択するようこのプロパティを指定します。
synchrony.context.path 既定値は SYNCHRONY_URL のコンテキスト パス Synchrony のコンテキスト パスです。これを変更する必要はありません。
hazelcast.prefer.ipv4.stack
True IPv6 環境で Confluence を実行している場合、このプロパティを False に設定する必要があります。


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 を起動/終了するためにのみ使用できます。

Confluence サーバーで Synchrony を再起動するには、 > [一般設定] > [共同編集] へ移動します。


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 の IPv6 環境での実行

IPv6 環境で Confluence Data Center を実行している場合、次の JVM 引数で Synchrony を起動する必要があります。

-Dhazelcast.prefer.ipv4.stack=false

start-synchrony スクリプトを使用している場合、スクリプトのこの行のコメントを解除する必要があります。  

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.

最終更新日 2018 年 9 月 20 日

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

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