テンプレートからESXサーバー上のVMのクローンを作成しています。簡略化されたコードは次のようになります。
Workflow Create-VM {
$List = 1..500
foreach -parallel ($Elem in $List)
{
# Create VM ...
# Configure created VM ..
}
}
Create-VM
並列実行は非常に役立ちます。残念ながら、この場合はうまく機能しません。生成される並列要求が多すぎます。並列実行の数をより少ない数(たとえば4)に制限する必要があります。
ローカルセッション構成(SessionThrottleLimit、MaxSessionsPerWorkflow、MaxRunningWorkflows)http://technet.microsoft.com/en-us/library/hh849862.aspxを変更しようとしました。
$WWE = New-PSWorkflowExecutionOption -SessionThrottleLimit 4
Set-PSSessionConfiguration -Name microsoft.powershell.workflow `
-SessionTypeOption $WWE
Get-PSSessionConfiguration microsoft.powershell.workflow |
fl SessionThrottleLimit
質問
- 並列実行の数を4に制限するには、セッション構成のどのパラメーター(または組み合わせ)を変更する必要がありますか?
- それをどのように達成できるか他の方法はありますか(たとえば、ワークフローを実行する別の方法...)?