Caricamento di computer per la gestione con Automation DSC per AzureOnboarding machines for management by Azure Automation DSC

Perché gestire computer con Automation DSC per AzureWhy manage machines with Azure Automation DSC?

Come PowerShell DSC (Desired State Configuration), Automation DSC (Desired State Configuration) per Azure è un servizio semplice ma potente per la gestione della configurazione dei nodi DSC (macchine virtuali e computer fisici) in qualsiasi data center nel cloud o locale.Like PowerShell Desired State Configuration, Azure Automation Desired State Configuration is a simple, yet powerful, configuration management service for DSC nodes (physical and virtual machines) in any cloud or on-premises datacenter. Consente la scalabilità tra migliaia di computer in modo rapido e facile da una posizione centrale e sicura.It enables scalability across thousands of machines quickly and easily from a central, secure location. È possibile caricare facilmente i computer, assegnare agli stessi configurazioni dichiarative e visualizzare report che mostrano la conformità di ogni computer con lo stato desiderato specificato.You can easily onboard machines, assign them declarative configurations, and view reports showing each machine's compliance to the desired state you specified. Il livello di gestione di Automation DSC per Azure è per DSC ciò che il livello di gestione di Automazione di Azure rappresenta per gli script di PowerShell.The Azure Automation DSC management layer is to DSC what the Azure Automation management layer is to PowerShell scripting. In altre parole, Automazione di Azure consente di gestire gli script di PowerShell e le configurazioni DSC.In other words, in the same way that Azure Automation helps you manage PowerShell scripts, it also helps you manage DSC configurations. Per altre informazioni sui vantaggi dell'uso di Automation DSC per Azure, vedere Panoramica della piattaforma DSC di Automazione di Azure.To learn more about the benefits of using Azure Automation DSC, see Azure Automation DSC overview.

È possibile usare Automation DSC per Azure in molti tipi di computer.Azure Automation DSC can be used to manage a variety of machines:

  • Macchine virtuali di Azure (classica)Azure virtual machines (classic)
  • Macchine virtuali di AzureAzure virtual machines
  • Macchine virtuali di Amazon Web Services (AWS)Amazon Web Services (AWS) virtual machines
  • Computer fisici/macchine virtuali Windows locali o in un cloud diverso da Azure/AWSPhysical/virtual Windows machines on-premises, or in a cloud other than Azure/AWS
  • Computer fisici/macchine virtuali Linux locali, in Azure o in un cloud diverso da AzurePhysical/virtual Linux machines on-premises, in Azure, or in a cloud other than Azure

Inoltre, se non si è pronti a gestire la configurazione delle macchina virtuali dal cloud, Automation DSC per Azure può anche essere usato come endpoint solo per i report.In addition, if you are not ready to manage machine configuration from the cloud, Azure Automation DSC can also be used as a report-only endpoint. In questo modo è possibile impostare (push) la configurazione desiderata tramite DSC locale e visualizzare i dettagli dei report sulla conformità dei nodi con lo stato scelto in Automazione di Azure.This allows you to set (push) desired configuration through DSC on-premises and view rich reporting details on node compliance with the desired state in Azure Automation.

Nota

La gestione di macchine virtuali di Azure con DSC è inclusa senza alcun costo aggiuntivo se la versione dell'estensione DSC per le macchine virtuali installata è successiva alla 2.7.Managing Azure VMs with DSC is included at no extra charge if the virtual machine DSC extension installed is greater than 2.7. Per altri dettagli, vedere la pagina Prezzi di Automazione.Please refer to the Automation pricing page for more details.

Le sezioni seguenti illustrano come caricare ogni tipo di computer in Automation DSC per Azure.The following sections outline how you can onboard each type of machine to Azure Automation DSC.

Macchine virtuali di Azure (classica)Azure virtual machines (classic)

Con Automation DSC per Azure è possibile caricare facilmente macchine virtuali di Azure (classica) per la gestione della configurazione tramite il portale di Azure o PowerShell.With Azure Automation DSC, you can easily onboard Azure virtual machines (classic) for configuration management using either the Azure portal, or PowerShell. Dietro le quinte, e senza che l'amministratore debba connettersi in remoto alla VM, l'estensione DSC (Desired State Configuration) per le VM di Azure regista la VM con Automation DSC per Azure.Under the hood, and without an administrator having to remote into the VM, the Azure VM Desired State Configuration extension registers the VM with Azure Automation DSC. Poiché l'estensione DSC per le VM di Azure viene eseguita in modalità asincrona, nella sezione seguente Risoluzione dei problemi di caricamento di macchine virtuali di Azure è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.Since the Azure VM Desired State Configuration extension runs asynchronously, steps to track its progress or troubleshoot it are provided in the Troubleshooting Azure virtual machine onboarding section below.

