Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nota
Automazione di Azure State Configuration verrà ritirato il 30 settembre 2027. Eseguire la transizione a Azure Machine Configuration entro tale data. Per ulteriori informazioni, vedere il post del blog. Il servizio Configurazione computer Azure combina le funzionalità dell'estensione DSC, Automazione di Azure State Configuration e le funzionalità più comunemente richieste dai clienti. Configurazione macchina di Azure include anche il supporto del computer ibrido tramite i server con abilitazione per Arc.
Importante
Il link di navigazione Aggiungi, Configurazione Compose e Galleria verranno rimossi dal portale il 31 marzo 2025.
Attenzione
Automazione di Azure DSC per Linux è stato ritirato il 30 settembre 2023. Per altre informazioni, vedere l'annuncio.
È possibile compilare configurazioni Desired State Configuration (DSC) in Automazione di Azure State Configuration nei modi seguenti:
Servizio di compilazione della Configurazione dello stato di Azure
- Metodo per principianti con interfaccia utente interattiva
- Tieni traccia facilmente dello stato dei lavori
Windows PowerShell
- Chiamare da Windows PowerShell nella workstation locale o nel servizio di compilazione
- Integrazione con la pipeline di testo per lo sviluppo
- Fornitura di valori di parametri complessi
- Uso di dati di nodi e non di nodi su larga scala
- Miglioramento significativo delle prestazioni
È anche possibile usare modelli di Azure Resource Manager con estensione Azure Desired State Configuration (DSC) per eseguire il push delle configurazioni nelle macchine virtuali Azure. L'estensione DSC Azure usa il framework dell'agente di macchine virtuali Azure per distribuire, applicare e creare report sulle configurazioni DSC in esecuzione in macchine virtuali Azure. Per informazioni dettagliate sulla compilazione usando i modelli di Azure Resource Manager, vedere estensione Desired State Configuration con modelli di Azure Resource Manager.
Compilare una configurazione DSC in Azure State Configuration
Portale
- Nell'account di Automazione selezionare State configuration (DSC).
- Selezionare nella scheda Configurazioni e quindi selezionare il nome della configurazione da compilare.
- Selezionare Compila.
- Se la configurazione non ha alcun parametro, verrà richiesto di confermare se compilarla. Se la configurazione include parametri, viene aperto il riquadro Configurazione compilazione in modo che sia possibile specificare i valori dei parametri.
- Verrà aperta la pagina Processo di compilazione che consente di tenere traccia dello stato dei processi di compilazione. È anche possibile usare questa pagina per tenere traccia delle configurazioni dei nodi (documenti di configurazione MOF) posizionate nel server di pull Automazione di Azure State Configuration.
Azure PowerShell
È possibile usare Start-AzAutomationDscCompilationJob per iniziare la compilazione con Windows PowerShell. Il codice di esempio seguente avvia la compilazione di una configurazione DSC denominata SampleConfig.
Start-AzAutomationDscCompilationJob -ResourceGroupName 'MyResourceGroup' -AutomationAccountName 'MyAutomationAccount' -ConfigurationName 'SampleConfig'
Start-AzAutomationDscCompilationJob restituisce un oggetto processo di compilazione che è possibile usare per tenere traccia dello stato del processo. È quindi possibile usare questo oggetto processo di compilazione con Get-AzAutomationDscCompilationJob per determinare lo stato del processo di compilazione e Get-AzAutomationDscCompilationJobOutput per visualizzare i rispettivi flussi (output). L'esempio seguente avvia la compilazione della configurazione SampleConfig, attende il completamento e quindi ne visualizza i flussi.
$CompilationJob = Start-AzAutomationDscCompilationJob -ResourceGroupName 'MyResourceGroup' -AutomationAccountName 'MyAutomationAccount' -ConfigurationName 'SampleConfig'
while($null -eq $CompilationJob.EndTime -and $null -eq $CompilationJob.Exception)
{
$CompilationJob = $CompilationJob | Get-AzAutomationDscCompilationJob
Start-Sleep -Seconds 3
}
$CompilationJob | Get-AzAutomationDscCompilationJobOutput –Stream Any
Dichiarare i parametri di base
La dichiarazione di parametro nelle configurazioni DSC, inclusi i tipi di parametro e le proprietà, funziona come nei runbook Automazione di Azure. Per altre informazioni sui parametri del runbook, vedere Starting a runbook in Automazione di Azure.
L'esempio seguente usa i parametri FeatureName e IsPresent per determinare i valori delle proprietà nella configurazione del nodo ParametersExample.sample, generato durante la compilazione.
Configuration ParametersExample
{
param(
[Parameter(Mandatory=$true)]
[string] $FeatureName,
[Parameter(Mandatory=$true)]
[boolean] $IsPresent
)
$EnsureString = 'Present'
if($IsPresent -eq $false)
{
$EnsureString = 'Absent'
}
Node 'sample'
{
WindowsFeature ($FeatureName + 'Feature')
{
Ensure = $EnsureString
Name = $FeatureName
}
}
}
È possibile compilare configurazioni DSC che usano parametri di base nel portale di Automazione di Azure State Configuration o con Azure PowerShell.
Portale
Nel portale è possibile immettere i valori dei parametri dopo avere fatto clic su Compila.
Azure PowerShell
PowerShell richiede i parametri in un elemento hashtable dove la chiave corrisponde al nome del parametro e il valore è uguale al valore del parametro.
$Parameters = @{
'FeatureName' = 'Web-Server'
'IsPresent' = $False
}
Start-AzAutomationDscCompilationJob -ResourceGroupName 'MyResourceGroup' -AutomationAccountName 'MyAutomationAccount' -ConfigurationName 'ParametersExample' -Parameters $Parameters
Per informazioni sul passaggio di oggetti PSCredential come parametri, vedere Asset di credenziali.
Compilare configurazioni contenenti risorse composite in Automazione di Azure
La funzionalità Risorse composite consente di usare le configurazioni DSC come risorse annidate in una configurazione. Questa funzionalità consente l'applicazione di più configurazioni a una singola risorsa. Per informazioni sulle risorse composite, vedere Risorse composite: uso di una configurazione DSC come risorsa.
Nota
In modo che le configurazioni contenenti risorse composite vengano compilate correttamente, è prima necessario importare in Automazione di Azure tutte le risorse DSC su cui si basano i compositi. L'aggiunta di una risorsa composita DSC non è diversa dall'aggiunta di qualsiasi modulo di PowerShell a Automazione di Azure. Questo processo è documentato in Gestisci moduli in Automazione di Azure.
Gestire ConfigurationData durante la compilazione delle configurazioni in Automazione di Azure
ConfigurationData è un parametro di DSC predefinito che consente di separare la configurazione strutturale dalla configurazione specifica di qualsiasi ambiente mentre si usa PowerShell DSC. Per altre informazioni, vedere Separazione di "cosa" da "dove" in PowerShell DSC.
Nota
Durante la compilazione in Automazione di Azure State Configuration, è possibile usare ConfigurationData in Azure PowerShell ma non nel portale di Azure.
L'esempio seguente di configurazione DSC usa ConfigurationData tramite le parole chiave $ConfigurationData e $AllNodes. Per questo esempio è necessario anche il modulo xWebAdministration.
Configuration ConfigurationDataSample
{
Import-DscResource -ModuleName xWebAdministration -Name MSFT_xWebsite
Write-Verbose $ConfigurationData.NonNodeData.SomeMessage
Node $AllNodes.Where{$_.Role -eq 'WebServer'}.NodeName
{
xWebsite Site
{
Name = $Node.SiteName
PhysicalPath = $Node.SiteContents
Ensure = 'Present'
}
}
}
È possibile compilare la configurazione DSC precedente con Windows PowerShell. Lo script seguente aggiunge due configurazioni del nodo al servizio pull Automazione di Azure State Configuration: ConfigurationDataSample.MyVM1 e ConfigurationDataSample.MyVM3.
$ConfigData = @{
AllNodes = @(
@{
NodeName = 'MyVM1'
Role = 'WebServer'
},
@{
NodeName = 'MyVM2'
Role = 'SQLServer'
},
@{
NodeName = 'MyVM3'
Role = 'WebServer'
}
)
NonNodeData = @{
SomeMessage = 'I love Azure Automation State Configuration and DSC!'
}
}
Start-AzAutomationDscCompilationJob -ResourceGroupName 'MyResourceGroup' -AutomationAccountName 'MyAutomationAccount' -ConfigurationName 'ConfigurationDataSample' -ConfigurationData $ConfigData
Lavorare con le risorse in Automazione di Azure durante la compilazione
I riferimenti agli asset sono uguali sia in Automazione di Azure State Configuration che nei runbook. Per altre informazioni, vedere gli articoli seguenti:
Risorse di credenziali
Se una configurazione ha un parametro che specifica un oggetto />
Per proteggere le credenziali nelle configurazioni dei nodi, crittografare le credenziali nel file MOF di configurazione del nodo. È necessario concedere a PowerShell DSC l'autorizzazione per l'output delle credenziali in testo normale durante la generazione MOF della configurazione del nodo. PowerShell DSC non è consapevole che Automazione di Azure crittografa l'intero file MOF dopo che è stato generato da un processo di compilazione.
È possibile indicare a PowerShell DSC che le credenziali devono essere restituite in testo normale nei file MOF di configurazione del nodo generato usando i dati di configurazione. È consigliabile passare PSDscAllowPlainTextPassword = $true tramite ConfigurationData per il nome di ogni blocco di nodi visualizzato nella configurazione DSC che usa le credenziali.
L'esempio seguente mostra una configurazione DSC che utilizza un asset delle credenziali di Automazione.
Configuration CredentialSample
{
Import-DscResource -ModuleName PSDesiredStateConfiguration
$Cred = Get-AutomationPSCredential 'SomeCredentialAsset'
Node $AllNodes.NodeName
{
File ExampleFile
{
SourcePath = '\\Server\share\path\file.ext'
DestinationPath = 'C:\destinationPath'
Credential = $Cred
}
}
}
È possibile compilare la configurazione DSC precedente con PowerShell. Il codice di PowerShell seguente aggiunge due configurazioni dei nodi al server di pull Automazione di Azure State Configuration: CredentialSample.MyVM1 e CredentialSample.MyVM2.
$ConfigData = @{
AllNodes = @(
@{
NodeName = '*'
PSDscAllowPlainTextPassword = $True
},
@{
NodeName = 'MyVM1'
},
@{
NodeName = 'MyVM2'
}
)
}
Start-AzAutomationDscCompilationJob -ResourceGroupName 'MyResourceGroup' -AutomationAccountName 'MyAutomationAccount' -ConfigurationName 'CredentialSample' -ConfigurationData $ConfigData
Nota
Al termine della compilazione, è possibile che venga visualizzato il messaggio di errore
The 'Microsoft.PowerShell.Management' module was not imported because the 'Microsoft.PowerShell.Management' snap-in was already imported. È possibile ignorare in modo sicuro questo messaggio.
Compilare la configurazione DSC in Windows PowerShell
Il processo di compilazione delle configurazioni DSC in Windows PowerShell è incluso nella documentazione di PowerShell DSC Write, Compile e Apply a Configuration. È possibile eseguire questo processo da una workstation per sviluppatori o all'interno di un servizio di compilazione, ad esempio Azure DevOps. È quindi possibile importare i file MOF generati compilando la configurazione nel servizio Azure State Configuration.
La compilazione in Windows PowerShell offre anche la possibilità di firmare il contenuto della configurazione. L'agente DSC verifica la configurazione di un nodo firmata in locale in un nodo gestito. La verifica consente di assicurare che la configurazione applicata al nodo provenga da un'origine autorizzata.
È anche possibile importare configurazioni dei nodi compilate all'esterno di Azure. L'importazione include la compilazione da una workstation per sviluppatori o in un servizio, ad esempio Azure DevOps. Questo approccio offre molti vantaggi, tra cui prestazioni e affidabilità.
Nota
Un file di configurazione del nodo non deve essere maggiore di 1 MB per consentire Automazione di Azure di importarlo.
Per altre informazioni su come firmare le configurazioni del nodo, vedere Miglioramenti in WMF 5.1: come firmare la configurazione e il modulo.
Importare una configurazione del nodo nel portale di Azure
Nell'account di Automazione, selezionare Configurazione stato (DSC) sotto Gestione della configurazione.
Nella pagina Configurazione stato (DSC) selezionare nella scheda Configurazioni e quindi selezionare Aggiungi.
Nella pagina Importa selezionare l'icona della cartella accanto al campo File di configurazione del nodo per cercare un file MOF di configurazione del nodo nel computer locale.
Immettere un nome nel campo Nome configurazione. Il nome deve corrispondere al nome della configurazione da cui è stata compilata la configurazione del nodo.
Seleziona OK.
Importare una configurazione del nodo con Azure PowerShell
È possibile usare il cmdlet Import-AzAutomationDscNodeConfiguration per importare una configurazione del nodo nell'account di Automazione.
$importAzAutomationDscNodeConfigurationSplat = @{
AutomationAccountName = 'MyAutomationAccount'
ResourceGroupName = 'MyResourceGroup'
ConfigurationName = 'MyNodeConfiguration'
Path = 'C:\MyConfigurations\TestVM1.mof'
}
Import-AzAutomationDscNodeConfiguration @importAzAutomationDscNodeConfigurationSplat
Passaggi successivi
- Per iniziare, vedere Introduzione a Automazione di Azure State Configuration.
- Per informazioni sulla compilazione di configurazioni DSC in modo che sia possibile assegnarle ai nodi di destinazione, vedere Configurazioni DSC di Automazione di Azure State Configuration.
- Per informazioni di riferimento sui cmdlet di PowerShell, vedere Az.Automation.
- Per informazioni sui prezzi, vedere prezzi di Automazione di Azure State Configuration.
- Per un esempio di uso di State Configuration in una pipeline di distribuzione continua, vedere Setup distribuzione continua con Chocolatey.
- Per la risoluzione dei problemi relativi alla compilazione di configurazioni DSC in Automazione di Azure State Configuration, vedere Risoluzione dei problemi di Automazione di Azure State Configuration.