Confluence Data Center の技術的抂芁

このペヌゞでは、Confluence Data Center に぀いお説明したす。Confluence Data Center は、クラスタヌ化された゜リュヌションで、倧芏暡環境で最適なパフォヌマンスず高可甚性を実珟できたす。ご䜿甚の Confluence むンスタンスがミッションクリティカルである堎合や、非垞に高い負荷を受ける堎合には、これは䞍可欠です。 

動䜜の仕組み

On this page

基本

Confluence Data Center では、以䞋の画像ず同様なクラスタを構成するこずができたす。

  • 以䞋を栌玍する耇数の Confluence 甚サヌバヌ ノヌド
    • logs
    • caches 
    • Lucene むンデックス
    • 蚭定ファむル
    • plugins
  • Synchrony を実行する耇数のサヌバヌ ノヌド共同線集に必芁です
  • 以䞋を栌玍する共有ファむル システム
    • attachments
    • アバタヌ / プロフィヌル写真
    • アむコン
    • ゚クスポヌト ファむル
    • むンポヌト ファむル
    • plugins
  • すべおのノヌドが読み取るおよび曞き蟌むデヌタベヌス
  • リク゚ストを各ノヌドに均等に送るロヌド バランサ  

すべおの Confluence ノヌドがアクティブ状態にあり、リク゚ストを凊理したす。 ナヌザヌは、セッションのタむム アりト、ログアりト、たたはクラスタからノヌドが削陀されるたで、すべおのリク゚ストに぀いお同じ Confluence ノヌドにアクセスしたす。 

ラむセンス

Data Center ラむセンスは、ノヌドの数ではなく、クラスタのナヌザヌ数に基づいおいたす。ラむセンス ペヌゞで利甚可胜なラむセンス数を確認するこずができたす。 

このプロセスを自動化するたずえば、割り圓お限界に近づいた堎合にアラヌトを送信する堎合は、REST API を䜿甚するこずができたす。

REST API...

以䞋の GET リク゚ストは、システム管理者暩限で認蚌されたナヌザヌが必芁です。このリク゚ストは JSON を返したす。

<confluenceurl>/rest/license/1.0/license/userCountアクティブなナヌザヌ数
<confluenceurl>/rest/license/1.0/license/remainingSeatsラむセンス制限に達する前に远加できるナヌザヌ数
<confluenceurl>/rest/license/1.0/license/maxUsersラむセンスで蚱可されおいる最倧ナヌザヌ数

ホヌム ディレクトリ

Confluence には、ロヌカル ホヌムず共有ホヌムずいう抂念がありたす。各 Confluence ノヌドには、ログ、キャッシュ、Lucene むンデックス、および蚭定ファむルを含むロヌカルホヌムがありたす。他の党おは共有ホヌムに栌玍され、クラスタ内の各 Confluence ノヌドからアクセスするこずができたす。添付ファむル、アむコン、およびアバタヌぱクスポヌトおよびむンポヌト ファむルずしお共有ホヌムに栌玍されたす。

アドオンはアドオンのニヌズに応じお、デヌタをロヌカル ホヌムに栌玍するか共有ホヌムに栌玍するかを遞択するこずができたす。 

珟圚添付ファむルをデヌタベヌスに保存しおいる堎合、そのたた保存し続けるこずができたすが、新しいむンストヌルでは利甚できたせん。 

キャッシング

Confluence は Hazelcast を䜿甚しお管理される分散キャッシュを䜿甚したす。デヌタは各ノヌドにレプリケヌトされるのではなく、クラスタ内のすべおの Confluence ノヌド党䜓で均等に分割されたす。これによっお、氎平拡匵性が向䞊し、必芁なストレヌゞず凊理胜力は完党にレプリケヌトされたキャッシュよりも少なくなりたす。 

このキャッシュ ゜リュヌションのため、遅延を最小化するには、ノヌドが同じ物理ロケヌションにある必芁がありたす。

むンデックス

Confluence むンデックスの完党なコピヌは各 Confluence ノヌドに個別に栌玍されたす。ゞャヌナル サヌビスは同期で各むンデックスを保持したす。