Portale di AzureAzure portal

Nel portale di Azure fare clic su Esplora -> Macchine virtuali (classico).In the Azure portal, click Browse -> Virtual machines (classic). Selezionare la macchina virtuale Windows da caricare.Select the Windows VM you want to onboard. Nel pannello del dashboard della macchina virtuale fare clic su Tutte le impostazioni -> Estensioni -> Aggiungi -> Automation DSC per Azure -> Crea.On the virtual machine's dashboard blade, click All settings -> Extensions -> Add -> Azure Automation DSC -> Create. Immettere i valori di Gestione configurazione locale per PowerShell DSC necessari per il proprio caso d'uso, la chiave e l'URL di registrazione dell'account di automazione e facoltativamente una configurazione del nodo da assegnare alla VM.Enter the PowerShell DSC Local Configuration Manager values required for your use case, your Automation account's registration key and registration URL, and optionally a node configuration to assign to the VM.

Per trovare l'URL e la chiave di registrazione dell'account di automazione in cui caricare la macchina virtuale, vedere la sezione Registrazione sicura è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.To find the registration URL and key for the Automation account to onboard the machine to, see the Secure registration section below.

PowerShellPowerShell

# log in to both Azure Service Management and Azure Resource Manager
Add-AzureAccount
Add-AzureRmAccount

# fill in correct values for your VM/Automation account here
$VMName = ""
$ServiceName = ""
$AutomationAccountName = ""
$AutomationAccountResourceGroup = ""

# fill in the name of a Node Configuration in Azure Automation DSC, for this VM to conform to
$NodeConfigName = ""

# get Azure Automation DSC registration info
$Account = Get-AzureRmAutomationAccount -ResourceGroupName $AutomationAccountResourceGroup -Name $AutomationAccountName
$RegistrationInfo = $Account | Get-AzureRmAutomationRegistrationInfo

# use the DSC extension to onboard the VM for management with Azure Automation DSC
$VM = Get-AzureVM -Name $VMName -ServiceName $ServiceName

$PublicConfiguration = ConvertTo-Json -Depth 8 @{
    SasToken = ""
    ModulesUrl = "https://eus2oaasibizamarketprod1.blob.core.windows.net/automationdscpreview/RegistrationMetaConfigV2.zip"
    ConfigurationFunction = "RegistrationMetaConfigV2.ps1\RegistrationMetaConfigV2"

# update these PowerShell DSC Local Configuration Manager defaults if they do not match your use case.
# See https://technet.microsoft.com/library/dn249922.aspx?f=255&MSPPError=-2147217396 for more details
    Properties = @{
    RegistrationKey = @{
        UserName = 'notused'
        Password = 'PrivateSettingsRef:RegistrationKey'
    }
    RegistrationUrl = $RegistrationInfo.Endpoint
    NodeConfigurationName = $NodeConfigName
    ConfigurationMode = "ApplyAndMonitor"
    ConfigurationModeFrequencyMins = 15
    RefreshFrequencyMins = 30
    RebootNodeIfNeeded = $False
    ActionAfterReboot = "ContinueConfiguration"
    AllowModuleOverwrite = $False
    }
}

$PrivateConfiguration = ConvertTo-Json -Depth 8 @{
    Items = @{
        RegistrationKey = $RegistrationInfo.PrimaryKey
    }
}

