Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Nota
Azure Automation State Configuration será descontinuado a 30 de setembro de 2027, por favor, transite para Configuração de Máquina do Azure até essa data. Para mais informações, consulte o anúncio do blog. O serviço Azure Configuração de Máquina combina funcionalidades da Extensão DSC, Azure Automation State Configuration e as funcionalidades mais frequentemente solicitadas pelo feedback dos clientes. Azure Configuração da Máquina inclui também suporte para máquinas híbridas através de servidores com suporte Arc.
Importante
Os links de navegação Adicionar, Redigir configuração e Galeria serão removidos do portal em 31 de março de 2025.
Atenção
O Azure Automation DSC para Linux foi descontinuado em 30 de setembro de 2023. Para mais informações, consulte o anúncio.
Azure Automation State Configuration permite especificar configurações para os seus servidores e garantir que esses servidores estão no estado especificado ao longo do tempo.
- Adicionar uma VM para ser gerida pelo Azure Automation DSC
- Carregar uma configuração para o Azure Automation
- Compilar uma configuração em uma configuração de nó
- Atribuir uma configuração de nó a um nó gerenciado
- Verificar o status de conformidade de um nó gerenciado
Para este tutorial, usamos uma configuração DSC simples que garante que o IIS esteja instalado na VM.
Pré-requisitos
Nota
O Windows Server 2008 e o Windows Server 2008 R2 chegaram ao Fim do Suporte (EOS). Para mais informações, veja, Fim do suporte para Windows Server 2008 e Windows Server 2008 R2 e Realize atualização no local para Windows Server 2016, 2019, 2022 ou 2025. Revise o seu uso e planeie as atualizações e migrações do sistema operativo em conformidade.
- Uma conta Azure Automation. Para saber mais sobre uma conta de automação e seus requisitos, consulte Visão geral da autenticação de conta de automação.
- Uma VM do Azure Resource Manager (não clássica) a correr Windows Server 2008 R2 ou posterior. Para instruções sobre como criar uma VM, consulte Crie a sua primeira máquina virtual Windows no portal Azure.
- Azure PowerShell módulo versão 3.6 ou posterior. Executar
Get-Module -ListAvailable Azpara localizar a versão. Se precisares de atualizar, vê Install Azure PowerShell module. - Familiaridade com o Desired State Configuration (DSC). Para informações sobre DSC, veja Windows PowerShell Desired State Configuration Overview.
Suporte para configurações parciais
Azure Automation State Configuration suporta o uso de configurações parciais. Neste cenário, o DSC é configurado para gerir múltiplas configurações de forma independente, e cada configuração é retirada do Azure Automation. No entanto, apenas uma configuração pode ser atribuída a um nó por cada conta de automatização. Isso significa que, se você estiver usando duas configurações para um nó, precisará de duas contas de automação.
Para obter detalhes sobre como registrar uma configuração parcial de um serviço pull, consulte a documentação para configurações parciais.
Para obter mais informações sobre como as equipes podem trabalhar juntas para gerenciar servidores de forma colaborativa usando a configuração como código, consulte Compreendendo a função do DSC em um pipeline de CI/CD.
Iniciar sessão no Azure
Inicie sessão na sua subscrição Azure com o cmdlet Connect-AzAccount e siga as instruções no ecrã.
Connect-AzAccount
Crie e carregue uma configuração para o Azure Automation
Em um editor de texto, digite o seguinte e salve-o localmente como TestConfig.ps1.
configuration TestConfig {
Node WebServer {
WindowsFeature IIS {
Ensure = 'Present'
Name = 'Web-Server'
IncludeAllSubFeature = $true
}
}
}
Nota
Os nomes de configuração no Azure Automation devem ser limitados a no máximo 100 caracteres.
Em cenários mais avançados em que você precisa importar vários módulos que fornecem recursos DSC, certifique-se de que cada módulo tenha uma linha exclusiva Import-DscResource em sua configuração.
Chame o cmdlet Import-AzAutomationDscConfiguration para carregar a configuração em sua conta de automação.
$importAzAutomationDscConfigurationSplat = @{
SourcePath = 'C:\DscConfigs\TestConfig.ps1'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Published = $true
}
Import-AzAutomationDscConfiguration @importAzAutomationDscConfigurationSplat
Compilar uma configuração em uma configuração de nó
Uma configuração DSC deve ser compilada em uma configuração de nó antes de poder ser atribuída a um nó. Consulte Configurações DSC.
Chame o cmdlet Start-AzAutomationDscCompilationJob para compilar a configuração TestConfig numa configuração de nó denominada TestConfig.WebServer na sua conta de Automação.
$startAzAutomationDscCompilationJobSplat = @{
ConfigurationName = 'TestConfig'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
}
Start-AzAutomationDscCompilationJob @startAzAutomationDscCompilationJobSplat
Registar uma VM a ser gerida pelo State Configuration
Pode usar Azure Automation State Configuration para gerir VMs Azure (tanto Classic como Resource Manager), VMs on-premiss, máquinas Linux, VMs AWS e máquinas físicas on-premiss. Neste artigo, abordamos como registar apenas VMs do Azure Resource Manager. Para informações sobre o registo de outros tipos de máquinas, consulte Integração de máquinas para gestão pelo Azure Automation State Configuration.
Execute o cmdlet Register-AzAutomationDscNode para registar a sua VM com o Azure Automation State Configuration como um nó gerido.
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
Especificar definições do modo de configuração
Para registrar uma VM como um nó gerenciado e especificar propriedades de configuração, utilize o cmdlet Register-AzAutomationDscNode. Por exemplo, você pode especificar que o estado da máquina deve ser aplicado apenas uma vez, especificando ApplyOnly como o valor da ConfigurationMode propriedade. O State Configuration não tenta aplicar a configuração após a verificação inicial.
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
ConfigurationMode = 'ApplyOnly'
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat```
You can also specify how often DSC checks the configuration state by using the
`ConfigurationModeFrequencyMins` property. For more information about DSC configuration settings,
see [Configuring the Local Configuration Manager][05].
```powershell
# Run a DSC check every 60 minutes
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
ConfigurationModeFrequencyMins = 60
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat```
## Assign a node configuration to a managed node
Now we can assign the compiled node configuration to the VM we want to configure.
```powershell
# Get the ID of the DSC node
$getAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Name = 'DscVm'
}
$node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat
# Assign the node configuration to the DSC node
$setAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
NodeConfigurationName = 'TestConfig.WebServer'
NodeId = $node.Id
}
Set-AzAutomationDscNode @setAzAutomationDscNodeSplat
Isso atribui a configuração do nó nomeado TestConfig.WebServer ao nó DscVmDSC registrado.
Por predefinição, o nó DSC é verificado quanto à conformidade com a configuração do nó a cada 30 minutos. Para informações sobre como alterar o intervalo de verificação de conformidade, consulte Configurar o Local Configuration Manager.
Verificar o status de conformidade de um nó gerenciado
Você pode obter relatórios sobre o status de conformidade de um nó gerenciado usando o cmdlet Get-AzAutomationDscNodeReport .
# Get the ID of the DSC node
$getAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Name = 'DscVm'
}
$node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat
# Get an array of status reports for the DSC node
$getAzAutomationDscNodeReportSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
NodeId = $node.Id
}
$reports = Get-AzAutomationDscNodeReport @getAzAutomationDscNodeReportSplat
# Display the most recent report
$reports[0]
Próximos passos
- Para começar, veja Comece com Azure Automation State Configuration.
- Para aprender a ativar nós, consulte Enable Azure Automation State Configuration.
- Para aprender a compilar configurações DSC para que as possa atribuir a nós de destino, veja Compile DSC configurations in Azure Automation State Configuration.
- Para ver um exemplo de utilização de Azure Automation State Configuration numa pipeline de implementação contínua, veja Configurar implementação contínua com Chocolatey.
- Para informações sobre preços, consulte preços de Azure Automation State Configuration.
- Para obter uma referência de cmdlet do PowerShell, consulte Az.Automation.
- Para resolver problemas relacionados com a configuração das máquinas para o estado desejado usando Azure Automation State Configuration, veja Troubleshoot Azure Automation State Configuration issues.