大量のライセンスを 1 つのライセンス サーバーで管理する場合、サーバーで障害が発生すると大きな影響が出ます。このような事態を回避するために冗長サーバーを設定すれば、1 つのサーバーで問題が発生しても、ライセンス マネージャーを継続的に機能させることができます。
冗長サーバー構成では、3 台のマシンをライセンス サーバーとして指定します。ライセンス マネージャーの起動時には、これら 3 つのサーバーがすべて稼働していなければなりません。ただし、その後一度に稼働していなければならないサーバーの数は 2 台のみです。これは
クォーラム
と呼ばれます。クォーラムが存在する場合は、クライアントはライセンスの照合を行うことができます。
ライセンス マネージャーを設定する場合、サーバー PC の選択を行います。サーバーを選択する際には、次の 3 つの条件を考慮します。
- サーバーとして使用する 3 台のマシン間には、非常に信頼性の高い接続が必要です。
- サーバーを選択する際には、プライマリ (マスター) サーバーを選択する必要があります。クライアントはまず最初にこのマシンに接続するので、ネットワーク トラフィックの大部分はこのサーバーに集中します。プライマリ サーバーは、ライセンス ファイルで最初にリストされているサーバーです。
- サーバーはサポートされているバージョンのオペレーティング システムで稼働していなければなりません。互換性の詳細については、こちらのページ を参照してください。
サーバーを選択したら、各サーバーのホスト ID を確認します。ライセンス ファイルを適切に生成するには、3 つのサーバー全てのホスト ID を登録しなければなりません。ホスト ID を確認するもっとも簡単な方法は、FLEXnet とともにインストールされる lmhostid ユーティリティを使用することです。このユーティリティをお持ちでない場合は、次のコマンドを使用できます。
- Windows: ipconfig /all
- Linux/macOS: ifconfig
- Mac: ifconfig
ホストIDは、ローカルエリアネットワークに接続しているデバイスの MAC アドレス または固定された IP アドレス のいずれかです。
ライセンス管理者は以下の手順でネットワーク ライセンス ファイルを生成できます。
- サポートされている Web ブラウザ を使用して ライセンス センター を開きます。ログインを求められます。 ライセンス ファイルを生成するには、ライセンスの管理者または アセット マネージャー の MathWorks.com 認証情報でログインする必要があることに注意してください。
- ライセンスセンター に表示されるテーブルからネットワークライセンスを選択します。ライセンスを選択すると、詳細情報が表示されます。
- [インストールとアクティベーション] タブを開きます。ライセンスが既にアクティベートされている場合は、[アクティベーションの停止] ボタンをクリックの上、新しい冗長サーバー用のアクティベーション枠を確保する必要があります。
- [ライセンスサーバーのアクティベーションを実行] ボタンをクリックの上、アクティベーションを開始します。次の画面で、[詳細オプション] ボタンをクリックし、[冗長ホスト ID 2]フィールドと[冗長ホスト ID 3]フィールドを展開します。フォームに必要事項を入力し、ライセンス サーバのオペレーティング システム、3 つのサーバーのホスト ID、および、必要に応じてアクティベーション ラベルをフォームに入力します。[続行] をクリックしてアクティベーションを完了します。
- 次の画面で、ライセンス ファイルとファイル インストール キーをダウンロードするか、電子メールで受信するかのいずれかを選択します。電子メールの受信では、ファイルに取り込む際にフォーマットに関する問題が発生する可能性があるため、ここでライセンス ファイルをダウンロードすることをお勧めします。
3 つのホスト ID を登録した後、以下のファイルが生成されました。MathWorks からダウンロードした直後のファイルは「未処理」のライセンス ファイルとなります。
# MATLAB license passcode file.
# LicenseNo: 123456 Host ID: 0018F5A4D788
# Host ID: 0018F5A5E899
# Host ID: 0018F5A6F900
INCREMENT MATLAB MLM 21 07-apr-2030 10 C8CE6D30C5C2 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
INCREMENT SIMULINK MLM 21 07-apr-2030 1 2BD6CB61F186 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
ライセンス ファイルは 3 つのホスト ID すべてにロックされています。
生成された license.lic を基に FLEXnet をインストールすると (インストールの手順についてはこのドキュメントの Section 5 を参照)、「処理済み」の license.dat ファイルが $MATLAB/etc ($MATLAB は MATLAB のルート ディレクトリ) (Windows で R2010b 以前のリリースをご使用の場合は $MATLAB\flexlm) に作成されます。この処理済みの license.dat ファイルは「未処理」のファイルとは異なり、ホスト マシンの名前を示す SERVER 行と、MLM バイナリへの特定のパスを示す DAEMON 行が追加されています。 セクション 5 に説明するインストール手順では、FLEXnet ソフトウェアを 3 回インストールします (各サーバーで 1 回ずつ、いずれも「未処理」のライセンス ファイルを使用してインストールを実行します)。その後、3 回のインストールで生成された 3 つの SERVER 行を、1 つのマスター ライセンス ファイルに統合します。たとえば、サーバーのホスト名が pooh、piglet、および rabbit の場合は、最終的なファイルは次のようになります。
SERVER pooh 0018F5A4D788 27000
SERVER piglet 0018F5A5E899 27000
SERVER rabbit 0018F5A6F900 27000
DAEMON MLM /usr/local/matlab/etc/MLM
# MATLAB license passcode file.
# LicenseNo: 123456 Host ID: 0018F5A4D788
# Host ID: 0018F5A5E899
# Host ID: 0018F5A6F900
INCREMENT MATLAB MLM 21 07-apr-2030 10 C8CE6D30C5C2 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
INCREMENT SIMULINK MLM 07-apr-2030 1 2BD6CB61F186 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
最終的な「処理済み」のライセンス ファイルには、ライセンス ファイルを作成した各ホスト ID に対して 1 行ずつ、3 行の SERVER 行が存在する必要があります。ただし、DAEMON 行は 1 行のみです。これは、3 台のサーバーすべてで FLEXnet を同じ場所にインストールしなければならないためです。このため、DAEMON 行で指定されるパスは 3 台のサーバー全て同一となります。
未処理のライセンス ファイルを使用して 3 台のサーバーにインストールを行う手順については、Section 5 を参照してください。 冗長サーバー構成で ライセンス マネージャーをインストールする方法は、単独サーバーへのインストール方法と基本的には同じです。主な違いは、インストールの手順を 3 回繰り返すことです。以下の手順に従って、インストールを完了します。インストールを行う前に、3 サーバー用ライセンス ファイルが生成されていること (セクション 3 を参照) を確認してください。
Install License Manager on License Server
3 台すべての Network License Manager のインストールが完了したら、 各インストール時に生成された SERVER 行を 1 つのマスター license.dat ファイルに追記する必要があります。 以下の手順に従って、サーバー構築を完了してください。
- 各サーバー・マシンで、$MATLAB/etc($MATLABはMATLABのルートディレクトリ)にある license.dat ファイルを探します。
- 各ファイルは、SERVER行を除いて同じであることに注意してください。最終的な license.dat ファイルには、これら3つのファイルから1つずつ、合計3つのSERVER行が含まれます。
- セカンダリ ライセンス サーバーと ターシャリ ライセンス サーバーの license.dat ファイルをプライマリ ライセンス サーバーにコピーします。
- 3つのファイルすべてをテキストエディタで開き、セカンダリサーバーとターシャリサーバーの license.dat ファイルの SERVER 行をコピーし、プライマリサーバーの license.dat ファイルに貼り付けます。ファイルの1行目はプライマリサーバーのSERVER行、2行目はセカンダリサーバーのSERVER行、3行目はターシャリサーバーのSERVER行とします。(4行目はDAEMON行となり、これは3台のマシンすべてに当てはまります)。
新しい license.dat ファイルは次のようになります:
SERVER pooh 0018F5A4D788 27000
SERVER piglet 0018F5A5E899 27000
SERVER rabbit 0018F5A6F900 27000
DAEMON MLM /usr/local/matlab/etc/MLM
# MATLAB license passcode file.
# LicenseNo: 123456 Host ID: 0018F5A4D788
# Host ID: 0018F5A5E899
# Host ID: 0018F5A6F900
INCREMENT MATLAB MLM 21 07-apr-2030 10 C8CE6D30C5C2 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
INCREMENT SIMULINK MLM 21 07-apr-2030 1 2BD6CB61F186 \
VENDOR_STRING=vi=0:at=200:lo=CN:lu=300:ei=966432: \
HOSTID=ID=518849 DUP_GROUP=UH asset_info=518849 \
ISSUED=07-Apr-2023 BORROW=720 SN=518849
最後に、3 行の SERVER 行を持つこの「処理済み」の license.dat ファイルを各サーバー マシンにコピーして、元の license.dat ファイルを置き換えます。元の license.dat ファイルはデフォルトで $MATLAB/etc ($MATLAB は MATLAB のルート ディレクトリ) に配置します。
このファイルは、MATLAB クライアントのインストール時にも使用されるため、アクセス可能な場所にコピーしておくことをお勧めします。
以下のリンクを参照の上、3台の Network License Manager それぞれでこの手順を行います。
MathWorks FLEXnetライセンスマネージャーの起動・停止はどのようにしますか?
クライアント/エンドユーザー向けMATLABのインストールは、以下のリンクから手順に従って行うことができます。
クライアント マシンへの製品のインストール
インストール完了後、クライアントPCの network.lic を削除し、システムの環境変数を設定する必要があります。クライアントの network.lic ファイルは、$MATLAB/licenses にあります。追加する環境変数は、すべてのプラットフォームで次のとおりです。:
MLM_LICENSE_FILE=port@server1,port@server2,port@server3
上記の "port" はライセンスファイルの SERVER 行の末尾にある番号 (27000 がデフォルト) を指し、"server" はライセンスファイルの SERVER 行で定義されているサーバのホスト名を指します。各サーバをコンマ(,)で区切ってください。
以上の手順でクライアントの冗長性が確保され、クライアント ライセンスのチェックアウト中にサーバに障害が発生した場合、クライアントはエラーをポストする代わりに次のサーバを検索します。また、ライセンスサーバーの ライセンス ファイルが変更された場合、クライアント ライセンス ファイルを更新する必要はありません。
システム環境変数の詳細な設定方法については、お使いのオペレーティング・システムのマニュアルを参照してください。