ライセンスサーバーの冗長構成
対象となる製品
- ELC 4.2
目次
概要
Embarcadero ライセンスサーバー(以降 ELC)4.2の冗長構成に関して説明します。
「冗長構成」とは端的に言えば、システム障害に備えて、通常構成とは別に予備のシステムを設け、障害が発生 した時でもサービスの継続が行えるように配慮したシステム構成の事を指します。
これらの構成は「二重化」とも呼ばれます。
ELC でも限定的な範囲での利用となりますが、冗長構成をサポートしています。
ELC のサーバー構成
ELC では、ライセンスサーバーとして機能を担うメイン系の構成となる「マスターサーバー」、そして待機系の構成となる「バックアップサーバー」があります。
バックアップサーバーは、マスターサーバーが何らかの理由により障害が発生した場合、マスターサーバーに代わって、その機能の役割を果たすというものです。
そして、マスターサーバーが復旧すると、今まで処理してきた作業をマスターサーバーへ移管し、バックアップ サーバー自身は、再度待機モードに入ります。
このように片方のサーバーがシステムダウンしても、もう片方がその役割を補うことによって、サービス自体は 停止せずに続行することができます。
ELC のデフォルトのサーバー構成は、ライセンスサーバー1 台(マスターサーバーのみ)による運用する方法とな り、冗長構成を行うためには、別途以下のような作業が必要になります。
(1)バックアップサーバーとして利用するワークステーションへ ELC のインストール
(2)バックアップサーバーを有効化するためのホスティング
(3)バックアップサーバーのコンフィグファイルの設定
このうち(1)は、マスターサーバーのインストールと同様の方法で行えます。 詳しくは、こちらの「2. ELCのインストール」を参照ください。
以降の節では、具体的な設定手順として(2)と(3)に関して詳しく見ていきたいと思います。
バックアップサーバーを有効化するためのホスティング
バックアップサーバーを有効化するためには、マスターサーバーと同様にライセンスのホスト設定(ホスティン グ)が必要になります。
ホスティングについては[こちら]の「3. ライセンスのホスト設定」を参照ください。
バックアップサーバーを有効化するためには、図1のように”Click here to here backup server support”にチェックをつけてください。
図1: バックアップサーバーの有効化
そして、バックアップサーバーとなるホスト名を入力してください。
バックアップサーバーのポート番号は、マスターサーバーと同じポート番号が使用されるため、変更することはできません。
バックアップサーバーのホスト名(オプションとしてホストアドレス)を入力後、”Next”を押してください。 図2のようにマスターサーバーとバックアップサーバーに対するホスト情報が表示されます。
図2: ホスト情報の確定
表示されているホスト情報で正しければ、”Finish”ボタンを押してください。そしてホスト情報を確定後、ラ イセンスファイルをダウンロードしてください。
ダウンロードしたライセンスファイル(embarcadero_xxxxx.zip)を展開し、このうちサーバー用のライセンスファ イル(server_xxxxx.slip)をマスターサーバーの<ELC>/conf フォルダへコピーしてください。
<ELC>のデフォルトは、C:\Embarcadero\LicenseCenter4.2 となります。
本章では、マスターサーバーを”jp-server01”、そしてバックアップサーバーを”jp-backupsvr01”として話を進めていきます。
バックアップサーバーのコンフィグファイルの設定
バックアップサーバーのコンフィグファイルの設定は、<ELC>/conf フォルダ内の elise.properties ファイルを エディタで開き、バックアップサーバーの設定に必要なプロパティを追加します。
プロパティ名 | 型 | 説明 |
---|---|---|
isBackupServer | boolean | バックアップサーバーを有効にするには、このプロパティ を”true”に設定します。デフォルトは”false” |
masterHost | string | マスターサーバーのホスト名、もしくはIP アドレスを指定します。 |
masterPort | string | マスターサーバーのポート番号を指定します。デフォルトの ポート番号「5567」での利用の場合は、省略可 |
図3: バックアップサーバーのプロパティ値
ここでは、使用しているポート番号はデフォルトの”5567”であるため、図4のように”isBackupServer” と”masterHost”という 2 つのプロパティを追加しています。
図4: コンフィグファイルの設定
“masterHost”と”masterPort”の各プロパティは、実行する環境によって適切な値に置き換えてください。
冗長構成におけるサーバーの起動手順
冗長構成によるサーバーの起動手順は、原則的にマスターサーバー、バックアップサーバーの順で行います。
1. マスターサーバーの起動
マスターサーバーを起動すると、バックアップサーバーの応答を待ちます。 応答を待っている間は、マスターサーバーの<ELC>/logs/info ファイル内に以下のメッセージが記録されます。
Waiting for backup to connect...
マスターサーバーがバックアップサーバーの応答を待つタイムアウト時間は、5 分間です。
2. バックアップサーバーの起動
マスターサーバーとバックアップサーバーの間で接続が確立された場合には、マスターサーバーで設定されてい るライセンスファイル、ユーザーリストファイル、IP リストファイルなどがバックアップサーバーへコピーされます。 以下は、両サーバーの接続が確立後、マスターサーバーの<ELC>/logs/info ファイル内に記録されるメッセージです。
Waiting for backup to connect... Received authentication request for backup server jp-backupsvr01 with lock jp- backupsvr01. Backup server authentication succeeded.
赤字の箇所には、お客様が使用しているバックアップサーバーのホスト名(IP アドレス)に置き換わります。
以下では、2 つのエラーケースを紹介したいと思います。
規定時間内にバックアップサーバーからの応答がなかった場合:
以下のメッセージは、マスターサーバーの<ELC>/logs/info ファイル中に記録され、マスターサーバーは自動的 に停止します。
Timed out waiting for backup to connect. Shutting down…
マスターサーバーより先にバックアップサーバーを起動した場合:
以下のメッセージは、バックアップサーバーの<ELC>/logs/info ファイル中に記録され、バックアップサーバー は自動的に停止します。
Failed to download master files... BSlipManager initialization failed, program aborted Failed to establish connection with host jp-server01 at port 5567: Connection refused: connect
赤字の箇所には、お客様が使用しているマスターサーバーのホスト名(IP アドレス)とポート番号に置き換わります。
バックアップサーバー運用時における注意点
マスターサーバーがダウンし、バックアップサーバーがメインのライセンスサーバーとして運用している間は、 以下のような制約があります。
(1)ユーザーリストファイルに関する編集が行えない
バックアップサーバーでは、ユーザーリストファイルの情報はマスターサーバーで保持されているファイルをコピーして使用します。
そのためバックアップサーバーが保持するユーザーリストファイル(userlist.txt、userlist-concurrent.txt) に対して、ユーザーの新規追加や編集を行なうことができません。
(2)ライセンスをオフラインで利用することができない
バックアップサーバーによる運用中は、指定されたユーザーに対するライセンスのチェックアウト(オフライン)が行えません。
オフラインで利用できるようにするには、マスターサーバーを復旧する必要があります。
(3)マスターサーバーがダウンした後、72 時間が経過するとバックアップサーバーも停止する
バックアップサーバーとして運用できる最大期間が設けられており、それが「72 時間」となっています。
この時間内にマスターサーバーが復旧できない場合には、規定時間が経過後バックアップサーバーも停止します。
バックアップサーバーが起動可能な残り時間は、Web管理画面のサーバーステータスで確認することができます。
図5: サーバーステータス
例えば、バックアップサーバーの Web 管理画面にログインするには、以下の URL へアクセスします。
http://jp-backupsvr01:5580
ここでは、Web アクセスのポート番号として、デフォルトの「5580」を使用しています。
ログイン後、図5のように"Server Status"の"Shutting down In:"という項目で、バックアップサーバーが シャットダウンするまでの時間が表示されます。
この項目は、バックアップサーバーがメインに昇格していないと表示されません。