Share via


Set-CMOrchestrationGroup

Configurar um grupo de orquestração.

Syntax

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>]

Description

Use este cmdlet para configurar um grupo de orquestração.

Use grupos de orquestração para controlar melhor a implantação de atualizações de software em dispositivos. Talvez seja necessário gerenciar cuidadosamente as atualizações para cargas de trabalho específicas ou automatizar comportamentos entre elas. Para obter mais informações, consulte Criar e usar grupos de orquestração em Configuration Manager.

Observação

Execute Configuration Manager cmdlets da unidade do site Configuration Manager, por exemplo PS XYZ:\>. Para obter mais informações, confira introdução.

Exemplos

Exemplo 1: alterar o tipo e especificar a sequência

Este exemplo usa primeiro o cmdlet Get-CMOrchestrationGroup para obter um objeto para o grupo de orquestração chamado servidores de TI. Ele armazena esse objeto na variável og .

O próximo comando define uma matriz chamada dispositivos. Ele passa por cada membro do grupo de orquestração de servidores de TI ($og.MOGMembers) e passa a ID do membro para o cmdlet Get-CMDevice . O objeto de dispositivo retornado é acrescentado à matriz de dispositivos .

O próximo comando classifica a matriz pelo nome do dispositivo e retorna as IDs de recurso do dispositivo na variável sortedIDs .

Em seguida, ele coloca os parâmetros de cmdlet na variável de parâmetros . Não é necessário emendar os parâmetros, apenas facilita a leitura dos parâmetros para uma linha de comando tão longa.

O último comando configura o grupo de orquestração especificado com uma ordem de sequência definida. Ele está usando o parâmetro MemberResourceIds para definir a sequência, não adicionar ou remover membros.

$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

Este exemplo mostra como fazer um tipo programático dos membros existentes. Se a associação do grupo de orquestração não for alterada, ele usará o seguinte processo geral:

  1. Use as IDs de recurso de membro existentes.
  2. Obtenha mais informações sobre cada recurso.
  3. Classifique a lista com essas informações.
  4. Retorne as IDs de recurso para a lista recém-classificada.

Este exemplo usa Get-CMDevice para obter mais informações, mas você pode substituí-la por qualquer cmdlet que use a ID do recurso do dispositivo como entrada. Você também pode substituir o mecanismo de classificação por outra função.

Exemplo 2: Obter conteúdo de script de um arquivo

Este exemplo usa o cmdlet get-content interno para ler o texto do script de um arquivo local. Ele armazena o texto de script na variável postScript . O segundo comando configura o grupo de orquestração com o novo pós-script.

$postScript - Get-Content -Path "D:\Scripts\OG\Post1.ps1"
Set-CMOrchestrationGroup -InputObject $og -PostScript $postScript

Parâmetros

-Confirm

Solicita a confirmação antes de executar o cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Especifique uma descrição opcional para o grupo de orquestração para ajudar a identificá-lo.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableWildcardHandling

Esse parâmetro trata caracteres curinga como valores de caractere literal. Você não pode combiná-lo com ForceWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForceWildcardHandling

Esse parâmetro processa caracteres curinga e pode levar a um comportamento inesperado (não recomendado). Você não pode combiná-lo com DisableWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

Especifique a ID do grupo de orquestração a ser configurada. Esse valor é a propriedade MOGID , que é um inteiro. Por exemplo, 16777217.

Type:Int32
Aliases:MOGID
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Especifique um objeto para o grupo de orquestração a ser configurado. Para obter esse objeto, use o cmdlet Get-CMOrchestrationGroup .

Type:IResultObject
Aliases:OrchestrationGroup
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaxLockTimeOutMin

Especifique um valor inteiro para o tempo limite de membro do grupo de orquestração em minutos. Esse valor é o limite de tempo para um único dispositivo no grupo instalar as atualizações.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MemberResourceIds

Especifique uma matriz de IDs de recursos para os dispositivos a serem adicionados como membros desse grupo de orquestração. A ID do recurso é um inteiro, por exemplo, 16777220. É a propriedade ResourceId em um dispositivo ou objeto de recurso. Para obter um objeto de dispositivo, use os cmdlets Get-CMDevice ou Get-CMResource .

Ao definir o parâmetro OrchestrationType como Sequence, use esse parâmetro para determinar a ordem.

Type:Int32[]
Aliases:MogMembers
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Especifique o nome do grupo de orquestração a ser configurado.

Type:String
Aliases:OrchestrationGroupName
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NewName

Especifique um novo nome para este grupo de orquestração. Use esse parâmetro para renomear o grupo de orquestração.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OrchestrationTimeOutMin

Especifique um valor inteiro para o tempo limite do grupo de orquestração em minutos. Esse valor é o limite de tempo para todos os membros do grupo instalarem as atualizações.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OrchestrationType

Especifique um dos seguintes valores para o tipo de grupo de orquestração:

  • Number: permitir que vários dispositivos atualizem ao mesmo tempo. Use essa configuração para sempre limitar a um número específico de dispositivos, qualquer que seja o tamanho geral do grupo de orquestração. Para especificar o número de dispositivos, use o parâmetro OrchestrationValue .

  • Percentage: permitir que uma porcentagem dos dispositivos seja atualizada ao mesmo tempo. Use essa configuração para permitir flexibilidade futura do tamanho do grupo de orquestração. Para especificar o percentual, use o parâmetro OrchestrationValue .

  • Sequence: defina explicitamente a ordem na qual os dispositivos executam a implantação de atualização de software. A ordem é determinada pelo tipo de IDs de recurso do dispositivo no parâmetro MemberResourceIds .

Type:OrchestrationTypeValue
Accepted values:Number, Percentage, Sequence
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OrchestrationValue

Especifique um inteiro para o número ou porcentagem de dispositivos a serem atualizados ao mesmo tempo. Use esse parâmetro ao definir o parâmetro OrchestrationType como Number ou Percentage.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PostScript

Especifique o script do PowerShell a ser executado em cada dispositivo após a execução da implantação e a reinicialização do dispositivo, se necessário.

Esse valor de cadeia de caracteres é o texto do script em si. Se você tiver um script em um arquivo que deseja usar, primeiro leia-o em uma variável. Por exemplo, use o cmdlet get-content interno.

Os scripts devem retornar um valor de 0 para o sucesso. Qualquer valor não zero é considerado uma falha de script. Você não pode usar um script com parâmetros. O comprimento máximo do script é de 50.000 caracteres.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PostScriptTimeoutSec

Especifique o valor inteiro para o tempo permitido em segundos para que o pós-script seja executado antes do tempo limite.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PreScript

Especifique o script do PowerShell a ser executado em cada dispositivo antes da execução da implantação.

Esse valor de cadeia de caracteres é o texto do script em si. Se você tiver um script em um arquivo que deseja usar, primeiro leia-o em uma variável. Por exemplo, use o cmdlet get-content interno.

Os scripts devem retornar um valor de 0 para o sucesso. Qualquer valor não zero é considerado uma falha de script. Você não pode usar um script com parâmetros. O comprimento máximo do script é de 50.000 caracteres.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PreScriptTimeoutSec

Especifique o valor inteiro do tempo permitido em segundos para que o pré-script seja executado antes que ele seja executado.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostrar o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Saídas

IResultObject

Observações

Este cmdlet retorna um objeto para a classe WMI SMS_MachineOrchestrationGroup .