Condividi tramite


Riavvia un nodo

Annotazioni

In questo argomento viene illustrato come riavviare un nodo. Affinché il riavvio abbia esito positivo, è necessario configurare correttamente le impostazioni LCM ActionAfterReboot e RebootNodeIfNeeded . Per informazioni sulle impostazioni di Gestione configurazione locale, vedere Configurare Gestione configurazione locale o Configurare Gestione configurazione locale (v4).

I nodi possono essere riavviati dall'interno di una risorsa, utilizzando il $global:DSCMachineStatus flag. L'impostazione di questo flag su 1 nella Set-TargetResource funzione forza LCM a riavviare il nodo direttamente dopo il metodo Set della risorsa corrente. Usando questo flag, la risorsa PendingReboot nel modulo ComputerManagementDsc DSC Resource rileva se un riavvio è in sospeso all'esterno di DSC.

Le configurazioni possono eseguire passaggi che richiedono il riavvio del nodo. Ciò potrebbe includere cose come:

  • Aggiornamenti di Windows
  • Installazione del software
  • Rinomina dei file
  • Rinomina del computer

La risorsa PendingReboot controlla posizioni specifiche del computer per determinare se è in sospeso un riavvio. Se il nodo richiede un riavvio all'esterno di DSC, la risorsa PendingReboot imposta il $global:DSCMachineStatus flag per forzare 1 un riavvio e risolvere la condizione in sospeso.

Annotazioni

Qualsiasi risorsa DSC può indicare a LCM di riavviare il nodo impostando questo flag nella Set-TargetResource funzione. Per altre informazioni, vedere Scrittura di una risorsa DSC personalizzata con MOF.

Sintassi

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

Proprietà

Proprietà Description
Nome Parametro obbligatorio che deve essere univoco per ogni istanza della risorsa all'interno di una configurazione.
SkipComponentBasedServicing Ignorare i riavvii attivati dal componente Component-Based Manutenzione.
SaltaWindowsUpdate Salta i riavvii attivati da Windows Update.
SaltaPendingFileRinomina Salta i riavvii di ridenominazione dei file in sospeso.
SkipCcmClientSDK Ignorare i riavvii attivati dal client ConfigMgr.
SkipComputerRename Ignora i riavvii attivati dalle ridenominazioni del computer.
PSDSCRunAsCredential Supportato nella versione 5. Esegue la risorsa come utente specificato.
DipendeSu Indica che la configurazione di un'altra risorsa deve essere eseguita prima di configurare questa risorsa. Ad esempio, se l'ID del blocco di script di configurazione della risorsa che si desidera eseguire per primo è ResourceName e il relativo tipo è ResourceType, la sintassi per l'utilizzo di questa proprietà è DependsOn = "[ResourceType]ResourceName". Per ulteriori informazioni, vedere Utilizzo di DependsOn

Example

Nell'esempio seguente viene installato Microsoft Exchange utilizzando la risorsa xExchange . Durante l'installazione, la risorsa PendingReboot viene utilizzata per riavviare il nodo.

Annotazioni

In questo esempio sono necessarie le credenziali di un account che dispone dei diritti per aggiungere un server Exchange alla foresta. Per altre informazioni sull'uso delle credenziali in DSC, vedere Gestione delle credenziali in 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'
        }
    }
}

Annotazioni

In questo esempio si presuppone che sia stato configurato Gestione configurazione locale per consentire il riavvio e continuare la configurazione dopo un riavvio.

Dove scaricare

È possibile scaricare le risorse usate in questo argomento nei percorsi seguenti o usando la raccolta di PowerShell.