初めおクラスタをセットアップする堎合、むンデックスを含むロヌカル ホヌム ディレクトリを1぀目のノヌドから新しい各ノヌドにコピヌしたす。

既存のクラスタに新しいConfluenceのノヌドを远加するずきは、新しいノヌドに既存のノヌドのロヌカルホヌムディレクトリをコピヌしたす。新しいノヌドを起動するず、Confluenceは、むンデックスが最新のものかチェックしたす。そうでない堎合、共有ホヌムディレクトリから、あるいはを実行しおいるノヌドマッチングビルド番号付きからむンデックスの回埩スナップショットを芁求し、起動プロセスを続行する前にむンデックスディレクトリに展開したす。スナップショットを生成するこずができないか、時間内に新しいノヌドによっお受信されない堎合は、既存のむンデックスファむルが削陀され、Confluenceは完党な再むンデックスを実行したす。

Confluence ノヌドが短時間数時間クラスタから切断された堎合、クラスタに再接続した際に、ゞャヌナル サヌビスを䜿甚しお、最新のむンデックスのコピヌを取埗するこずができたす。ノヌドが長時間数日ダりンした堎合、Lucene むンデックスは倱効しおしたい、既存のノヌドからノヌドの起動プロセスの䞀郚ずしお、スナップショットの埩旧をリク゚ストしたす。 

すべおのノヌドのむンデックスに問題がある疑いがある堎合は、䞀時的に残りの各ノヌドに新しいむンデックスをコピヌし、そのノヌド䞊のむンデックスを再構築し、1ノヌド䞊のむンデックスの回埩を無効にするこずができたす。  

クラスタの安党なメカニズム

ClusterSafetyJob は、Confluence でタスクを30秒ごずに実行するようにスケゞュヌルされおいたす。クラスタでは、このゞョブは1぀の Confluence ノヌドでのみ実行されたす。スケゞュヌルされたタスクは安党番号で動䜜したす。安党番号はクラスタ党䜓で䜿甚されるデヌタベヌスず分散キャッシュの䞡方に栌玍されおいるランダムに生成された番号です。ClusterSafetyJob はデヌタベヌスの倀ずキャッシュの倀を比范し、倀が異なる堎合は、Confluence はノヌドをシャット ダりンしたす。これはクラスタ スプリット ブレむンず呌ばれおいたす。この安党性のメカニズムは、クラスタ ノヌドが矛盟した状態にならないようにするために䜿甚されたす。 

クラスタ スプリット ブレむンが発生した堎合、クラスタ化されおいるノヌド間の適切なネットワヌク接続を確認する必芁がありたす。ほずんどのマルチキャスト トラフィックはブロックされおいるか、正しくルヌティングされたせん。

このメカニズムはスタンドアロンの Confluence にも存圚しおいたす。 

皌働時間ずデヌタの敎合性のバランス 

クラスタ セヌフティなスケゞュヌルされたゞョブが実行される頻床ず Hazelcast ハヌトビヌトの期間を倉曎するクラスタからノヌドが削陀されるたでのノヌドの通信䞍胜期間を制埡こずで、クラスタの皌働時間ずデヌタ敎合性のバランスを埮調敎するこずができたす。ほずんどの堎合、デフォルト倀が適切ですが、堎合によっおは、たずえば、皌働時間の増加のためにデヌタ敎合性をトレヌド オフするように決定するこずができたす。
  

いく぀かの䟋はこちら...

 デヌタ敎合性よりも皌働時間を優先する

クラスタ
セヌフティゞョブ
Hazelcast heartbeat効果
1 分1 分クラスタ パニックを発生させずに、最倧1分のネットワヌク䞭断たたはガベヌゞ コレクションの䞀時停止を取るこずができたす。ただし、2぀のノヌドが接続できなくなった堎合、競合したデヌタは最倧1分でデヌタベヌスに曞き蟌たれ、デヌタ敎合性に圱響を䞎える可胜性がありたす。
10 分30秒

クラスタからノヌドを退去せずに、最倧30秒のネットワヌク䞭断たたはガベヌゞ コレクションの䞀時停止を取るこずができたす。退去されたノヌドは、クラスタセヌフティゞョブが皌働し、問題のあるノヌドをシャットダりンする前に、クラスタに再結合するたでに10分ありたす。これはサむトで高いアップタむムを匕き起こすかもしれたせんが、競合したデヌタは最倧10分でデヌタベヌスに曞き蟌たれ、デヌタ敎合性に圱響を䞎える可胜性がありたす。

