New-PSWorkflowExecutionOption
Erstellt ein Objekt, das Sitzungskonfigurationsoptionen für Workflowsitzungen enthält.
Syntax
New-PSWorkflowExecutionOption
[-PersistencePath <String>]
[-MaxPersistenceStoreSizeGB <Int64>]
[-PersistWithEncryption]
[-MaxRunningWorkflows <Int32>]
[-AllowedActivity <String[]>]
[-OutOfProcessActivity <String[]>]
[-EnableValidation]
[-MaxDisconnectedSessions <Int32>]
[-MaxConnectedSessions <Int32>]
[-MaxSessionsPerWorkflow <Int32>]
[-MaxSessionsPerRemoteNode <Int32>]
[-MaxActivityProcesses <Int32>]
[-ActivityProcessIdleTimeoutSec <Int32>]
[-RemoteNodeSessionIdleTimeoutSec <Int32>]
[-SessionThrottleLimit <Int32>]
[-WorkflowShutdownTimeoutMSec <Int32>]
[<CommonParameters>]
Beschreibung
Das New-PSWorkflowExecutionOption
Cmdlet erstellt ein Objekt, das erweiterte Optionen für Workflowsitzungskonfigurationen enthält, d. h. Sitzungskonfigurationen zum Ausführen von Windows PowerShell-Workflowworkflows.
Sie können das PSWorkflowExecutionOption -Objekt verwenden, das New-PSWorkflowExecutionOption
als Wert des SessionTypeOption-Parameters von Cmdlets generiert wird, die eine Sitzungskonfiguration erstellen oder ändern, z. B. die und Set-PSSessionConfiguration
cmdletsRegister-PSSessionConfiguration
.
Jeder Parameter des New-PSWorkflowExecutionOption
Cmdlets stellt eine Eigenschaft des Workflowsitzungskonfigurationsoptionsobjekts dar, das das Cmdlet zurückgibt. Wenn Sie einen Parameter weglassen, erstellt das Cmdlet das Objekt mit einem Standardwert für die Eigenschaft.
Das New-PSWorkflowExecutionOption
Cmdlet ist Teil des Windows PowerShell-Workflowfeatures.
Sie können diesem Befehl auch allgemeine Workflowparameter hinzufügen. Weitere Informationen zu allgemeinen Workflowparametern finden Sie unter about_WorkflowCommonParameters.
Dieses Cmdlet wird in Windows PowerShell 3.0 eingeführt.
Beispiele
Beispiel 1: Erstellen eines Workflow options-Objekts
New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
SessionThrottleLimit : 100
PersistencePath : C:\Users\User01\AppData\Local\Microsoft\Windows\PowerShell\WF\PS
MaxPersistenceStoreSizeGB : 10
PersistWithEncryption : False
MaxRunningWorkflows : 30
AllowedActivity : {PSDefaultActivities}
OutOfProcessActivity : {InlineScript}
EnableValidation : True
MaxDisconnectedSessions : 200
MaxConnectedSessions : 100
MaxSessionsPerWorkflow : 10
MaxSessionsPerRemoteNode : 5
MaxActivityProcesses : 5
ActivityProcessIdleTimeoutSec : 60
RemoteNodeSessionIdleTimeoutSec : 60
WorkflowShutdownTimeoutMSec : 500
Dieser Befehl verwendet das New-PSWorkflowExecutionOption
Cmdlet, um den MaxSessionsPerWorkflow-Wert auf 10 zu erhöhen und den MaxDisconnectedSessions-Wert auf 200 zu verringern.
Die Ausgabe zeigt das vom Cmdlet zurückgegebene Objekt.
Beispiel 2: Verwenden eines Workflow options-Objekts
# Create a Workflow Options object and save it in a variable
$wo = New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
# Create the ITWorkflow session configuration
Register-PSSessionConfiguration -Name ITWorkflows -SessionTypeOption $wo -Force
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Type Keys Name
---- ---- ----
Container {Name=ITWorkflows} ITWorkflows
Get-PSSessionConfiguration ITWorkflows | Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : http://schemas.microsoft.com/powershell/ITWorkflows
MaxConcurrentCommandsPerShell : 1000
allowedactivity : PSDefaultActivities
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
maxsessionsperworkflow : 10
lang : en-US
sessionconfigurationdata : <SessionConfigurationData>
<Param Name='PrivateData'>
<PrivateData>
<ParamName='enablevalidation' Value='True'/>
<Param Name='allowedactivity'Value='PSDefaultActivities' />
<Param Name='outofprocessactivity' Value='InlineScript'/>
<Param Name='maxdisconnectedsessions' Value='200' />
<ParamName='maxsessionsperworkflow' Value='10'/>
</PrivateData>
</Param>
</SessionConfigurationData>
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 25
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
outofprocessactivity : InlineScript
SDKVersion : 2
Name : ITWorkflows
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
enablevalidation : True
Enabled : True
maxdisconnectedsessions : 200
MaxShellsPerUser : 25
Permission :
Die ersten beiden Befehle erstellen ein neues Sitzungskonfigurationsobjekt und registrieren es.
Der dritte Befehl verwendet das Get-PSSessionConfiguration
Cmdlet zum Abrufen der ITWorkflows-Sitzungskonfiguration und zum Format-List
Anzeigen aller Eigenschaften der Sitzungskonfiguration in einer Liste. Die Ausgabe zeigt, dass die Workflowoptionen in der Sitzungskonfiguration angezeigt werden. Insbesondere verfügt die Sitzungskonfiguration über eine MaxSessionsPerWorkflow-Eigenschaft mit dem Wert 10 und einer MaxDisconnectedSessions-Eigenschaft mit dem Wert 200.
Parameter
-ActivityProcessIdleTimeoutSec
Bestimmt, wie lange jeder Aktivitätshostprozess beibehalten wird, nachdem er in den Leerlauf gewechselt ist. Wenn das Intervall abläuft, wird der Prozess geschlossen.
Geben Sie einen Wert in Sekunden ein. Der Standardwert lautet 60.
Typ: | Int32 |
Position: | Named |
Standardwert: | 60 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-AllowedActivity
Gibt die Aktivitäten an, die in der Sitzung ausgeführt werden dürfen.
Geben Sie namespacequalifizierte Aktivitätsnamen ein, z Microsoft.Powershell.HyperV.Activities.*
. B. .
Platzhalterzeichen werden unterstützt. Der Standardwert PSDefaultActivities umfasst die integrierten Windows Workflow Foundation-Aktivitäten und die Aktivitäten, die die wichtigsten Windows PowerShell-Cmdlets darstellen.
Typ: | String[] |
Position: | Named |
Standardwert: | PSDefaultActivities |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-EnableValidation
Stellt sicher, dass alle Workflowaktivitäten in der Sitzung in der Liste zulässiger Aktivitäten enthalten sind.
Der Standardwert ist True. Verwenden Sie zum Deaktivieren der Überprüfung das folgende Befehlsformat: -EnableValidation:$false
.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | True |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxActivityProcesses
Gibt die maximale Anzahl von Prozessen an, die in der Sitzung zur Unterstützung von Workflowaktivitäten erstellt werden kann. Der Standardwert ist 5.
Typ: | Int32 |
Position: | Named |
Standardwert: | 5 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxConnectedSessions
Gibt die maximale Anzahl von Remotesitzungen an, die sich in einem betriebsbereiten Zustand befinden. Dieses Kontingent gilt für Sitzungen, die mit allen Remoteknoten (Zielcomputern) verbunden sind. Der Standardwert ist 100.
Typ: | Int32 |
Position: | Named |
Standardwert: | 100 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxDisconnectedSessions
Gibt die maximale Anzahl von Remotesitzungen an, die sich in einem getrennten Zustand befinden. Dieses Kontingent gilt für Sitzungen, die mit allen Remoteknoten (Zielcomputern) verbunden sind. Der Standardwert lautet „1000“.
Typ: | Int32 |
Position: | Named |
Standardwert: | 1000 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxPersistenceStoreSizeGB
Gibt die maximale Größe des Persistenzspeichers, der von in der Sitzung ausgeführten Workflows belegt wird, in GB an. Bei einer Überschreitung der Größe wird der Persistenzspeicher erweitert, um alle persistenten Daten zu speichern. Allerdings wird eine Warnung angezeigt und eine Meldung in das Workflow-Ereignisprotokoll geschrieben. Der Standardwert ist 10.
Der Persistenzspeicher enthält Daten für alle Workflowaufträge. Durch die Möglichkeit, Daten zu speichern, können die Aufträge fortgesetzt werden, ohne ihren Zustand zu verlieren.
Typ: | Int64 |
Position: | Named |
Standardwert: | 10 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxRunningWorkflows
Gibt die maximale Anzahl von Workflows an, die gleichzeitig in der Sitzung ausgeführt werden können. Der Standardwert ist 30.
Typ: | Int32 |
Position: | Named |
Standardwert: | 30 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxSessionsPerRemoteNode
Gibt die maximale Anzahl von Sitzungen an, die mit jedem Remoteknoten (Zielcomputer) verbunden sein können. Der Standardwert ist 5.
Typ: | Int32 |
Position: | Named |
Standardwert: | 5 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-MaxSessionsPerWorkflow
Gibt die maximale Anzahl von Sitzungen an, die zur Unterstützung jedes Workflows erstellt werden können. Der Standardwert ist 5.
Typ: | Int32 |
Position: | Named |
Standardwert: | 5 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-OutOfProcessActivity
Bestimmt, welche zulässigen Aktivitäten (angegeben durch den Parameter AllowedActivities ) außerhalb des Prozesses ausgeführt werden. Der Standardwert ist InlineScript.
Typ: | String[] |
Position: | Named |
Standardwert: | InlineScript |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-PersistencePath
Gibt an, wo der Workflowzustand und Workflowdaten auf dem Datenträger gespeichert werden. Durch die Speicherung des Workflowzustands und der Workflowdaten können Workflows angehalten und fortgesetzt und nach Unterbrechungen und Netzwerkfehlern wiederhergestellt werden.
Der Standardwert ist $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS
.
Typ: | String |
Position: | Named |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-PersistWithEncryption
Gibt an, dass der Workflow die Daten im Persistenzspeicher verschlüsselt. Sie sollten dieses Feature beim Speichern von Persistenzdaten auf einer Netzwerkfreigabe verwenden.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-RemoteNodeSessionIdleTimeoutSec
Gibt an, wie lange eine mit einem Remoteknoten (Zielcomputer) verbundene Sitzung beibehalten wird, wenn sie sich im Leerlauf befindet.
Geben Sie einen Wert in Sekunden ein. Der Standardwert lautet 60.
Typ: | Int32 |
Position: | Named |
Standardwert: | 60 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-SessionThrottleLimit
Gibt an, wie viele Vorgänge erstellt werden, um alle in der Sitzung gestarteten Workflows zu unterstützen. Der Standardwert ist 100.
Typ: | Int32 |
Position: | Named |
Standardwert: | 100 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WorkflowShutdownTimeoutMSec
Gibt an, wie lange die Sitzung beibehalten wird, nachdem das Anhalten aller Workflows in der Sitzung erzwungen wurde. Nach Ablauf des Timeouts wird die Sitzung selbst dann von Windows PowerShell geschlossen, wenn noch nicht alle Workflows angehalten wurden.
Geben Sie einen Wert in Millisekunden ein. Der Standardwert ist 500.
Typ: | Int32 |
Position: | Named |
Standardwert: | 500 |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Sie können keine Objekte an dieses Cmdlet weiterleiten.
Ausgaben
Hinweise
Wenn der maximale durch eine Option festgelegte Wert überschritten wird, verursacht der Befehl zum Erstellen einer weiteren Instanz in der Sitzung einen Fehler, sofern in der Parameterbeschreibung nichts anderes angegeben ist. Wenn der Wert von MaxConnectedSessions beispielsweise 100 ist. In diesem Fall verursacht der Befehl zum Erstellen der Sitzung Nummer 101 für einen Remoteknoten (Zielcomputer) einen Fehler.
Die Eigenschaften eines Sitzungskonfigurationsobjekts weichen hinsichtlich der für die Sitzungskonfiguration festgelegten Optionen sowie der Werte dieser Optionen ab. Sitzungskonfigurationen, die eine Sitzungskonfigurationsdatei verwenden, haben außerdem zusätzliche Eigenschaften.
Insbesondere variieren die Eigenschaften von Sitzungskonfigurationen, die ein PSWorkflowExecutionOptions-Objekt enthalten, je nach den Workflowoptionswerten. Wenn die Sitzungskonfiguration beispielsweise ein PSWorkflowExecutionOptions-Objekt enthält, das einen nicht standardmäßigen Wert für die SessionThrottleLimit-Eigenschaft festlegt, verfügt die Sitzungskonfiguration über eine SessionThrottleLimit-Eigenschaft . Sonst nicht.