$VM = Set-AzureVMExtension `
    -VM $vm `
    -Publisher Microsoft.Powershell `
    -ExtensionName DSC `
    -Version 2.19 `
    -PublicConfiguration $PublicConfiguration `
    -PrivateConfiguration $PrivateConfiguration `
    -ForceUpdate

$VM | Update-AzureVM

Macchine virtuali di AzureAzure virtual machines

Automation DSC per Azure consente di caricare facilmente macchine virtuali di Azure per la gestione della configurazione tramite il portale di Azure, i modelli di Gestione risorse di Azure o PowerShell.Azure Automation DSC lets you easily onboard Azure virtual machines for configuration management, using either the Azure portal, Azure Resource Manager templates, or PowerShell. Dietro le quinte, e senza che l'amministratore debba connettersi in remoto alla VM, l'estensione DSC (Desired State Configuration) per le VM di Azure regista la VM con Automation DSC per Azure.Under the hood, and without an administrator having to remote into the VM, the Azure VM Desired State Configuration extension registers the VM with Azure Automation DSC. Poiché l'estensione DSC per le VM di Azure viene eseguita in modalità asincrona, nella sezione seguente Risoluzione dei problemi di caricamento di macchine virtuali di Azure è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.Since the Azure VM Desired State Configuration extension runs asynchronously, steps to track its progress or troubleshoot it are provided in the Troubleshooting Azure virtual machine onboarding section below.

Portale di AzureAzure portal

Nel portale di Azurepassare all'account di Automazione di Azure in cui caricare le macchine virtuali.In the Azure portal, navigate to the Azure Automation account where you want to onboard virtual machines. Nel dashboard dell'account di automazione fare clic su Nodi DSC -> Aggiungi macchina virtuale di Azure.On the Automation account dashboard, click DSC Nodes -> Add Azure VM.

Selezionare una macchina virtuale di Azure da caricare.Select an Azure virtual machine to onboard.

Se nel computer non è installata l'estensione di stato PowerShell desiderata e tramite il PowerShell e lo stato di alimentazione è "in esecuzione", fare clic su Connetti.If the machine does not have the PowerShell desired state extension installed and the power state is running, click Connect.

In Registrazione immettere i valori di Gestione configurazione locale per PowerShell DSC necessari per il proprio caso d'uso e facoltativamente una configurazione del nodo da assegnare alla VM.Under Registration, enter the PowerShell DSC Local Configuration Manager values required for your use case, and optionally a node configuration to assign to the VM.

Modelli di Gestione risorse di AzureAzure Resource Manager templates

Le macchine virtuali di Azure possono essere distribuite e caricate in Automation DSC di Azure usando i modelli di Gestione risorse di Azure.Azure virtual machines can be deployed and onboarded to Azure Automation DSC via Azure Resource Manager templates. Per un modello di esempio che carica una VM esistente in Automation DSC per Azure, vedere Configurare una VM tramite l'estensione DSC e Automation DSC per Azure .See Configure a VM via DSC extension and Azure Automation DSC for an example template that onboards an existing VM to Azure Automation DSC. Per trovare la chiave e l'URL di registrazione accettati come input in questo modello, vedere la sezione Registrazione sicura è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.To find the registration key and registration URL taken as input in this template, see the Secure registration section below.

PowerShellPowerShell

Il cmdlet Register-AzureRmAutomationDscNode può essere usato per caricare macchine virtuali nel portale di Azure tramite PowerShell.The Register-AzureRmAutomationDscNode cmdlet can be used to onboard virtual machines in the Azure portal via PowerShell.

Macchine virtuali di Amazon Web Services (AWS)Amazon Web Services (AWS) virtual machines

È possibile caricare con facilità le macchine virtuali Amazon Web Services per la gestione della configurazione da Automation DSC per Azure mediante il toolkit DSC AWS.You can easily onboard Amazon Web Services virtual machines for configuration management by Azure Automation DSC using the AWS DSC Toolkit. Altre informazioni sul toolkit sono disponibili qui.You can learn more about the toolkit here.

Computer fisici/macchine virtuali Windows locali o in un cloud diverso da Azure/AWSPhysical/virtual Windows machines on-premises, or in a cloud other than Azure/AWS

I computer Windows locali e le macchine virtuali Windows in cloud non di Azure, ad esempio Amazon Web Services, possono essere caricati in Automation DSC per Azure con pochi e semplici passaggi, a condizione che abbiano l'accesso in uscita a Internet:On-premises Windows machines and Windows machines in non-Azure clouds (such as Amazon Web Services) can also be onboarded to Azure Automation DSC, as long as they have outbound access to the internet, via a few simple steps:

  1. Assicurarsi che nei computer da caricare in Automation DSC per Azure sia installata la versione più recente di WMF 5 .Make sure the latest version of WMF 5 is installed on the machines you want to onboard to Azure Automation DSC.
  2. Seguire le istruzioni riportate nella sezione Generazione di metaconfigurazioni DSC di seguito per generare una cartella contenente le metaconfigurazioni DSC necessarie.Follow the directions in section Generating DSC metaconfigurations below to generate a folder containing the needed DSC metaconfigurations.
  3. Applicare in remoto la metaconfigurazione di PowerShell DSC ai computer da caricare.Remotely apply the PowerShell DSC metaconfiguration to the machines you want to onboard. Nel computer dal quale viene eseguito questo comando deve essere installata la versione più recente di WMF 5:The machine this command is run from must have the latest version of WMF 5 installed:

    Set-DscLocalConfigurationManager -Path C:\Users\joe\Desktop\DscMetaConfigs -ComputerName MyServer1, MyServer2
    
  4. Se non è possibile applicare le metaconfigurazioni di PowerShell DSC in remoto, copiare la cartella delle metaconfigurazioni dal passaggio 2 in ogni computer da caricare.If you cannot apply the PowerShell DSC metaconfigurations remotely, copy the metaconfigurations folder from step 2 onto each machine to onboard. Chiamare quindi Set-DscLocalConfigurationManager localmente in ogni computer da caricare.Then call Set-DscLocalConfigurationManager locally on each machine to onboard.

  5. Tramite il portale di Azure o i cmdlet verificare che ora i computer da caricare siano visualizzati come nodi DSC registrati nell'account di Automazione di Azure.Using the Azure portal or cmdlets, check that the machines to onboard now show up as DSC nodes registered in your Azure Automation account.

Computer fisici/macchine virtuali Linux locali, in Azure o in un cloud diverso da AzurePhysical/virtual Linux machines on-premises, in Azure, or in a cloud other than Azure

I computer Linux locali, i computer Linux in Azure, e le macchine virtuali Linux in cloud non di Azure possono essere caricati in Automation DSC per Azure con pochi e semplici passaggi, a condizione che abbiano l'accesso in uscita a Internet:On-premises Linux machines, Linux machines in Azure, and Linux machines in non-Azure clouds can also be onboarded to Azure Automation DSC, as long as they have outbound access to the internet, via a few simple steps:

  1. Assicurarsi che la versione più recente di PowerShell DSC (Desidered State Configuration) per Linux sia installata nei computer in cui caricare Automation DSC per Azure.Make sure the latest version of PowerShell Desired State Configuration for Linux is installed on the machines you want to onboard to Azure Automation DSC.
  2. Se i valori predefiniti di Gestione configurazione locale per PowerShell DSC corrispondono al caso d'uso corrente e si vogliono caricare i computer in modo che entrambi eseguano il pull e inviino informazioni ad Automation DSC per Azure:If the PowerShell DSC Local Configuration Manager defaults match your use case, and you want to onboard machines such that they both pull from and report to Azure Automation DSC:

    • In tutti i computer Linux da caricare in Automation DSC per Azure usare Register.py per caricarli con i valori predefiniti di Gestione configurazione locale per PowerShell DSC:On each Linux machine to onboard to Azure Automation DSC, use Register.py to onboard using the PowerShell DSC Local Configuration Manager defaults:

      /opt/microsoft/dsc/Scripts/Register.py <Automation account registration key> <Automation account registration URL>

    • Per trovare la chiave e l'URL di registrazione per l'account di automazione, vedere la sezione Registrazione sicura è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.To find the registration key and registration URL for your Automation account, see the Secure registration section below.

      Se i valori predefiniti di Gestione configurazione locale per PowerShell DSC non corrispondono al caso d'uso corrente o si vogliono caricare i computer in modo che inviino informazioni solo ad Automation DSC per Azure, ma non eseguano il pull della configurazione o dei moduli di PowerShell, seguire i passaggi da 3 a 6.If the PowerShell DSC Local Configuration Manager defaults do not match your use case, or you want to onboard machines such that they only report to Azure Automation DSC, but do not pull configuration or PowerShell modules from it, follow steps 3 - 6. In caso contrario, andare direttamente al passaggio 6.Otherwise, proceed directly to step 6.

  3. Seguire le istruzioni riportate di seguito nella sezione Generazione di metaconfigurazioni DSC per generare una cartella contenente le metaconfigurazioni DSC necessarie.Follow the directions in the Generating DSC metaconfigurations section below to generate a folder containing the needed DSC metaconfigurations.

  4. Applicare in remoto la metaconfigurazione di PowerShell DSC ai computer da caricare:Remotely apply the PowerShell DSC metaconfiguration to the machines you want to onboard:

    $SecurePass = ConvertTo-SecureString -String "<root password>" -AsPlainText -Force
    $Cred = New-Object System.Management.Automation.PSCredential "root", $SecurePass
    $Opt = New-CimSessionOption -UseSsl -SkipCACheck -SkipCNCheck -SkipRevocationCheck
    
    # need a CimSession for each Linux machine to onboard
    
    $Session = New-CimSession -Credential $Cred -ComputerName <your Linux machine> -Port 5986 -Authentication basic -SessionOption $Opt
    
    Set-DscLocalConfigurationManager -CimSession $Session -Path C:\Users\joe\Desktop\DscMetaConfigs
    

Nel computer dal quale viene eseguito questo comando deve essere installata la versione più recente di WMF 5 .The machine this command is run from must have the latest version of WMF 5 installed.

  1. Se non è possibile caricare le metaconfigurazioni di PowerShell DSC in remoto, per ogni computer Linux da caricare copiare la metaconfigurazione corrispondente a quel computer dalla cartella nel passaggio 5 nel computer Linux.If you cannot apply the PowerShell DSC metaconfigurations remotely, for each Linux machine to onboard, copy the metaconfiguration corresponding to that machine from the folder in step 5 onto the Linux machine. Chiamare quindi SetDscLocalConfigurationManager.py localmente in ogni computer Linux da caricare in Automation DSC per Azure:Then call SetDscLocalConfigurationManager.py locally on each Linux machine you want to onboard to Azure Automation DSC:

    /opt/microsoft/dsc/Scripts/SetDscLocalConfigurationManager.py -configurationmof <path to metaconfiguration file>

  2. Tramite il portale di Azure o i cmdlet verificare che ora i computer da caricare siano visualizzati come nodi DSC registrati nell'account di Automazione di Azure.Using the Azure portal or cmdlets, check that the machines to onboard now show up as DSC nodes registered in your Azure Automation account.

Generazione di metaconfigurazioni DSCGenerating DSC metaconfigurations

Per caricare in modo generico qualsiasi computer in Automation DSC per Azure, può essere generata una metaconfigurazione DSC che, quando applicata, indichi all'agente DSC nel computer di eseguire il pull e/o inviare informazioni ad Automation DSC per Azure.To generically onboard any machine to Azure Automation DSC, a DSC metaconfiguration can be generated that, when applied, tells the DSC agent on the machine to pull from and/or report to Azure Automation DSC. Le metaconfigurazioni DSC per Automation DSC per Azure possono essere generate tramite una configurazione DSC di PowerShell o tramite i cmdlet PowerShell di Automazione di Azure.DSC metaconfigurations for Azure Automation DSC can be generated using either a PowerShell DSC configuration, or the Azure Automation PowerShell cmdlets.

Nota

Le metaconfigurazioni DSC contengono i segreti necessari per caricare un computer in un account di automazione per la relativa gestione.DSC metaconfigurations contain the secrets needed to onboard a machine to an Automation account for management. Assicurarsi di proteggere adeguatamente le metaconfigurazioni DSC create oppure eliminarle dopo l'uso.Make sure to properly protect any DSC metaconfigurations you create, or delete them after use.

Uso di una configurazione DSCUsing a DSC Configuration

  1. Aprire PowerShell ISE come amministratore in un computer nell'ambiente locale.Open the PowerShell ISE as an administrator in a machine in your local environment. Nel computer deve essere installata la versione più recente di WMF 5 .The machine must have the latest version of WMF 5 installed.
  2. Copiare localmente lo script seguente.Copy the following script locally. Questo script contiene una configurazione DSC di PowerShell per la creazione delle metaconfigurazioni e un comando per avviare la creazione delle metaconfigurazioni.This script contains a PowerShell DSC configuration for creating metaconfigurations, and a command to kick off the metaconfiguration creation.

    # The DSC configuration that will generate metaconfigurations
    [DscLocalConfigurationManager()]
    Configuration DscMetaConfigs
    {
    
        param
        (
            [Parameter(Mandatory=$True)]
            [String]$RegistrationUrl,
    
            [Parameter(Mandatory=$True)]
            [String]$RegistrationKey,
    
            [Parameter(Mandatory=$True)]
            [String[]]$ComputerName,
    
            [Int]$RefreshFrequencyMins = 30,
    
            [Int]$ConfigurationModeFrequencyMins = 15,
    
            [String]$ConfigurationMode = "ApplyAndMonitor",
    
            [String]$NodeConfigurationName,
    
            [Boolean]$RebootNodeIfNeeded= $False,
    
            [String]$ActionAfterReboot = "ContinueConfiguration",
    
            [Boolean]$AllowModuleOverwrite = $False,
    
            [Boolean]$ReportOnly
        )
    
        if(!$NodeConfigurationName -or $NodeConfigurationName -eq "")
        {
            $ConfigurationNames = $null
        }
        else
        {
            $ConfigurationNames = @($NodeConfigurationName)
        }
    
        if($ReportOnly)
        {
        $RefreshMode = "PUSH"
        }
        else
        {
        $RefreshMode = "PULL"
        }
    
        Node $ComputerName
        {
    
            Settings
            {
                RefreshFrequencyMins = $RefreshFrequencyMins
                RefreshMode = $RefreshMode
                ConfigurationMode = $ConfigurationMode
                AllowModuleOverwrite = $AllowModuleOverwrite
                RebootNodeIfNeeded = $RebootNodeIfNeeded
                ActionAfterReboot = $ActionAfterReboot
                ConfigurationModeFrequencyMins = $ConfigurationModeFrequencyMins
            }
    
            if(!$ReportOnly)
            {
            ConfigurationRepositoryWeb AzureAutomationDSC
                {
                    ServerUrl = $RegistrationUrl
                    RegistrationKey = $RegistrationKey
                    ConfigurationNames = $ConfigurationNames
                }
    
                ResourceRepositoryWeb AzureAutomationDSC
                {
                ServerUrl = $RegistrationUrl
                RegistrationKey = $RegistrationKey
                }
            }
    
            ReportServerWeb AzureAutomationDSC
            {
                ServerUrl = $RegistrationUrl
                RegistrationKey = $RegistrationKey
            }
        }
    }
    
    # Create the metaconfigurations
    # TODO: edit the below as needed for your use case
    $Params = @{
        RegistrationUrl = '<fill me in>';
        RegistrationKey = '<fill me in>';
        ComputerName = @('<some VM to onboard>', '<some other VM to onboard>');
        NodeConfigurationName = 'SimpleConfig.webserver';
        RefreshFrequencyMins = 30;
        ConfigurationModeFrequencyMins = 15;
        RebootNodeIfNeeded = $False;
        AllowModuleOverwrite = $False;
        ConfigurationMode = 'ApplyAndMonitor';
        ActionAfterReboot = 'ContinueConfiguration';
        ReportOnly = $False;  # Set to $True to have machines only report to AA DSC but not pull from it
    }
    
    # Use PowerShell splatting to pass parameters to the DSC configuration being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    DscMetaConfigs @Params
    
  3. Specificare il codice di registrazione e l'URL per l'account di automazione, nonché i nomi dei computer da caricare.Fill in the registration key and URL for your Automation account, as well as the names of the machines to onboard. Tutti gli altri parametri sono facoltativi.All other parameters are optional. Per trovare la chiave e l'URL di registrazione per l'account di automazione, vedere la sezione Registrazione sicura è disponibile la procedura per tenere traccia dell'avanzamento o risolverne i problemi.To find the registration key and registration URL for your Automation account, see the Secure registration section below.

  4. Se si vuole che i computer inviino informazioni sullo stato DSC ad Automation DSC per Azure ma non eseguano il pull della configurazione o dei moduli di PowerShell, impostare il parametro ReportOnly su true.If you want the machines to report DSC status information to Azure Automation DSC, but not pull configuration or PowerShell modules, set the ReportOnly parameter to true.
  5. Eseguire lo script.Run the script. A questo punto è disponibile una cartella denominata DscMetaConfigs nella directory di lavoro, contenente le metaconfigurazioni di PowerShell DSC per i computer da caricare (come amministratore):You should now have a folder called DscMetaConfigs in your working directory, containing the PowerShell DSC metaconfigurations for the machines to onboard (as an administrator):

    Set-DscLocalConfigurationManager -Path ./DscMetaConfigs
    

Uso dei cmdlet di Automazione di AzureUsing the Azure Automation cmdlets

Se i valori predefiniti di Gestione configurazione locale per PowerShell DSC corrispondono al caso d'uso corrente e si vuole caricare i computer in modo che entrambi eseguano il pull e inviino informazioni ad Automation DSC per Azure, i cmdlet di Automazione di Azure offrono un metodo semplificato per generare le metaconfigurazioni DSC necessarie:If the PowerShell DSC Local Configuration Manager defaults match your use case, and you want to onboard machines such that they both pull from and report to Azure Automation DSC, the Azure Automation cmdlets provide a simplified method of generating the DSC metaconfigurations needed:

  1. Aprire la console di PowerShell o PowerShell ISE come amministratore in un computer nell'ambiente locale.Open the PowerShell console or PowerShell ISE as an administrator in a machine in your local environment.
  2. Connettersi ad Azure Resource Manager con Add-AzureRmAccountConnect to Azure Resource Manager using Add-AzureRmAccount
  3. Dall'account di automazione in cui si caricheranno i nodi, scaricare le metaconfigurazioni di PowerShell DSC per i computer da caricare:Download the PowerShell DSC metaconfigurations for the machines you want to onboard from the Automation account to which you want to onboard nodes:

    # Define the parameters for Get-AzureRmAutomationDscOnboardingMetaconfig using PowerShell Splatting
    $Params = @{
    
        ResourceGroupName = 'ContosoResources'; # The name of the ARM Resource Group that contains your Azure Automation Account
        AutomationAccountName = 'ContosoAutomation'; # The name of the Azure Automation Account where you want a node on-boarded to
        ComputerName = @('web01', 'web02', 'sql01'); # The names of the computers that the meta configuration will be generated for
        OutputFolder = "$env:UserProfile\Desktop\";
    }
    # Use PowerShell splatting to pass parameters to the Azure Automation cmdlet being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    Get-AzureRmAutomationDscOnboardingMetaconfig @Params
    
  4. A questo punto è disponibile una cartella denominata DscMetaConfigs, contenente le metaconfigurazioni di PowerShell DSC per i computer da caricare (come amministratore):You should now have a folder called DscMetaConfigs, containing the PowerShell DSC metaconfigurations for the machines to onboard (as an administrator):

    Set-DscLocalConfigurationManager -Path $env:UserProfile\Desktop\DscMetaConfigs
    

Registrazione sicuraSecure registration

I computer possono essere caricati in modo sicuro in un account di Automazione di Azure tramite il protocollo di registrazione DSC WMF 5, che consente a un nodo DSC di autenticarsi con un server di pull o di report di PowerShell DSC V2, incluso Automation DSC per Azure.Machines can securely onboard to an Azure Automation account through the WMF 5 DSC registration protocol, which allows a DSC node to authenticate to a PowerShell DSC V2 Pull or Reporting server (including Azure Automation DSC). Il nodo si registra al server con un URL di registrazione, autenticandosi con una Chiave di registrazione.The node registers to the server at a Registration URL, authenticating using a Registration key. Durante la registrazione, il nodo DSC e il server di pull/report DSC negoziano un certificato univoco per questo nodo da usare per l'autenticazione con il server successivamente alla registrazione.During registration, the DSC node and DSC Pull/Reporting server negotiate a unique certificate for this node to use for authentication to the server post-registration. Questo processo impedisce ai nodi caricati di rappresentarsi reciprocamente, ad esempio nel caso di un nodo compromesso e che presenta un comportamento dannoso.This process prevents onboarded nodes from impersonating one another, such as if a node is compromised and behaving maliciously. Dopo la registrazione, la chiave di registrazione non viene usata di nuovo per l'autenticazione e viene eliminata dal nodo.After registration, the Registration key is not used for authentication again, and is deleted from the node.

È possibile ottenere le informazioni richieste per il protocollo di registrazione DSC nel pannello Gestisci chiavi del portale di anteprima di Azure.You can get the information required for the DSC registration protocol from the Manage Keys blade in the Azure preview portal. Aprire questo pannello facendo clic sull'icona della chiave nel pannello Informazioni di base dell'account di automazione.Open this blade by clicking the key icon on the Essentials panel for the Automation account.

  • L'URL di registrazione si trova nel campo URL del pannello Gestisci chiavi.Registration URL is the URL field in the Manage Keys blade.
  • La chiave di registrazione si trova nel campo Chiave di accesso primaria o Chiave di accesso secondaria del pannello Gestisci chiavi.Registration key is the Primary Access Key or Secondary Access Key in the Manage Keys blade. È possibile usare una delle due chiavi.Either key can be used.

Per maggiore sicurezza, le chiavi di accesso primaria e secondaria di un account di automazione possono essere rigenerate in qualsiasi momento, tramite il pannello Gestisci chiavi , per evitare l'esecuzione di registrazioni di nodi future con chiavi precedenti.For added security, the primary and secondary access keys of an Automation account can be regenerated at any time (on the Manage Keys blade) to prevent future node registrations using previous keys.

Risoluzione dei problemi di caricamento di macchine virtuali di AzureTroubleshooting Azure virtual machine onboarding

Automation DSC di Azure consente di caricare macchine virtuali Windows di Azure per la gestione della configurazione.Azure Automation DSC lets you easily onboard Azure Windows VMs for configuration management. Dietro le quinte, viene usata l'estensione DSC (Desired State Configuration) per le VM di Azure per registrare la VM con Automation DSC per Azure.Under the hood, the Azure VM Desired State Configuration extension is used to register the VM with Azure Automation DSC. Poiché l'estensione DSC (Desired State Configuration) per le VM di Azure viene eseguita in modalità asincrona, può essere importante tenere traccia dell'avanzamento e risolvere i problemi di esecuzione.Since the Azure VM Desired State Configuration extension runs asynchronously, tracking its progress and troubleshooting its execution may be important.

Nota

Qualsiasi metodo di caricamento di una VM Windows di Azure in Automation DSC per Azure che usa l'estensione DSC (Desired State Configuration) per le VM di Azure può richiedere fino a un'ora prima che il modo appaia come registrato in Automazione di Azure.Any method of onboarding an Azure Windows VM to Azure Automation DSC that uses the Azure VM Desired State Configuration extension could take up to an hour for the node to show up as registered in Azure Automation. Questo comportamento è causato dall'installazione di Windows Management Framework 5.0 nella macchina virtuale da parte dell'estensione DSC per le VM di Azure, necessario per caricare la VM in Automation DSC per Azure.This is due to the installation of Windows Management Framework 5.0 on the VM by the Azure VM DSC extension, which is required to onboard the VM to Azure Automation DSC.

Per risolvere i problemi o visualizzare lo stato dell'estensione DSC per le macchine virtuali di Azure, nel portale di Azure passare alla macchina virtuali da caricare, quindi fare clic su -> Tutte le impostazioni -> Estensioni -> DSC.To troubleshoot or view the status of the Azure VM Desired State Configuration extension, in the Azure portal navigate to the VM being onboarded, then click -> All settings -> Extensions -> DSC. Per altri dettagli, è possibile fare clic su Visualizza stato dettagliato.For more details, you can click View detailed status.

Scadenza del certificato e nuova registrazioneCertificate expiration and reregistration

Dopo la registrazione di un computer come nodo DSC in Automation DSC per Azure, esistono diversi motivi, che rendono necessario ripetere la registrazione del nodo in futuro:After registering a machine as a DSC node in Azure Automation DSC, there are a number of reasons why you may need to reregister that node in the future:

  • Dopo la registrazione, ogni nodo negozia automaticamente un certificato univoco per l'autenticazione che scade dopo un anno.After registering, each node automatically negotiates a unique certificate for authentication that expires after one year. Attualmente il protocollo di registrazione di PowerShell DSC non può rinnovare automaticamente i certificati quando si avvicina la scadenza, quindi è necessario registrare di nuovo i nodi dopo un anno.Currently, the PowerShell DSC registration protocol cannot automatically renew certificates when they are nearing expiration, so you need to reregister the nodes after a year's time. Prima di registrare di nuovo, verificare che ogni nodo esegua Windows Management Framework 5.0 RTM.Before reregistering, ensure that each node is running Windows Management Framework 5.0 RTM. Se il certificato di autenticazione di un nodo scade e se il nodo non è registrato, il nodo non sarà in grado di comunicare con Automazione di Azure e sarà indicato che "Non risponde".If a node's authentication certificate expires, and the node is not reregistered, the node will be unable to communicate with Azure Automation and will be marked 'Unresponsive.' Una registrazione eseguita 90 giorni o meno dall'ora di scadenza del certificato, o in qualsiasi momento dopo l'ora di scadenza del certificato. comporterà un nuovo certificato che viene generato e utilizzato.Reregistration performed 90 days or less from the certificate expiration time, or at any point after the certificate expiration time, will result in a new certificate being generated and used.
  • Per modificare qualsiasi valore di Gestione configurazione locale per PowerShell DS impostato durante la registrazione iniziale del nodo, ad esempio ConfigurationMode.To change any PowerShell DSC Local Configuration Manager values that were set during initial registration of the node, such as ConfigurationMode. Attualmente, i valori dell'agente DSC possono essere modificati solo tramite la registrazione.Currently, these DSC agent values can only be changed through reregistration. L'unica eccezione è il valore di Configurazione del nodo assegnato al nodo che può essere modificato direttamente in Automation DSC per Azure.The one exception is the Node Configuration assigned to the node -- this can be changed in Azure Automation DSC directly.

La ripetizione della registrazione può essere eseguita così' come è stato registrato il nodo inizialmente, usando uno dei metodi di caricamento descritti in questo documento.Reregistration can be performed in the same way you registered the node initially, using any of the onboarding methods described in this document. Non è necessario annullare la registrazione di un nodo da Automation DSC per Azure prima di registrarlo di nuovo.You do not need to unregister a node from Azure Automation DSC before reregistering it.