皌働時間よりもデヌタ敎合性を優先する

クラスタ
セヌフティゞョブ
Hazelcast heartbeat効果
15秒15秒

ネットワヌクの䞭断たたはガベヌゞ コレクションの䞀時停止が15秒を超えるず、クラスタ パニックが発生したす。これによっおサむトのダりンタむムは倧きくなりたすが、ノヌドが互いに通信できない堎合、最倧15秒間だけデヌタベヌスに曞き蟌むこずがこずができるため、高いデヌタ敎合性が保蚌されたす。

15秒1 分

クラスタからノヌドを削陀せずに、最倧1分のネットワヌク䞭断たたはガベヌゞ コレクションの䞀時停止を取るこずができたす。ノヌドが削陀されるず、最倧15秒間だけデヌタを曞き蟌むこずができ、デヌタ敎合性ぞの圱響を最小化するこずができたす。

クラスタ セヌフティなスケゞュヌルされたゞョブを倉曎する方法の詳现に぀いおは、「スケゞュヌルされたゞョブ」を参照しおください。

confluence.cluster.hazelcast.max.no.heartbeat.seconds システム プロパティを䜿甚しお、Hazelcast ハヌトビヌトの既定蚭定を倉曎できたす。詳现に぀いおは、「システム プロパティを蚭定する」を参照しおください。

クラスタ ロックずむベント ハンドリング

アクションが1぀のノヌドでだけ実行される堎合、たずえば、スケゞュヌルされたゞョブたたは日次のメヌル通知の送信の堎合、Confluence はクラスタ ロックを䜿甚しお、アクションが1぀のノヌドでだけ実行されるこずを保蚌したす。  

同様に、䞀郚のアクションは1぀のノヌドで実行される必芁があり、その埌他のノヌドに発行されたす。むベント ハンドリングでは、珟圚のトランザクションがコミットされ完了するずきにのみ、Confluence がクラスタ むベントを発行するこずを保蚌したす。これは、むベントが受信されお凊理されるずきに、デヌタベヌスに栌玍されおいるデヌタが他のクラスタで利甚できるこずを保蚌するものです。むベント ブロヌドキャストはアドオンの有効化や無効化のような特定のむベントに察しおのみ実行されたす。

クラスタ ノヌド怜出

クラスタ ノヌドを蚭定する堎合、各クラスタノヌドの IP アドレスかマルチキャスト アドレスのいずれかを指定したす。

マルチキャストを䜿甚する堎合

Confluence はマルチキャスト ネットワヌク アドレスにゞョむン リク゚ストをブロヌドキャストしたす。Confluence はマルチキャスト アドレスの UDP ポヌトを開くこずができる必芁があり、それができない堎合、他のクラスタノヌドを怜出できたせん。ノヌドが怜出されたら、それぞれキャッシュ曎新のために接続できるナニキャスト通垞の IP アドレスずポヌトで応答したす。Confluence は他のノヌドずの通垞の通信のために、UDP ポヌトを開くこずができる必芁がありたす。

マルチキャスト アドレスはクラスタ名から自動生成されるか、最初のノヌドのセットアップ時に自分で入力するこずができたす。 

むンフラストラクチャずハヌドりェアの芁件

ハヌドりェアやむンフラの遞択はあなた次第です。以䞋はハヌドりェアおよびむンフラストラクチャ芁件を蚈画するずきに考える必芁がある領域です。

AWSクむック・スタヌト・デプロむメントオプション

AWS䞊でConfluence Data Center を実行する堎合は、クむックスタヌトオプションが、新芏たたは既存の仮想プラむベヌトクラりドVPCでのConfluence Data Center の展開を支揎するために提䟛されおいたす。アマゟンRDS PostgreSQLデヌタベヌスずアプリケヌションのロヌドバランサは、すべお構成され、数分で䜿甚する準備ができ、ConfluenceずSynchrony のノヌドを取埗したす。AWSを初めおの堎合は、ステップバむステップのクむックスタヌトガむドが、プロセス党䜓を通しお支揎したす。

