ライセンス・パーティショニングは、様々な条件に基づいてライセンスをグループ分けする方法です。これにより、複数のライセンスサーバによるライセンスの分割が不要になり、代わりに単一サーバで仮想的にライセンスを分割できます。
ライセンス・パーティショニングは、ライセンスへのアクセスを制御し、重要なライセンスを必要なアーティストだけに限定し、他のアーティストからの意図しないライセンスの取得をブロックするのにも最適な方法です。
この機能の使用には、最低 18.5 のライセンス サーバ (sesinetd) が必須です。
ライセンス・パーティショニングを有効にするには、ライセンス・ファイルと同じディレクトリにある sesinetd.ini ファイルを編集する必要があります。(このファイルがない場合、ご自身で作成してください)各ライセンスは以下のディレクトリに保存されています。
Windows:
C:\Windows\keys\
Linux:
/usr/lib/sesi/
Mac:
/Library/Preferences/sesi/
sesinetd.ini ファイルをテキストエディタで開き、以下の変数を追加します。
enablePartitioning=1
次に隠しファイル .partition.json を licenses ファイルと同じディレクトリに作成、この .json ファイルに、パーティション情報を含めます。(最初の.も含めて名前は固定です。)
user_groupsを使い、グループ分けしていきます。
例えば、IPでグループ分けしたい場合、ip_address matchesを使用することができます。
レンダーファームのアドレスで分けたい場合、machine_name matches
ユーザー名で分けたい場合、"username"を使用することができます。
次に各グループにどのライセンスを使用させるのか"license_partitions"を使用します。
この場合、licenseidで使用するライセンスを指定したり、productで製品名を指定することが可能です。
quantityを使用することで、ライセンス内でさらに使用可能なライセンス数まで指定することが可能です。
{ "user_groups": [ { "name": "Studio", "if": "ip_address matches [10.1.1.*, 192.168.*.*, 127.0.0.*]" }, { "name": "Studio Render Group", "if": "machine_name matches '^[a-zA-Z0-9_.]*.render.com$'" }, { "name": "Experimental Users", "if": "username in ['user1', 'user2', 'user3']" }, { "name": "PDG Team", "if": "username in ['user1', 'user2']" } ],
"license_partitions": [
{
"if": "licenseid == '5659b4fe'",
"user_group": "Studio",
"quantity": 3,
},
{
"if": "(product == 'Houdini Engine' or product == 'Houdini FX') and version >= 17.0",
"user_group": "Studio",
"quantity": 2
},
{
"if": "(product == 'Renderer' || product == 'Karma-Renderer')",
"user_group": "Studio Render Group",
"quantity": 1
},
{
"if": "product == 'Beta'",
"user_group": "Beta Testers"
},
{
"if": "product == 'Houdini-Master-Experimental'",
"user_group": "Experimental Users"
},
{
"if": "product == 'PilotPDG'",
"user_group": "PDG Team"
}
]
}
最後に、Houdini License Serverを下記を参照に再起動します。
Windows:
Windows の Services で Houdini License Server を開始/終了できます。
- コントロール パネル -> Administrative Tools -> Services に行きます。
- HoudiniLicenseServer という名のサービスがあり、開始/終了/再起動可能です。
Linux:
/etc/init.d
にある sesinetd スタートアップ スクリプトを実行します。- 使用法:
/etc/init.d/sesinetd {start|stop}
Mac:
Applications > Utilities > Terminal でターミナルを開き次のコマンドを入力します
- 開始するには (すべて一行で):
sudo launchctl load /Library/LaunchDaemons/com.sidefx.sesinetd.plist
- 終了するには(すべて一行で):
sudo launchctl unload /Library/LaunchDaemons/com.sidefx.sesinetd.plist
もし "/Library/LaunchDaemons/com.sidefx.sesinetd.plist: No such file or directory" というようなエラーがでた場合は、Houdini インストーラを再実行して Commercial Licensing をインストールしてください。これにより必要なファイルがインストールされます。
ライセンスサーバプロセスを再起動してもリモートクライアントは5分ほどはセッションを失いません。
詳細は下記のページをご参照いただければ幸いです。
https://www.sidefx.com/ja/faq/question/how-do-i-setup-license-partitioning/
https://www.sidefx.com/ja/docs/houdini/ref/utils/sesinetd.html#partitioning