別の Windows マシン上の Worker の設定
Windchill サーバーマシンとは異なる Windows マシン上で、一般的にリモート Worker と呼ばれる Worker を設定できます。このシナリオの設定手順は、Windchill サーバーと同じマシン上で一般的にローカル Worker と呼ばれる Worker を設定する例と同じですが、
2 台のマシンで共有する共有ファイルシステムが必要です。
Worker Daemon を使用するのは、異なる Windows マシン上で Worker 起動スクリプトを実行するためです。この通信は、WorkerDaemon.exe という小さな実行ファイルを使用して行います。WorkerDaemon.exe は、Creo View アダプタのインストールの一部として、"PTC Worker Daemon" と呼ばれる Windows サービスとしてインストールされオプションで設定されます。以下の手順では、アダプタのインストール中に Worker Daemon がインストールされていることを前提とします。
Worker Daemon の安全な代替手法としては、「ローカルで実行」オプションを使用してローカル Windchill マシン上でスクリプトを実行することで、Worker へのセキュリティ保護された接続を開始して、SSH などを介して Worker 実行スクリプトを実行できます。
Windows 間共有ファイルシステムの作成
Windchill サーバーマシンと Worker マシンの間でファイルをやり取りするには、これら 2 台のマシンで共有ファイルシステムのディレクトリを共有する必要があります。このディレクトリは、いずれかのマシン (または 3 台目のマシン) に配置でき、サーバーおよび Worker マシン間のファイル転送ポイントとして機能します。最高のパフォーマンスを得るために、物理ファイルシステムは Worker マシンに配置してください。
* 
共有ファイルシステムを作成する方法 (マッピングされた Windows ドライブや FTP など) は多数あるので、この手順では共有ファイルディレクトリの作成について説明しません。マッピングされた Windows ドライブでは追加の設定手順を実行する必要があります。
* 
ネットワークファイルシステム (NFS) を使用している場合、このディレクトリをネットワークのどのマシン上にでも配置できますが、Windchill マシンと Worker マシンの両方にディレクトリをマウントできる必要があります。FTP を使用している場合、Worker マシンで実行中の FTP サーバーに対して Windchill マシンから接続が可能であり、Worker パスが Worker マシンのローカルディレクトリである必要があります。
共有ファイルシステムの作成後、サーバーマシンおよび Worker マシンが使用する共有ディレクトリへの絶対パスを書き留めてください。手順の後半でこれらのパスを入力する必要があります。
たとえば、サーバーマシンから共有ファイルシステムへの絶対パスは、以下のようになります。
X:\D_drive\shared_Worker_dir
Worker マシンから同じ共有ファイルシステムへの絶対パスは、以下のようになります。
D:\shared_Worker_dir
共有フォルダはサーバー上ではなく Worker マシン上に存在する必要があります。マッピングを使用している場合、Windchill サービスとそれを使用する Worker Agent を開始する前に、ドライブをマッピングするステップを Windchill サーバー起動スクリプトに追加することで、これがサービスとしてサポートされるようにします。
* 
この共有ファイルシステムは、Windchill サーバーの最初のインストール時に指定したユーザーアカウントから完全にアクセス可能である必要があります。共通ファイルシステムフォルダは Worker マシン上に存在する必要があり、サーバーにはこのフォルダへのアクセス権が必要です。このため、両方のマシンに同じログオンアカウントが必要になる可能性があります。これはセキュリティ上の問題で、Worker をインストールする前に、管理者がポリシーによって対処する必要があります。
異なる Windows マシンへの Worker の追加
Worker Agent は、システム上の Worker の場所を認識する必要があります。以下の一連の手順では、この Worker を使用できるように Worker Agent を設定する方法について説明します。
Worker 設定をローカルで実行するか、リモートで実行するかにかかわらず、設定手順はほぼ同じなので、共有する設定手順は繰り返し説明しません。可能であれば、「同じマシン上の Worker の設定」セクションに記載されている詳しい手順を参照してください。
1. 同じマシン上の Worker の設定のステップ 1 から 5 までを実行します。
2. このシナリオでは Windchill サーバーと Worker マシンが異なり、Worker が Windows マシン上にあるので、「Worker の場所」ウィンドウで「別の Windows NT マシン」を選択します。「次へ」をクリックします。
3. 「Worker 実行コマンド」の手順を次のように実行します。
このパネルで、Worker の起動に使用するスクリプトと実行時の設定を指定します。以下の各パラメータの値を入力します。
「コマンドを実行」 - 実行コマンドは、Creo View アダプタの設定中に作成される Worker スクリプトです。詳細については、Creo View MCAD Adapter Installation and Configuration Guide の関連するアダプタのセクションの「サーバー制御パブリッシング」の章を参照してください。このスクリプトへの完全パスを「コマンドを実行」テキストフィールドに入力します。ホストマシン上の Worker 実行ファイルを開始するバッチファイルを指定します。実行コマンドの例を次に示します。C:\ptc\creo_view_adapters\inventor_setup\inventorworker.bat
「ローカルで実行」- 「ローカルで実行」オプションは、「Worker の場所」ウィンドウで「別の Windows NT マシン」または「別の UNIX マシン」が選択されている場合に使用できます。これは実行コマンドが Windchill マシンでローカルなのか、ホストマシンでローカルなのかを指定するものです。「ローカルで実行」オプションを選択した場合、コマンドは Windchill マシンに対してローカルであり、Windchill サーバーがこれを直接実行します。コマンドはホストマシンで実行可能な Worker の起動方法を記述したものです。
「ローカルで実行」オプションが選択されていない場合、コマンドはホストに対してローカルであり、Windchill サーバーのリクエストに応じて Worker Daemon がこれを実行します。
「開始時間 (秒)」 - Worker およびシステムが完全に起動して初期化され、そのことを伝えるメッセージが表示されるまでの時間を秒単位で指定します。この値が十分に大きくないと、Worker を確実に起動できません。システムに応じて、設定を調整します。
「最大インスタンス」- この Worker の起動可能なインスタンスの最大数を指定します。Worker マシンがアプリケーションの複数のコピーを効率よく実行できる (つまり、十分なメモリを持つマルチプロセッサシステムを装備している) 場合にのみ、1 より大きい値に設定します。
「自動開始」- 必要に応じて Worker が自動的に起動するように設定するには、このオプションを選択します。再起動後にシステムを自動的に起動する場合、または Worker Agent が大量の要求に自動的に応答できるようにする場合は、このオプションを使用する必要があります。
「自動アイドル停止 (秒)」 - Worker が自動的に停止するまでのアイドル状態の時間を秒単位で指定します。このフィールドを空白のままにするか、ゼロ (0) に設定した場合、アイドル状態でも Worker は自動的に停止しません。使用していないライセンスを解放する必要がある場合は、このオプションを使用します。
「自動エラー停止」- 変換リクエストでエラーが発生した場合に Worker が自動的に停止するように設定するには、このオプションを選択します。このオプションは、エラー発生後にアプリケーションを不安定な状態に放置しないために使用します。
* 
関連する Worker の Recipe Editor 設定 (「Recipe Editor」 > 「Advanced」 > 「System」 > 「Error Handling」の順に選択) を使用して Worker のエラー動作を制御するほうが適切です。
「自動ビジー停止 (秒)」 - Worker が、変換の終了後に自動的に停止することなく、1 つの変換リクエストの処理に要する時間を秒単位で指定します。このフィールドを空白のままにするか、ゼロ (0) に設定した場合、変換の終了後も Worker は自動的に停止しません。
* 
関連する Worker のレシピエディタ設定 (「Recipe Editor」 > 「Advanced」 > 「System」 > 「Worker Configuration」) を使用して、Worker の変換リクエストを制御した方がよいでしょう。
「実行可能時間」 - Worker を有効にする時間と日付をリストすることで、この Worker を使用できるかどうかを制御できます。これは、<開始時刻> - <終了時刻> -<曜日> というフォーマットの時刻のコンマ区切りリストです。詳細については、Windchill ヘルプセンターを参照してください。
* 
Worker の TCIPIP 接続 Keepalive タイムアウト値を設定できます。このタイムアウトは、次のように環境変数 PVIEW_WORKER_SETKEEPALIVE を設定することによって、Worker の実行環境または Worker 実行スクリプトで設定できます。
PVIEW_WORKER_SETKEEPALIVE = <タイムアウト> と設定します。ここで、<タイムアウト> は、選択した TCPIP 接続 Keepalive タイムアウトの秒数です。
「Worker デーモンポート」ウィンドウで、Windchill サーバーで実行されている Worker Daemon が通信するポート番号を指定します。この手順では、Creo View アダプタのインストール時に Worker Daemon がインストールされ、設定されていることを前提としています。
デフォルトの 601 を使用するか、適切なポート番号を入力します。Worker Daemon のインストールと設定の詳細については、Creo View MCAD Adapters Installation and Configuration Guide の「Windows サービスとしての Worker Daemon の実行」を参照してください。
4. 「共通ファイルシステム」ウィンドウで、共有ファイルシステムへの接続に必要な情報を入力します。
「Windchill マシンパス」 - K:\jsmith\SharedFolder のように Worker マシン上の共有にマッピングされたドライブなど、Windchill マシンを基準にした共通ファイルシステムの場所を入力します。
「WorkerHost (つまり <マシン名>) パス (Worker)」(<マシン名> Path (Worker)) - マッピングされたドライブを介して Windchill サーバーが接続する共有フォルダなど、CAD Worker マシン上の共通ファイルシステムの場所を入力します。この例のパスは以下のようになります。
C:\SharedFolder\
「FTP ユーザー名」- FTP ユーザー名を入力します (転送メカニズムとして FTP が使用されている場合にのみ該当)。
「FTP パスワード」- FTP パスワードを入力します (転送メカニズムとして FTP が使用されている場合にのみ該当)。
* 
PTC では Worker と別のマシンとの間でのアノニマス (匿名) FTP 通信をサポートしません。Worker と別のマシンを FTP で接続する場合、FTP ユーザー名およびパスワードを入力する必要があります。入力しない場合、Windchill は Worker Agent を認識しません。
5. 「次へ」をクリックして「Worker サマリー情報」パネルを表示します。このパネルに、Worker の追加プロセスで入力または選択した値が表示されます。
6. このパネルで Worker 設定情報を確認します。「戻る」ボタンを使用して、前のステップに戻って修正を行います。このパネルに表示されている Worker 情報が正しいことを確認した後、「適用」をクリックします。
7. 「Worker 設定」ウィンドウ (設定のステップ 1) に戻ります。「ファイルを保存」をクリックして、<Windchill>\codebase\agent.ini ファイルに設定の変更内容を保存します。
8. 「Worker Agent を再読み込み」をクリックして変更を決定し、「Worker Agent 管理」Worker エントリを更新します。
9. 「Worker Agent 管理に戻る」をクリックします。
10. 以下の「Worker 設定の拡張されたセキュリティ手法」の手順に従います。
Worker 設定の拡張されたセキュリティ手法
WVS の Worker を設定するときに、Windchill サーバーまたはリモート Worker マシンで Worker を起動するためのコマンドは、管理者が agent.ini ファイルで設定します。Windchill 10.2 におけるセキュリティの更新により、このファイルを不正に変更してほかの OS コマンドを実行しようとする試みが防止されています。Worker は、worker.exe.allowlist.prefixes プロパティに指定されたプレフィックスのいずれかに一致する場合にのみ使用され、それ以外の Worker は無視されます。
OS コマンドを実行する前に、wvs.properties ファイルに適切な値を追加して、コマンドを含むプレフィックスを site.xconf で設定する必要があります。プロパティ設定の詳細は、wvs.properties.xconf ファイルの「WORKER EXECUTABLE PREFIX SETTINGS」セクションで確認できます。
worker.exe.allowlist.prefixes プロパティを使用すると、任意のホストの任意の Worker で使用可能な、コマンドのプレフィックスのリストを指定できます。
また、worker.exe.allowlist.prefixes.<worker_host> 形式のプロパティを使用すると、Worker ホストごとにコマンドのプレフィックスのリストを指定できます。
次の使用例は、worker.exe.allowlist.prefixes プロパティの設定方法を示しています。
<Property name="worker.exe.allowlist.prefixes" overridable="true"
targetFile="codebase/WEB-INF/conf/wvs.properties"
value=" C:\|D:\|G:\|/|nohup /"/>
この設定は、Windows の C、D、および G ドライブに存在するすべての Worker と、Unix/Linux のすべての Worker の実行を許可します。垂直バー (パイプ) は、プレフィックスを区切るために使用します。
* 
プロパティ worker.exe.allowlist.prefixes が前述のように設定されていない場合、Worker Agent 設定のテストは成功しません。
これで、Windchill サーバーと同じマシン上で Worker を使用するための Worker Agent の設定が終了しました。テスト方法や設定の正しさを確認する方法については、Worker Agent 設定のテストを参照してください。
これは役に立ちましたか?