ワークフロー管理サービスのインストールと構成
このトピックでは、ワークフロー管理サービス (WMS) をインストールおよび構成する方法について説明します。
WMS のインストール
AppFabric をインストールすると、WMS 機能に関連した次の操作が実行されます。
WorkflowManagementService.exe ファイルが C:\Windows\System32\AppFabric フォルダーにコピーされます。
次の WMS セクションがルート Web.config ファイルに追加されます。 WMS インスタンスは名前のない状態で構成されます。 <persistence><workflowManagement> セクションはルート Web.config にロックされます。
<configuration> <microsoft.applicationServer> <persistence> <workflowManagement> <workflowManagementServiceInstances> <workflowManagementServiceInstance name="" /> </workflowManagementServiceInstances> </workflowManagement> </persistence> </microsoft.applicationServer> </configuration>
ヒント
既定の WMS インスタンスは無名 (名前がない) インスタンスです。
WorkflowManagementService.exe.config ファイルが C:\Windows\System32\AppFabric にコピーされ、次のセクションが構成ファイルに追加されて、マルチコア コンピューターまたはマルチプロセッサ コンピューターでの効率的なガベージ コレクションが有効になります。
<configuration> <runtime> <gcServer enabled="true" /> </runtime> </configuration>
AppFabric に必要な SQL 項目が作成されます。このとき、C:\Windows\System32\AppFabric\Schema フォルダーに Create_Persistence_Schema.sql および Create_Persistence_Logic.sql が作成されて実行されます。
ワークフロー管理サービスが Windows サービスとしてインストールされます。 [サービス] コントロール パネル アプレットでのサービスの表示名は "Application Server Workflow Management" です。
特定のインスタンス ストアを監視するための WMS の構成
WMS の既定では、Web.config ファイルに定義されているすべてのインスタンス ストアが監視されます。 特定のインスタンス ストアを監視するように WMS を構成することもできます。 そのための手順は次のとおりです。
インスタンス ストアのベンダーが指定する手順を使用して、インスタンス ストアを作成し、構成します。
WMS で監視するインスタンス ストアをルート Web.config ファイルに追加します。次の構成例の断片を参照してください。
<configuration> <microsoft.applicationServer> <persistence> <workflowManagement> <workflowManagementServiceInstances> <workflowManagementServiceInstance name=""> <instanceStores> <instanceStore name="storeA" location="[root, SiteName or VPath]" /> <instanceStore name="storeB" location="[root, SiteName or VPath]" /> </instanceStores> </workflowManagementServiceInstance> </workflowManagementServiceInstances> </workflowManagement> </persistence> </microsoft.applicationServer> </configuration>
[サービス] スナップインを使用して "Application Server Workflow Management" サービスを開始します (サービスがまだ開始されていない場合)。
複数の WMS インスタンスの構成
警告
現時点では、これはサポートされているシナリオではありません。
システムで複数の WMS インスタンスを実行している場合は、さらに workflowManagementServiceInstance 要素を構成ファイルに追加し、各インスタンスに名前を指定する必要があります。次の構成例の断片を参照してください。 次の例では、WMS-1 と WMS-2 という 2 つの WMS インスタンスを構成しています。 WMS-1 は、インスタンス ストアである storeA と storeB を監視するように構成します。WMS-2 は、インスタンス ストア storeC を監視するように構成します。
<configuration>
<microsoft.applicationServer>
<persistence>
<workflowManagement>
<workflowManagementServiceInstances>
<workflowManagementServiceInstance name="">
<instanceStores>
<instanceStore name="storeA" location="[root, SiteName or VPath]" />
<instanceStore name="storeB" location="[root, SiteName or VPath]" />
</instanceStores>
</workflowManagementServiceInstance>
<workflowManagementServiceInstance name="WMS-1">
<instanceStores>
<instanceStore name="storeC" location="[root, SiteName or VPath]" />
</instanceStores>
</workflowManagementServiceInstance>
<workflowManagementServiceInstance name="WMS-2">
<instanceStores>
<instanceStore name="storeD" location="[root, SiteName or VPath]" />
<instanceStore name="storeE" location="[root, SiteName or VPath]" />
<instanceStore name="storeF" location="[root, SiteName or VPath]" />
</instanceStores>
</workflowManagementServiceInstance>
</workflowManagementServiceInstances>
</workflowManagement>
</persistence>
</microsoft.applicationServer>
</configuration>
WMS の各インスタンスをサービスとしてサービス コントロール マネージャー (SCM) に登録する場合、–name パラメーターを使用してインスタンスの名前を指定する必要があります。 たとえば、前に挙げた構成ファイルを使用する場合は、2 つの WMS インスタンスを登録する必要があります。 最初のインスタンスは、name で指定した名前で WMS-1 に登録します。2 番目のインスタンスは、name で指定した名前で WMS-2 に登録します。
ヒント
WMS にロードされたインスタンス ストア オブジェクトが原因で例外が発生した場合は、WMS プロセス全体が停止する可能性があります。 これは、WMS にロードされたその他すべてのインスタンス ストアに影響します。 このシナリオでは、プロセス分離のために、異なるインスタンスに異なる WMS インスタンスを割り当てることができます。
重要
WMS で使用される永続化ストアとエンドポイントの保護については、「永続化ストアのセキュリティ構成」を参照してください。
ワークフロー管理サービスのリモート機能の構成
ワークフロー管理サービスでリモート機能を使用するには、リモート接続に適切に流れるように ID に許可する必要があります。 Windows7 R2 以外のシステムで ワークフロー管理サービス を実行する場合は、次のように構成する必要があります。
<configuration>
<runtime>
<gcServer enabled="true"/>
<legacyImpersonationPolicy enabled=”false”/>
<alwaysFlowImpersonationPolicy enabled=”true”/>
</runtime>
</configuration>
2011-12-05