HQueueで分散シミュレーションを行う際の注意点について


HQueueにおいて分散シミュレーションを行う際にはいくつかの注意事項があります。

今回はその注意事項について、まとめましたので紹介させていただきます。


また、HQueue全体のトラブルシューティングについてはこちらの記事をご参照ください。
Houdiniジョブ管理ツールHQueueのよくあるご質問(前編)
Houdiniジョブ管理ツールHQueueのよくあるご質問(後編)
※旧バージョンでの検証のため、最新版では一部エラーメッセージの表記が異なっている可能性があります。ご了承ください。

ここでは、以下の内容について紹介していこうと思います。
IPアドレスは固定する
ファイルパスにはUNCパスを利用する
バージョンの統一
ポートの開放について
共有サーバのアクセス権限について

 

IPアドレスは固定する

分散シミュレーションには限定しませんが、基本的にはHQueueはIPアドレスとホスト名のセットでクライアントを認識しているので、
どちらかが変わってしまうと、別のクライアントとして認識されてしまいます。
IPアドレスとDHCPで設定しておりますと、何かの拍子にDHCPがIPアドレスの再配布を行ってしまうと、クライアントが正しく認識されません。
もし、クライアントがジョブを実行しているタイミングでIPアドレスが変更されてしまったらジョブが正常に終了しないといった問題も発生しますので、
極力HQueueに利用する端末のIPアドレスは固定した状態にしてください。
また、ホスト名はユーザが意図して変更するものですので、
変更の際には別のクライアントとして認識される、という点を把握していただいた形で行っていただければと思います。

 

ファイルパスにはUNCパスを利用する

以前の記事でも指摘されている通り、HQueueにおいてはファイルパスはUNC表記を推奨しております。
HQueueでIFDをレンダリングする際の注意点(Windows)
以前の記事では、ドライブレターとの比較を行っておりましたが、実はホストネームでの表記も、
ネットワーク環境によってはDNSキャッシュの状態によって遅延が発生することも十分考えられますので、避けた方が無難であるといえます。
特に分散シミュレーションの場合はクライアント同士でのアクセスが頻繁に行われるので、不安要素をなるべく排斥する意味でも、IPアドレスを用いたUNCパスでの表記を推奨します。

 

バージョンの統一

これは分散レンダリングの際にも大事なことですが、Houdiniのバージョンは全てのクラインアントで統一してください。
Houdiniバージョンがクライアント間で異なると、思わぬ問題を発生させる可能性がありますので、確実に統一させてください。
Target HFSを共有サーバ上から参照するという方法もありますが、共有サーバの性能やネットワーク環境がしっかりしていないと、実行速度に大きく影響します。
クライアントマシンのOSが違うなど、インストール先のフォルダがクライアントによって異なる場合は共有サーバから参照せざるを得ないですが、ローカルのHoudiniが参照できるなら、そちらが推奨されます。
また、HQueueServerのバージョンについては、必ずしもクライアントのHoudiniのバージョンと一致させる必要はないという説明をSideFXからいただいております。
しかし、バグ修正の問題や細かな仕様変更がある場合もありますので、なるべく統一させた方が良いとのことでした。

 

ポートの開放について

HQueueではサーバでは5000番、クライアントでは5001番を利用しております。
この2つをファイアウォールで通信許可を行わないと、HQueue関係は正常に動作しない、ということは広く知られているかと思います。
しかし、分散シミュレーションにおいては分散処理の過程でRun Trackerというシステムが稼働します。
このシステムが任意の未使用のポートを自動的に使用して通信を行うため、分散シミュレーションを行う場合はRun Trackerが使用する範囲のポートも解放しなければなりません。
しかし、Run Trackerが使用するポートの範囲をSideFXに確認したところ、40000-65535と範囲が極めて広いため、ポート番号だけを指定するのはセキュリティ的に推奨できません。
分散シミュレーションを行う際はIPアドレスを固定した上で、IPアドレス基準での通信許可の設定を行うようにするのが良いでしょう。

 

共有サーバのアクセス権限について

複数のマシンで分散レンダリングを行う際は、共有サーバ上にデータを置くことになるかと思います。
この際に、共有サーバに対するファイルのアクセス権についての設定が行われていない例が、たびたび報告されております。
特に共有サーバにNASを利用されている場合は、NASのファイルアクセス権限の設定だけでなく、アクセスユーザーの権限の設定も必要になることをご留意ください。