Confluence で Amazon Web Service Application Load Balancer を構成する方法
このページの内容はサポート対象外のプラットフォームに関連しています。したがって、アトラシアン サポートではこのページの記載内容のサポートの提供は保証されません。この資料は情報提供のみを目的として提供されています。内容はお客様自身の責任でご利用ください。
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Fisheye および Crucible は除く
目的
Confluence 6.0 では共同編集機能が追加されましたが、この機能では WebSocket が必要です。この新機能が Amazon Web Services (AWS) の Elastic Load Balancing (ELB) で動作するようにするには、追加の構成が必要です。
既存のセットアップをお持ちの場合、現在の設定に合わせて以降の手順を調整する必要がある場合があります。このページの手順では、新しい Elastic Load Balancer を作成します。
環境
Confluence Data Center 6.0+
ソリューション
はじめる前に
- Confluence のベース URL をロード バランサの最終アドレスに更新済みであることを確認します。
server.xml
ファイルに、proxyName
およびproxyPort
、HTTPS を使用している場合はscheme
パラメーターが含まれていることを確認します。
たとえば、https://confluence.example.com/ でリッスンするように Elastic Load Balancer を構成する場合は HTTP コネクタを次のように構成します。
<Connector port="8090" connectionTimeout="20000" redirectPort="8443"
maxThreads="48" minSpareThreads="10"
enableLookups="false" acceptCount="10" debug="0" URIEncoding="UTF-8"
protocol="org.apache.coyote.http11.Http11NioProtocol"
proxyName="confluence.example.com" proxyPort="443" scheme="https" />
ターゲットの作成
ターゲットは、最初は特定の Virtual Private Cloud (VPC) 用に作成される必要があります。その後、ロード バランサでそれらのターゲットに対応します。
- EC2 コンソールで、[Load Balancing] 配下の [Target Groups] を選択します。
- 以降の推奨設定を使い、Confluence 用に 1 つ、Synchrony 用に 1 つの、2 つの新しいターゲットを作ります。
- ターゲットが作成されたら、[Targets] タブをクリックし、ターゲットの登録先のインスタンスを選択します。両方のターゲットが同じ Confluence インスタンスに登録される必要があります。Data Center バージョンを実行している場合、両方のターゲットですべてのインスタンスを追加するようにします。
推奨設定
Confluence 用 | Synchrony 用 | |
---|---|---|
名前 | Confluence | Synchrony |
プロトコル | HTTP1 | HTTP1 |
ポート | 80902 | 80913 |
Health check protocol | http | http |
Health check path | /status | /synchrony/heartbeat |
Stickiness | オン | オフ |
注意
- プロトコルは、ユーザーが利用するプロトコルではなく、ロード バランサと Tomcat の間のプロトコルを指します。Confluence ターゲットについて、SSL を Tomcat で終了させている場合を除き、HTTP を利用します。Synchrony では HTTP リクエストのみが許可されます。
- Confluence のデフォルト ポートは 8090 です。Confluence がリッスンしているポートを確認するには、
server.xml
をご確認ください。 - Synchrony のデフォルト ポートは 8091 です。このポートは、JVM パラメーター
-Dsynchrony
.port
で構成されます。詳細については「認識されるシステム プロパティ」をご確認ください。 - JVM へのコネクションを許可するには、Synchrony が利用しているポート (8091 またはカスタムのもの) がセキュリティ グループ構成でオープンであることをご確認ください。
ロード バランサの作成
ターゲットを作成してインスタンスに登録したら、Synchrony へのコネクションをプロキシするためのロード バランサを作成する必要があります。
- 新しい Application Load Balancer を作成します。
注: Classic Load Balancer はサポートされておらず、この手順のスコープ外です。 - ロード バランサが処理するリスナーを選択します (少なくとも HTTP または HTTPS)。
- VPC とアベイラビリティ ゾーン (サブネット) を指定します。
- Click Next.
- SSL 証明書をお持ちの場合はこの画面でインストールし、[Next] をクリックします。SSL を使用していない場合はこの手順をスキップしてかまいません。
- 既存の Security Group を選択するか新しいものを作成し、[Next] をクリックします。
- 作成済みの Confluence ターゲットを選択して [Next] をクリックします。
- 設定を確認して [Next] をクリックします。
- Click Create.
ロード バランサが作成されたら、Synchrony のトラフィックを Synchrony サービスに送信するための追加のルールを作成する必要があります。
- Elastic Load Balancer のページで、[Listeners] タブをクリックします。
- 対象のリスナーを展開し、[View/Edit Rules] をクリックします。
- [+] ボタンをクリックし、[insert rule] を選択します。
- 条件を追加し、ドロップダウンからパスを選択します。
- [Path] の [Value] フィールドで、「
/synchrony/*
」を追加します。 - 作成済みの Synchrony ターゲットを選択します。
- [Save] をクリックします。
適切に構成すると、ルール ページは次のようになります。
ルール
ターゲット グループ
テスト
設定が完了したら、期待どおりに動作するのを確認するためにいくつかのテストを行えます。
- [Target Groups] > [Target Name] > [Targets] の順に移動し、[Status] 列でインスタンスが [Healthy] として記載されていることを確認します
- これは、ターゲット グループが適切に構成されていて、対象のポートでインスタンスに到達可能であることを示しています
- ブラウザで https://<ドメイン>/synchrony/heartbeat にアクセスして Synchrony のルールをテストします
- [OK] が返される場合、ロード バランサのルールとターゲット グループの設定が適切に行われています。