Set-CMOrchestrationGroup
Configurare un gruppo di orchestrazione.
Sintassi
Set-CMOrchestrationGroup
[-InputObject] <IResultObject>
[-NewName <String>]
[-Description <String>]
[-OrchestrationType <OrchestrationTypeValue>]
[-OrchestrationValue <Int32>]
[-OrchestrationTimeOutMin <Int32>]
[-MaxLockTimeOutMin <Int32>]
[-PreScript <String>]
[-PreScriptTimeoutSec <Int32>]
[-PostScript <String>]
[-PostScriptTimeoutSec <Int32>]
[-MemberResourceIds <Int32[]>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CMOrchestrationGroup
[-Id] <Int32>
[-NewName <String>]
[-Description <String>]
[-OrchestrationType <OrchestrationTypeValue>]
[-OrchestrationValue <Int32>]
[-OrchestrationTimeOutMin <Int32>]
[-MaxLockTimeOutMin <Int32>]
[-PreScript <String>]
[-PreScriptTimeoutSec <Int32>]
[-PostScript <String>]
[-PostScriptTimeoutSec <Int32>]
[-MemberResourceIds <Int32[]>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CMOrchestrationGroup
[-Name] <String>
[-NewName <String>]
[-Description <String>]
[-OrchestrationType <OrchestrationTypeValue>]
[-OrchestrationValue <Int32>]
[-OrchestrationTimeOutMin <Int32>]
[-MaxLockTimeOutMin <Int32>]
[-PreScript <String>]
[-PreScriptTimeoutSec <Int32>]
[-PostScript <String>]
[-PostScriptTimeoutSec <Int32>]
[-MemberResourceIds <Int32[]>]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Usare questo cmdlet per configurare un gruppo di orchestrazione.
Usare i gruppi di orchestrazione per controllare meglio la distribuzione degli aggiornamenti software nei dispositivi. Potrebbe essere necessario gestire con attenzione gli aggiornamenti per carichi di lavoro specifici o automatizzare i comportamenti intermedi. Per altre informazioni, vedere Creare e usare gruppi di orchestrazione in Configuration Manager.
Nota
Eseguire i cmdlet di Configuration Manager dall'unità del sito di Configuration Manager, ad esempio PS XYZ:\>
. Per altre informazioni, vedere Introduzione.
Esempio
Esempio 1: Modificare il tipo e specificare la sequenza
Questo esempio usa innanzitutto il cmdlet Get-CMOrchestrationGroup per ottenere un oggetto per il gruppo di orchestrazione denominato server IT. Archivia questo oggetto nella variabile og .
Il comando successivo definisce una matrice denominata devices. Esegue il ciclo di ogni membro del gruppo di orchestrazione dei server IT ($og.MOGMembers
) e passa l'ID del membro al cmdlet Get-CMDevice . L'oggetto dispositivo restituito viene aggiunto alla matrice devices .
Il comando successivo ordina la matrice in base al nome del dispositivo e restituisce gli ID risorsa del dispositivo nella variabile sortedID .
Esegue quindi lo splat dei parametri del cmdlet nella variabile parameters . Non è necessario eseguire lo splat dei parametri, ma semplifica la lettura dei parametri per una riga di comando così lunga.
L'ultimo comando configura il gruppo di orchestrazione specificato con un ordine di sequenza definito. Usa il parametro MemberResourceIds per impostare la sequenza, non aggiungere o rimuovere membri.
$og = Get-CMOrchestrationGroup -Name "IT servers"
$devices = @()
foreach ( $id in $og.MOGMembers ) {
$devices += Get-CMDevice -Id $id -Fast
}
$sortedIDs = ( $devices | Sort-Object -Property Name | Select-Object ResourceId ).ResourceId
$parameters = @{
InputObject = $og
Description = "Change type and sequence"
OrchestrationType = "Sequence"
MemberResourceIds = $sortedIDs
}
Set-CMOrchestrationGroup @parameters
In questo esempio viene illustrato come eseguire un tipo a livello di codice dei membri esistenti. Se l'appartenenza al gruppo di orchestrazione non cambia, usa il processo generale seguente:
- Usare gli ID risorsa membro esistenti.
- Ottenere altre informazioni su ogni risorsa.
- Ordinare l'elenco in base a tali informazioni.
- Restituisce gli ID risorsa per l'elenco appena ordinato.
Questo esempio usa Get-CMDevice per ottenere altre informazioni, ma è possibile sostituirlo con qualsiasi cmdlet che usa l'ID risorsa del dispositivo come input. È anche possibile sostituire il meccanismo di ordinamento con un'altra funzione.
Esempio 2: Ottenere il contenuto dello script da un file
Questo esempio usa il cmdlet Get-Content predefinito per leggere il testo dello script da un file locale. Archivia il testo dello script nella variabile postScript . Il secondo comando configura il gruppo di orchestrazione con il nuovo post-script.
$postScript - Get-Content -Path "D:\Scripts\OG\Post1.ps1"
Set-CMOrchestrationGroup -InputObject $og -PostScript $postScript
Parametri
-Confirm
Richiede la conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Description
Specificare una descrizione facoltativa per il gruppo di orchestrazione per identificarlo.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-DisableWildcardHandling
Questo parametro considera i caratteri jolly come valori letterali. Non è possibile combinarlo con ForceWildcardHandling.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ForceWildcardHandling
Questo parametro elabora caratteri jolly e può causare un comportamento imprevisto (non consigliato). Non è possibile combinarlo con DisableWildcardHandling.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Id
Specificare l'ID del gruppo di orchestrazione da configurare. Questo valore è la proprietà MOGID , che è un numero intero. Ad esempio, 16777217
.
Tipo: | Int32 |
Alias: | MOGID |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-InputObject
Specificare un oggetto da configurare per il gruppo di orchestrazione. Per ottenere questo oggetto, usare il cmdlet Get-CMOrchestrationGroup .
Tipo: | IResultObject |
Alias: | OrchestrationGroup |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-MaxLockTimeOutMin
Specificare un valore intero per il timeout dei membri del gruppo di orchestrazione in minuti. Questo valore è il limite di tempo per l'installazione degli aggiornamenti per un singolo dispositivo nel gruppo.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-MemberResourceIds
Specificare una matrice di ID risorsa per i dispositivi da aggiungere come membri di questo gruppo di orchestrazione. L'ID risorsa è un numero intero, ad esempio 16777220
. Si tratta della proprietà ResourceId in un dispositivo o un oggetto risorsa. Per ottenere un oggetto dispositivo, usare i cmdlet Get-CMDevice o Get-CMResource .
Quando si imposta il parametro OrchestrationType su Sequence
, usare questo parametro per determinare l'ordine.
Tipo: | Int32[] |
Alias: | MogMembers |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Name
Specificare il nome del gruppo di orchestrazione da configurare.
Tipo: | String |
Alias: | OrchestrationGroupName |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-NewName
Specificare un nuovo nome per questo gruppo di orchestrazione. Usare questo parametro per rinominare il gruppo di orchestrazione.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-OrchestrationTimeOutMin
Specificare un valore intero per il timeout del gruppo di orchestrazione in minuti. Questo valore è il limite di tempo per tutti i membri del gruppo per installare gli aggiornamenti.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-OrchestrationType
Specificare uno dei valori seguenti per il tipo di gruppo di orchestrazione:
Number
: consente a un certo numero di dispositivi di eseguire l'aggiornamento contemporaneamente. Usare questa impostazione per limitare sempre a un numero specifico di dispositivi, indipendentemente dalle dimensioni complessive del gruppo di orchestrazione. Per specificare il numero di dispositivi, usare il parametro OrchestrationValue .Percentage
: consente l'aggiornamento contemporaneamente di una percentuale dei dispositivi. Usare questa impostazione per consentire una flessibilità futura delle dimensioni del gruppo di orchestrazione. Per specificare la percentuale, usare il parametro OrchestrationValue .Sequence
: definire in modo esplicito l'ordine in cui i dispositivi eseguono la distribuzione dell'aggiornamento software. L'ordine è determinato dall'ordinamento degli ID risorsa del dispositivo nel parametro MemberResourceIds .
Tipo: | OrchestrationTypeValue |
Valori accettati: | Number, Percentage, Sequence |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-OrchestrationValue
Specificare un numero intero per il numero o la percentuale di dispositivi da aggiornare contemporaneamente. Usare questo parametro quando si imposta il parametro OrchestrationType su Number
o Percentage
.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PostScript
Specificare lo script di PowerShell da eseguire in ogni dispositivo dopo l'esecuzione della distribuzione e il riavvio del dispositivo, se necessario.
Questo valore stringa è il testo dello script stesso. Se si dispone di uno script in un file che si vuole usare, leggerlo prima in una variabile. Ad esempio, usare il cmdlet Get-Content predefinito.
Gli script devono restituire un valore di per l'esito 0
positivo. Qualsiasi valore diverso da zero viene considerato un errore di script. Non è possibile usare uno script con parametri. La lunghezza massima dello script è di 50.000 caratteri.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PostScriptTimeoutSec
Specificare il valore intero per il tempo consentito in secondi per l'esecuzione del post-script prima del timeout.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PreScript
Specificare lo script di PowerShell da eseguire in ogni dispositivo prima dell'esecuzione della distribuzione.
Questo valore stringa è il testo dello script stesso. Se si dispone di uno script in un file che si vuole usare, leggerlo prima in una variabile. Ad esempio, usare il cmdlet Get-Content predefinito.
Gli script devono restituire un valore di per l'esito 0
positivo. Qualsiasi valore diverso da zero viene considerato un errore di script. Non è possibile usare uno script con parametri. La lunghezza massima dello script è di 50.000 caratteri.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-PreScriptTimeoutSec
Specificare il valore intero per il tempo consentito in secondi per l'esecuzione del pre-script prima del timeout.
Tipo: | Int32 |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-WhatIf
Mostra cosa accade se viene eseguito il cmdlet. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
Output
IResultObject
Note
Questo cmdlet restituisce un oggetto per la classe WMI SMS_MachineOrchestrationGroup .