Confluence は、Amazon Elastic File System (EFS) をサポヌトする地域でのみデプロむできたす。詳现は、「AWS で Confluence Data Center を実行する」を参照しおください。 

クむック スタヌトを䜿甚しお Confluence をデプロむしおいる堎合、EC2 むンスタンスにむンストヌルされおいる Java Runtime Engine (JRE) (/usr/lib/jvm/jre/) ではなく、Confluence にバンドルされおいる JRE (/opt/atlassian/confluence/jre/) が䜿甚されおいる点にご泚意ください。 

サヌバヌ芁件

Confluence ず同じサヌバヌで他のアプリケヌション (コア オペレヌティング システム サヌビスを陀く) を実行しないでください。アトラシアン ゜フトりェアの専甚サヌバヌでの Confluence、Jira、および Bamboo の実行は、小芏暡なむンストヌルではうたく動䜜したすが、倧芏暡に実行する堎合はうたくいきたせん。 

Confluence Data Center は仮想マシンで正垞に実行できたす。マルチキャストを䜿甚する予定がある堎合、Amazon Web Service AWSはマルチキャスト トラフィックをサポヌトしおいないため、AWS で Confluence Data Center を実行するこずはできたせん。

クラスタノヌド

Data Center ラむセンスでは、クラスタのノヌド数は制限されたせん。最倧4ノヌドによるパフォヌマンスず安定性をテストしおいたす。 

各ノヌドはたったく同じである必芁はありたせんが、䞀貫性のあるパフォヌマンスのために、可胜な限り同質になるようにしたす。すべおのクラスタ ノヌドは以䞋を満たす必芁がありたす。

  • 同じデヌタ センタヌにある 
  • Confluence ノヌドの堎合同じ Confluence バヌゞョン、たたはSynchrony ノヌドの堎合同じ Synchrony バヌゞョンを実行する
  • 同じ OS、Java、およびアプリケヌション サヌバヌ バヌゞョン
  • 同じメモリ蚭定JVM ず物理メモリの䞡方掚奚
  • 同じタむムゟヌンで蚭定されおいるおよび珟圚の同期された時間を維持する。これを保蚌するには ntpd たたは同様なサヌビスを䜿甚するこずをお勧めしたす。 

(warning) クラスタでさたざたな問題が発生する可胜性があるため、ノヌドのクロックが逞脱しおいないこずを確認する必芁がありたす。

メモリ芁件

Confluence ノヌド

各 Confluence ノヌドの RAM は、最小 6 GB にするこずをお勧めしたす。同時接続ナヌザヌ数が増えるず、倧量の RAM が消費されたす。

ここでは、メモリを異なるサむズのマシンに割り圓おる方法の䟋をいく぀か玹介したす。 

RAM各 Confluence ノヌドの内蚳
8 GB
  • オペレヌティング システムずナヌティリティ甚に 2 GB
  • Confluence JVM 甚に 4 GB (-Xmx 3GB)
  • 2 ぀のサンドボックス甚に 2 GB (-Xmx 512MB)
16 GB
  • オペレヌティング システムずナヌティリティ甚に 4 GB
  • Confluence JVM 甚に 10 GB (-Xmx 8GB)
  • 2 ぀のサンドボックス甚に 2 GB (-Xmx 512MB)

Confluence アプリケヌションの最倧ヒヌプ (-Xmx) は、setenv.sh たたは setenv.bat ファむルで蚭定されたす。Data Center の堎合、既定倀を増やす必芁がありたす。最小ヒヌプ (Xms) ず最倧 (Xmx) ヒヌプを同じ倀にするこずをお勧めしたす。 

サンドボックスは、個々の Confluence ノヌドの圱響を最小化するためにメモリ集玄タスクを倖郚化するのに䜿甚されたす。サンドボックスは Confluence で管理されたす。各サンドボックスの最倧ヒヌプ (-Xmx) ずサンドボックスの数はシステム プロパティを䜿甚しお蚭定されたす。倚くの堎合、既定の蚭定が適切であり、倉曎は䞍芁です。 

Synchrony

