Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota:
Azure Automation State Configuration se retirará el 30 de septiembre de 2027, realice la transición a Azure Machine Configuration por esa fecha. Para obtener más información, consulte el anuncio del blog. El servicio Azure Machine Configuration combina características de la extensión de DSC, Azure Automation State Configuration y las características más solicitadas de los comentarios de los clientes. Azure Machine Configuration también incluye compatibilidad con máquinas híbridas a través de servidores habilitados para Arc.
Importante
Los vínculos de navegación Agregar, Configuración de Compose, y Galería se quitarán del portal el 31 de marzo de 2025.
Precaución
Azure Automation DSC para Linux se ha retirado el 30 de septiembre de 2023. Para obtener más información, consulte el anuncio.
Azure Automation State Configuration permite especificar configuraciones para los servidores y asegurarse de que esos servidores están en el estado especificado a lo largo del tiempo.
- Incorporación de una máquina virtual para ser administrada por Azure Automation DSC
- Carga de una configuración en Azure Automation
- Compilar una configuración en una configuración de nodo
- Asignación de una configuración de nodo a un nodo administrado
- Comprobación del estado de cumplimiento de un nodo administrado
Para este tutorial, se usa una configuración DSC simple que se asegura de que IIS está instalado en la máquina virtual.
Requisitos previos
Nota:
Windows Server 2008 y Windows Server 2008 R2 han alcanzado la finalización del soporte (EOS). Para obtener más información, vea Fin del soporte técnico para Windows Server 2008 y Windows Server 2008 R2 y Realizar una actualización local a Windows Server 2016, 2019, 2022 o 2025. Revise el uso y planee las actualizaciones y migraciones del sistema operativo en consecuencia.
- Una cuenta de Azure Automation. Para más información sobre las cuentas de Automation y sus requisitos, consulte Introducción a la autenticación de cuentas de Automation.
- Una máquina virtual de Azure Resource Manager (no clásica) que ejecuta Windows Server 2008 R2 o posterior. Para obtener instrucciones sobre cómo crear una máquina virtual, consulte Crear la primera máquina virtual Windows en el portal de Azure.
- Azure PowerShell módulo versión 3.6 o posterior. Ejecute
Get-Module -ListAvailable Azpara encontrar la versión. Si necesita actualizar, consulte Install Azure PowerShell module. - Familiaridad con Desired State Configuration (DSC) (Configuración de Estado Deseado). Para obtener información sobre DSC, consulte Windows PowerShell Desired State Configuration Overview.
Compatibilidad con configuraciones parciales
Azure Automation State Configuration admite el uso de las configuraciones parciales. En este escenario, DSC está configurado para administrar varias configuraciones de forma independiente y cada configuración se recupera de Azure Automation. Sin embargo, solo se puede asignar una configuración a un nodo por cada cuenta de automatización. Esto significa que si usa dos configuraciones para un nodo, necesita dos cuentas de Automation.
Para obtener más información sobre cómo registrar una configuración parcial de un servicio de extracción, consulte la documentación sobre configuraciones parciales.
Para obtener más información acerca de cómo los equipos pueden trabajar juntos para administrar de forma colaborativa los servidores con la configuración como código, consulte Descripción del rol de DSC en una canalización de CI/CD.
Iniciar sesión en Azure
Inicie sesión en la suscripción de Azure con el cmdlet Connect-AzAccount y siga las instrucciones en pantalla.
Connect-AzAccount
Creación y carga de una configuración en Azure Automation
En un editor de texto, escriba lo siguiente y guárdelo localmente como TestConfig.ps1.
configuration TestConfig {
Node WebServer {
WindowsFeature IIS {
Ensure = 'Present'
Name = 'Web-Server'
IncludeAllSubFeature = $true
}
}
}
Nota:
Los nombres de configuración de Azure Automation deben limitarse a no más de 100 caracteres.
En escenarios más avanzados en los que se requiere la importación de varios módulos que proporcionen recursos de DSC, asegúrese de que cada módulo tenga una línea única Import-DscResource en la configuración.
Llame al cmdlet Import-AzAutomationDscConfiguration para cargar una configuración de nodo en la cuenta de Automation.
$importAzAutomationDscConfigurationSplat = @{
SourcePath = 'C:\DscConfigs\TestConfig.ps1'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Published = $true
}
Import-AzAutomationDscConfiguration @importAzAutomationDscConfigurationSplat
Compilar una configuración en una configuración de nodo
Una configuración DSC se debe compilar en una configuración de nodo antes de que se pueda asignar a un nodo. Consulte Configuraciones de DSC.
Ejecuta el cmdlet Start-AzAutomationDscCompilationJob para compilar la configuración TestConfig en una configuración de nodo denominada TestConfig.WebServer en tu cuenta de Automatización.
$startAzAutomationDscCompilationJobSplat = @{
ConfigurationName = 'TestConfig'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
}
Start-AzAutomationDscCompilationJob @startAzAutomationDscCompilationJobSplat
Registro de una máquina virtual que se va a administrar mediante State Configuration
Puede usar Azure Automation State Configuration para administrar máquinas virtuales de Azure (clásicas y Resource Manager), máquinas virtuales locales, máquinas Linux, máquinas virtuales de AWS y máquinas físicas locales. En este artículo, tratamos cómo registrar solo Azure Resource Manager máquinas virtuales. Para obtener información sobre cómo registrar otros tipos de máquinas, consulte Integración de máquinas para la gestión mediante la Configuración de Estado de Automatización de Azure.
Llame al cmdlet Register-AzAutomationDscNode para registrar la máquina virtual con Azure Automation State Configuration como nodo administrado.
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
Especificación de opciones del modo de configuración
Use el cmdlet Register-AzAutomationDscNode para registrar una máquina virtual como un nodo administrado y especificar las propiedades de configuración. Por ejemplo, puede especificar que el estado de la máquina se aplique solo una vez; para ello, especifique ApplyOnly como valor de la propiedad ConfigurationMode. State Configuration no intenta aplicar la configuración después de la comprobación 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
Esto asigna la configuración de nodo llamada TestConfig.WebServer al nodo DSC registrado DscVm.
De forma predeterminada, se comprueba el cumplimiento de la configuración del nodo DSC cada 30 minutos. Para obtener información sobre cómo cambiar el intervalo de comprobación de cumplimiento, vea Configuring the Local Configuration Manager.
Comprobación del estado de cumplimiento de un nodo administrado
Puede obtener informes sobre el estado de cumplimiento de un nodo administrado mediante el 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]
Pasos siguientes
- Para empezar, consulte Get started with Azure Automation State Configuration.
- Para obtener información sobre cómo habilitar nodos, consulte Enable Azure Automation State Configuration.
- Para obtener información sobre la compilación de configuraciones de DSC para poder asignarlas a nodos de destino, consulte Compilar configuraciones de DSC en Azure Automation State Configuration.
- Para ver un ejemplo del uso de Azure Automation State Configuration en una canalización de implementación continua, consulte Configurar implementación continua con Chocolatey.
- Para obtener información sobre los precios, consulte los precios de Azure Automation State Configuration.
- Para obtener una referencia de los cmdlets de PowerShell, consulte Az.Automation.
- Para solucionar problemas relacionados con la configuración de máquinas en un estado deseado mediante Azure Automation State Configuration, consulte Solucionar problemas de Azure Automation State Configuration.