Partilhar via


Reboot a Node (Reiniciar um Nó)

Nota

Este tópico fala sobre como reiniciar um Nó. Para que o reinício seja bem-sucedido, as definições actionAfterReboot e RebootNodeIfNeeded LCM têm de ser configuradas corretamente. Para ler sobre as definições de Configuration Manager Local, consulte Configurar a Configuration Manager Local ou Configurar a Configuration Manager Local (v4).

Os nós podem ser reiniciados a partir de um recurso com o $global:DSCMachineStatus sinalizador . Definir este sinalizador como 1 na Set-TargetResource função força o LCM a reiniciar o Nó diretamente após o método Set do recurso atual. Ao utilizar este sinalizador, o recurso PendingReboot no módulo De recurso ComputerManagementDsc DSC deteta se um reinício está pendente fora do DSC.

As configurações podem executar passos que exigem que o Nó seja reiniciado. Isto pode incluir itens como:

  • Atualizações do Windows
  • Instalação de software
  • Nomes de ficheiros
  • Mudar o nome do computador

O recurso PendingReboot verifica localizações específicas do computador para determinar se um reinício está pendente. Se o Nó exigir um reinício fora do DSC, o recurso PendingReboot define o $global:DSCMachineStatus sinalizador para 1 forçar um reinício e resolver a condição pendente.

Nota

Qualquer recurso DSC pode instruir o LCM a reiniciar o nó ao definir este sinalizador na Set-TargetResource função. Para obter mais informações, veja Writing a custom DSC resource with MOF (Escrever um recurso DSC personalizado com o MOF).

Syntax

PendingReboot [String] #ResourceName
{
    Name = [string]
    [DependsOn = [string[]]]
    [PsDscRunAsCredential = [PSCredential]]
    [SkipCcmClientSDK = [bool]]
    [SkipComponentBasedServicing = [bool]]
    [SkipPendingComputerRename = [bool]]
    [SkipPendingFileRename = [bool]]
    [SkipWindowsUpdate = [bool]]
}

Propriedades

Propriedade Descrição
Nome Parâmetro obrigatório que tem de ser exclusivo por instância do recurso numa configuração.
SkipComponentBasedServicing Ignorar reinícios acionados pelo componente Component-Based Manutenção.
SkipWindowsUpdate Ignorar reinícios acionados por Windows Update.
SkipPendingFileRename Ignorar reinícios de mudança de nome de ficheiro pendentes.
SkipCcmClientSDK Ignorar reinícios acionados pelo cliente configMgr.
SkipComputerRename Ignorar reinícios acionados por Nomes de computadores.
PSDSCRunAsCredential Suportado na v5. Executa o recurso como o utilizador especificado.
DependsOn Indica que a configuração de outro recurso tem de ser executada antes de este recurso ser configurado. Por exemplo, se o ID do bloco de script de configuração de recursos que pretende executar primeiro for ResourceName e o respetivo tipo for ResourceType, a sintaxe para utilizar esta propriedade é DependsOn = "[ResourceType]ResourceName". Para obter mais informações, veja Using DependsOn (Utilizar DependsOn)

Exemplo

O exemplo seguinte instala o Microsoft Exchange com o recurso xExchange . Ao longo da instalação, o recurso PendingReboot é utilizado para reiniciar o Nó.

Nota

Este exemplo requer a credencial de uma conta que tenha direitos para adicionar um servidor Exchange à floresta. Para obter mais informações sobre como utilizar credenciais no DSC, veja Handling Credentials in DSC (Processar Credenciais no DSC)

$ConfigurationData = @{
    AllNodes = @(
        @{
            NodeName                    = '*'
            PSDSCAllowPlainTextPassword = $true
        },
        @{
            NodeName = 'DSCPULL-1'
        }
    )
}

Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [System.Management.Automation.PSCredential]
        $ExchangeAdminCredential
    )

    Import-DSCResource -ModuleName xExchange
    Import-DSCResource -ModuleName ComputerManagementDsc

    Node $AllNodes.NodeName
    {
        # Copy the Exchange setup files locally
        File ExchangeBinaries
        {
            Ensure          = 'Present'
            Type            = 'Directory'
            Recurse         = $true
            SourcePath      = '\\rras-1\Binaries\E15CU6'
            DestinationPath = 'C:\Binaries\E15CU6'
        }

        # Check if a reboot is needed before installing Exchange
        PendingReboot BeforeExchangeInstall
        {
            Name       = 'BeforeExchangeInstall'
            DependsOn  = '[File]ExchangeBinaries'
        }

        # Do the Exchange install
        xExchInstall InstallExchange
        {
            Path       = 'C:\Binaries\E15CU6\Setup.exe'
            Arguments  = '/mode:Install /role:Mailbox /Iacceptexchangeserverlicenseterms'
            Credential = $ExchangeAdminCredential
            DependsOn  = '[PendingReboot]BeforeExchangeInstall'
        }

        # See if a reboot is required after installing Exchange
        PendingReboot AfterExchangeInstall
        {
            Name      = 'AfterExchangeInstall'
            DependsOn = '[xExchInstall]InstallExchange'
        }
    }
}

Nota

Este exemplo pressupõe que configurou a sua Configuration Manager Local para permitir reinícios e continuar a configuração após um reinício.

Onde Transferir

Pode transferir os recursos utilizados neste tópico nas seguintes localizações ou através da galeria do PowerShell.