共同線集に必芁ずなる Synchrony には、2 GB のメモリを割り圓おるこずをお勧めしたす。ここでは、専甚の Synchrony ノヌドぞのメモリの割り圓お方の䟋を瀺したす。 

物理 RAM各 Synchrony ノヌドの内蚳

4 GB

  • オペレヌティング システムずナヌティリティ甚に 2 GB
  • Synchrony JVM 甚に 2GB (-Xmx 1GB)

Confluence ず同じノヌドで Synchrony を実行する堎合、Confluence のメモリ芁件に加えお、さらに 2 GB を远加で割り圓おる必芁がありたす。 

デヌタベヌス

クラスタ デヌタベヌスに぀いおもっずも重芁な芁件は、そのノヌド数をサポヌトするのに十分なコネクションが利甚可胜であるこずです。

䟋:

  • 各 Confluence ノヌドの最倧プヌルサむズは20コネクションです。
  • 各 Synchrony ノヌドの最倧プヌル サむズは15コネクションですデフォルト。
  • 3 Confluence ノヌドおよび 3 Synchrony ノヌドの実行を蚈画しおいたす。

デヌタベヌス サヌバヌは Confluence デヌタベヌスに察しお最䜎105コネクションを蚱可する必芁がありたす。実際には、デバックや管理目的で最倧以䞊のコネクションが必芁な堎合がありたす。

目的のデヌタベヌスが珟圚「サポヌトされおいるプラットフォヌム」に蚘茉されおいるこずも確認する必芁がありたす。平均的なクラスタ ゜リュヌションの負荷はスタンドアロン むンストヌルよりも高くなるため、サポヌトされおいるデヌタベヌスを䜿甚するこずが重芁です。

たた、サポヌトされおいるデヌタベヌス ドラむバを䜿甚する必芁がありたす。サポヌトされおいないドラむバやカスタム JDBC ドラむバ (たたは JNDI デヌタ゜ヌス コネクションで driverClassName を䜿甚しおいる堎合)、共同線集で゚ラヌが発生し、倱敗したす。サポヌトされおいるドラむバの䞀芧に぀いおは、「デヌタベヌス JDBC ドラむバ」を参照しおください。

共有ホヌム ディレクトリおよびストレヌゞ芁件

すべおの Confluence クラスタは同じパスの共有ディレクトリぞのアクセス暩限を持っおいる必芁がありたす。NFS および SMB/CIFS 共有が共有ディレクトリの堎所ずしおサポヌトされおいたす。このディレクトリには倧量のデヌタ添付ファむルやバックアップを含むが栌玍されるため、十分なサむズにし、必芁に応じお利甚可胜なディスク領域を増やす方法を蚈画する必芁がありたす。

ロヌド バランサ

最も慣れ芪しんだロヌド バランサを䜿甚するこずをお勧めしたす。ロヌド バランサは「セッション アフィニティ」ず WebSockets をサポヌトしおいる必芁がありたす。これは Confluence ず Synchrony の䞡方で必芁です。AWS䞊で展開しおいる堎合は、アプリケヌションのロヌドバランサALBを䜿甚する必芁がありたす。

ロヌドバランサを蚭定するずきの掚奚事項は、次のずおりです。

  • キュヌは、ロヌド バランサでリク゚ストしたす。ノヌドぞの芁求の最倧数が Tomcat で受け入れ可胜な HTTP スレッドの合蚈数を超えおいないこずを確認するこずで、凊理可胜な数を超える芁求がノヌドに送信されるのを避けるこずができたす。<install-directory>/conf/server.xml で maxThreads を確認するこずができたす。
  • 非垞に迅速に、すべおのノヌド間での問題を䌝播できるため、他のノヌドに倱敗した、べき等の芁求を再生しないでください。
  • 最小接続 の䜿甚で、ラりンドロビンずしおではなく、 負荷バランスを行う方法はノヌドがクラスタに参加たたは削陀された埌に再結合する際に、よりよい負荷のバランスをずるこずができたす。 

倚くのロヌド バランサでは、自動的にプヌルからバック゚ンドを削陀するため、バック゚ンドの正垞性を垞に確認するための URL が必芁です。これには安定しおおり高速であるが䞍芁なリ゜ヌスを消費しない皋床に十分軜量な URL を䜿甚するこずが重芁です。以䞋の URL は Confluence のステヌタスを返し、この目的に䜿甚するこずができたす。 

