2023/07/11

ドミノクラスタ:可用性の設定

ドミノクラスタは、負荷分散や可用性向上が目的で導入しますが、これらの実現にかかわる基本的な設定についてまとめます。


◇ 負荷分散の仕組み

ドミノクラスタでは、各サーバごとに可用性限界値を設定できます。サーバのステータスがこの限界値を超えた場合、他のメンバーサーバに接続が振り替えられます。これをフェイルオーバーといい、サーバの負荷を分散することができます。


◇ 可用性向上の仕組み

サーバを稼働系と待機系に分けて運用する方法です。通常は稼働系がサービスし、障害発生時のみ待機系が応答させ、可用性を向上させることができます。

設定は、上記負荷分散の仕組みを利用して、待機系の可用性限界値を最大に設定し、稼働系に接続を振り返えさせるという方法になります。


可用性インデックス

ドミノサーバは、現在のワークロードを可用性インデックスで表します。この値は、サーバコンソールで "show server" コマンドを投入すると確認できます。

[18C8:0006-2B9C] HCL Domino (r) Server (64 Bit) (Release 12.0.2FP1 for Windows/64) 2023/07/11 19:13:35

[18C8:0006-2B9C] Server name: Server1/Domino
[18C8:0006-2B9C] Domain name: Domain
[18C8:0006-2B9C] Server directory: C:\Lotus\Domino\Data1
[18C8:0006-2B9C] Partition: C.Lotus.Domino.Data1
[18C8:0006-2B9C] Elapsed time: 00:11:13
[18C8:0006-2B9C] Transactions/minute: Last minute: 8; Last hour: 15; Peak: 64
[18C8:0006-2B9C] Peak # of sessions: 3 at 2023/07/11 19:04:57
[18C8:0006-2B9C] Transactions: 160 Max. concurrent: -1
[18C8:0006-2B9C] ThreadPool Threads: 100 (TCPIP Port)
[18C8:0006-2B9C] Member of cluster: Cluster
[18C8:0006-2B9C] Availability Index: 100 (state: AVAILABLE)
[18C8:0006-2B9C] Mail Tracking: Not Enabled
[18C8:0006-2B9C] Mail Journalling: Not Enabled
[18C8:0006-2B9C] Number of Mailboxes: 1
    ・・・

可用性インデックスは、0 ~ 100 の数値で表され、100 が負荷が軽い状態で、0 が負荷が高い状態を表します。値はドミノサーバが定期的に算出し更新されます。

Administrator ヘルプによると、このインデックスは、使用可能なサーバのリソースの比率と同等だそうです。例えば 65 の場合、まだ 65% の余裕があると判断できるとのことです。


サーバステータスとフェイルオーバー

インデックスの横にはサーバステータスが表示されます。ステータスは、"AVAILABLE" と "BUSY" が存在します。

可用性インデックスの値が、サーバの可用性限界値以下になるとサーバのステータスが "BUSY" となります。ビジー状態になり、他のクラスタメンバーで "AVAILABLE" なサーバがあれば、そちらに接続が振り替えられます。これをフェイルオーバーと呼びます。


可用性限界値の設定

各サーバの notes.ini に以下のパラメータを設定します。

SERVER_AVAILABILITY_THRESHOLD=n

n は設定する限界値としたい可用性インデックスの値を設定します。

100 を設定すると、ステータスは絶えず "AVAILABLE" となるので、DB が存在しない場合やサーバがダウンしている場合などを除き、フェイルオーバーせず接続します。

逆に 0 を設定すると、絶えず "BUSY" となり、通常の接続は受け付けず他のクラスタメンバーにフェイルオーバーオーバーすることになります。


ドミノクラスタの一般的な設定

アプリケーションサーバの場合、接続が分散すると競合文書の発生原因となります。それを抑制するため、アプリサーバは、稼働系と待機系に分けて運用します。この場合、SERVER_AVAILABILITY_THRESHOLD の設定は、稼働系:待機系 = 100:0 に設定します。

メールの場合は、同じ文書を複数人で更新する可能性は低いといえます。よって、メール専用サーバの場合は、100:0 以外の設定で負荷分散をさせることもあります。

0 件のコメント:

コメントを投稿