高可用性 Windchill クラスタでの Worker Agent の設定
このセクションでは、高可用性 Windchill クラスタで Windchill Visualization Services (WVS) を設定するための要件について説明します。
|
Windchill 10.2 は、PTC が正式に高可用性クラスタ設定をサポートするようになった最初のリリースです。
|
このセクションの設定例は、クラスタ設定での WVS の制御に特化した
wt.propertiesファイルの設定のみを示します。
高度な展開の検討事項のセクションには、高可用性クラスタ設定をセットアップするための詳細な手順が記載されています。詳細については、
Windchill ヘルプセンター の
クラスタ Windchill 環境のインストールと設定および
バックグラウンドメソッドサーバーの設定のセクションを参照してください。
バックグラウンドメソッドサーバーを使用するための WVS 設定
WVS Worker Agent が高可用性クラスタで効率的に機能するには、特殊な設定要件が満たされている必要があります。Worker Agent は現在、バックグラウンドメソッドサーバーが WVS を実行するように設定されているすべてのクラスタノードに対して単一の変換サービス (Worker のプール) を提供していません。Worker は、複数の Worker Agent 間で一般的なリソースとして共有できず、特定の 1 つの Worker Agent インスタンスで使用される必要があります。バックグラウンドメソッドサーバーで WVS を実行するように設定されているクラスタノードは Worker Agent インスタンスも実行するため、ノードごとに専用 Worker のリストを定義する Worker Agent 設定 (agent.ini)が必要です。
バックグラウンドメソッドサーバーで WVS を実行するには、クラスタ内の特定のノードが識別される必要があります。これらのサーバーは、以下を実行するように設定されている必要があります。
• WVS パブリッシャサービス (Windchill PublisherQueue キューの実行)
• WVS ローダーサービス
• Worker Agent サービス
WVS パブリッシャ、ローダー、および Worker Agent サービスの設定
すべての PublisherQueue を含んでいる WVS キューグループを処理するように設定されている WVS サービスを実行するには、各クラスタノードがバックグラウンドメソッドサーバーを識別する必要があります。バックグラウンドメソッドサーバーの起動コマンドは、wt.queue.queueGroupプロパティの値を、WVS PublisherQueue が割り当てられている特定の Windchill キューグループ名 (WVS など) に設定するように設定されています。
バックグラウンドメソッドサーバーで WVS サービスを実行する方法を理解できるように、以下にプロパティ例を示します。
より詳細なコンフィギュレーションについては、
複数のバックグラウンドメソッドサーバーの設定を参照してください。
1. 特定のバックグラウンドメソッドサーバーが、たとえば "WVS" という名前の新しいキューグループでキューを実行するように設定します。これを行うには、バックグラウンドメソッドサーバーの起動コマンドで指定されている wt.queue.queueGroupプロパティの値を更新します。
バックグラウンドメソッドサーバー名が "BackgroundMS_WVS" である場合、キューグループは wt.propertiesの次のプロパティで定義されているスタートアップコマンドのパラメータ 5 によって設定されます。
wt.manager.cmd.BackgroundMS_WVS = $(wt.manager.cmd.MethodServer)
wt.method.serviceName\={1}
wt.queue.executeQueues\=true
wt.queue.queueGroup\={5}
wt.intersvrcom.sitePing\=false
wt.adapter.enabled\=false
wt.method.minPort\=3000
パラメータ #5 を設定するには、次のように設定します。
<Property name="wt.manager.cmd.BackgroundMS_WVS.param.5" overridable="true"
targetFile="codebase/wt.properties" value= "WVS"/>
新しいバックグラウンドメソッドサーバーを起動して監視するように Windchill を設定するには、以下を設定するか、ほかのバックグラウンドメソッドサーバーが存在する場合は既存のリストに名前を追加します。以下に例を示します。
<Property name="wt.manager.monitor.services" overridable="true"
targetFile="codebase/wt.properties" value="Methodserver BackgroundMS_WVS"/>
2. WVS Worker Agent とローダーサービスが新しいキューグループ "WVS" で実行されるように設定するには、以下を設定して wvs.propertiesファイル内の "WVS" に wvs.queueGroup プロパティを追加します。
<Property name=wvs.queueGroup overridable="true"
targetFile="codebase/WEB-INF/conf/wvs.properties" value="WVS"/>
3. 新しいキューグループを設定し、新しく設定したバックグラウンドメソッドサーバーを起動するために Windchill を再起動します。
4. Windchill キュー管理ユーティリティを使用して、すべての WVS キューを新しいキューグループ "WVS" に割り当てます。これにより、新しいバックグラウンドメソッドサーバーでパブリッシャキューが実行されます。
Worker マシンをインストールして設定します。
• 設定したバックグラウンドメソッドサーバーおよび Worker Agent ごとに一連の Worker を定義します。
• 単一の Worker ホストで複数の Worker を設定できます。
• Worker は、設定した Worker Agent のいずれか 1 つのみに接続するように設定できます。
Windchill Visualization UI の設定
以下の操作を実行して、Windchill UI が高可用性オプションをサポートするように設定します。
|
このコンフィギュレーションでは、publish.tempdirが配置されている単一のマシンにそれぞれの WVS メソッドサーバーが依存するため、それが WVS パブリッシングのもう 1 つの単一障害点になる可能性があります。
|
• 「実行中」のパブリッシングジョブの詳細が「WVS ジョブモニター」に表示されるようにするには、wvs.properties の publish.tempdir プロパティをクラスタの各ノードの共有フォルダ (X:\pubtemp など) に設定します。
<Property name="publish.tempdir"
overridable="true"
targetFile="codebase/WEB-INF/conf/wvs.properties"
value="<shared pubtemp folder>"/>
• 「新規製品表現」ウィザードがローカルデータから製品表現を作成できるようにするには、wvs.properties の publish.tempuploaddir プロパティをクラスタの各ノードの共有フォルダ (X:\uploadtemp など) に設定します。
<Property name="publish.tempuploaddir"
overridable="true"
targetFile="codebase/WEB-INF/conf/wvs.properties"
value="<shared pubtemp folder>"/>
例: クラスタ図
次の例では、3 つのクラスタノードと 2 つの Worker ホストが使用されています。クラスタノードはそれぞれバックグラウンドメソッドサーバーを実行するように設定されています。各ノードのバックグラウンドメソッドサーバーの Worker Agent では 2 つの Worker が設定されています (Worker ホストにつき 1 つ)。
パブリッシング容量およびスループットを拡張し、高可用性クラスタ設定に必要な過剰拘束を維持するために、Worker ホストと Worker のどちらかまたは両方を追加して設定できます。追加の Worker は、十分なメモリリソースを維持しながら、使用可能な CPU の数を上限として、既存の Worker ホストに分散する必要があります。
| • Windchill Worker Agent 管理 UI は、特定のノードの Worker Agent 設定 (agent.ini) にアクセスできません。したがって、各ノードの一連の専用 Worker を更新するには、そのノードでテンプレートを使用するなどして手動で agent.ini ファイルを編集する必要があります。 • 高可用性クラスタ設定でパブリッシングが進行中であるときに、フェイルオーバーが発生すると、障害の発生したバックグラウンドメソッドサーバーで処理されていた実行中のパブリッシングジョブは「実行中」状態のままになり、処理されません。 |