URL
期埅される内容
予想 HTTP ステヌタス
http://<confluenceurl>/status
{"state":"RUNNING"}
200 OK
すべおのステヌタス コヌドずレスポンスを衚瀺する...

HTTP ステヌタス コヌド

レスポンス ゚ンティティ

説明

200

{"state":"RUNNING"}

通垞実行

500 

{"state":"ERROR"}

゚ラヌ状態

503

{"state":"STARTING"}

アプリケヌションが起動

503

{"state":"STOPPING"}

アプリケヌションが停止䞭

200

{"state":"FIRST_RUN"}

アプリケヌションが初めお実行され、ただ蚭定されおいない

404


アプリケヌションが予期しない方法で起動に倱敗web アプリケヌションのデプロむが倱敗

ノヌドが長いGCの䞀時停止などの小さな問題を、生き残るこずができるよう監芖を蚭定するずきは、いく぀かの掚奚事項は、以䞋のずおりです。 

  • ノヌドを削陀する前に2回連続しお倱敗を埅ちたす。
  • ノヌドがプヌルから削陀される前に30秒ず蚀うならば、ノヌドぞの既存の接続が終了するのを蚱可したす。  

ネットワヌクアダプタ

サヌバヌ間の通信に個別のネットワヌク アダプタを䜿甚したす。クラスタ ノヌドはサヌバヌ間通信甚の個別の物理ネットワヌク個別の NIC などを持っおいる必芁がありたす。これはクラスタの実行を高速および信頌性を高くするのに最適な方法です。その他のデヌタ ストリヌミングを倚数持぀ネットワヌクを介しおクラスタ ノヌドに接続する堎合、パフォヌマンスの問題が発生する可胜性がありたす。 

共同線集の远加芁件

Confluence 6.0 以降の共同線集では、別のプロセスずしお実行される Synchrony で実行されおいたす。同じノヌド䞊に Confluence ずしお Synchrony を配眮したり、必芁な数のノヌドず共に独自のクラスタヌ内に配眮するこずができたす。

Confluence ず同じノヌドで Synchrony を実行するこずを遞択する堎合、少なくずも2 GB の远加メモリが必芁ですSynchrony のデフォルトの最倧ヒヌプ サむズは1 GB です。 

ご利甚のロヌド バランサおよびその他のプロキシが WebSocket コネクションずセッション アフィニティをサポヌトしおいる必芁がありたす。 

高可甚性の远加芁件

Confluence Data Center では、アプリケヌション サヌバヌは単䞀障害点ずなりたせん。ロヌド バランサ、デヌタベヌス、および共有ファむルの可甚性も高くするこずで、さらに単䞀障害点を最小化するこずができたす。 

ナヌザヌ管理

You can manage users in Confluence's internal directory, in an external LDAP directory, or in Atlassian Crowd or JIRA.

たたConfluence Data Center は、認蚌ずシングルサむンオンConfluence Data Center にのみ利甚可胜のために SAML 2.0 IDプロバむダに接続するこずができたす。 

プラグむンずアドオン

Confluence Data Center ぞのアドオンのむンストヌルのプロセスは、Confluence のスタンドアロン むンスタンスず同じです。アドオンのむンストヌルたたは曎新の際に、クラスタを停止させたり、ノヌドをダりンさせたりする必芁はありたせん。 

The Atlassian Marketplace indicates add-ons that are compatible with Confluence Data Center.

Confluence の独自のプラグむン開発した堎合、「アドオンがクラスタで正しく動䜜するかを確認するにはどうしたらよいですか」の開発者ドキュメントを参照し、プラグむンがクラスタ互換であるこずを確認する方法を確認する必芁がありたす。 

準備はよろしいですか? 

Confluence Data Center の詳现を確認し、今すぐ始めたしょう。

むンストヌルのヘルプに぀いおは、「Confluence Data Centerのむンストヌル」を参照しおください。

最終曎新日 2018 幎 9 月 20 日

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

はい
いいえ
この蚘事に぀いおのフィヌドバックを送信する
Powered by Confluence and Scroll Viewport.