822
PowerShell Desired State Configuration (DSC) es una poderosa plataforma para la administración centralizada de su infraestructura a través de archivos de configuración y se usa ampliamente para implementar los conceptos de infraestructura como código (IaC). DSC proporciona un modelo de configuración del sistema declarativo que le permite especificar cómo desea configurar el punto final (estación de trabajo o servidor).
Azure tiene su propia implementación de DSC, llamada DSC del estado de Azure, que se utiliza para administrar máquinas virtuales. Azure DSC se puede utilizar como parte del servicio Azure Automation Management.
Azure DSC admite las siguientes versiones del sistema operativo:
- Cliente Windows 8.1/10/11
- Servidor Windows 2022/2019/2016/2012R2
Debe crear una cuenta de Automation para usar Azure State DSC:
- Inicie sesión en Azure Portal y navegue hasta Cuenta de automatización usando la barra de búsqueda superior;
- Hacer clic Nuevo para crear un nuevo recurso de cuenta de automatización;
- Especifique el nombre de la cuenta, el grupo de recursos de Azure y la región;
Además, puede crear una cuenta de Azure Automation mediante el módulo Azure Az PowerShell:
Install-Module -Name Az -Force Connect-AzAccount New-AzAutomationAccount -Name AzAutomationAcc1 -ResourceGroupName RGTest1 -Location eus
Cree un archivo en su computadora PS1 con su configuración que debe importarse a Azure.
En este ejemplo, hemos creado un pequeño archivo de configuración DCS que verifica lo siguiente:
- .Net Framework 3.5 está instalado en Windows;
- La cuenta de administrador integrada está deshabilitada;
- Escritorio remoto habilitado en Windows (verifique el valor del parámetro de registro fDenyTSConnections).
Confirutation BasicDSCTests { Import-DscResource -ModuleName PSDesiredStateConfiguration WindowsFeature Add_Net_Framework { Ensure = "Present" Name = "NetFx3" } Registry RDPEnabled { Key = "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server" ValueName = "fDenyTSConnections" ValueType = "DWord" ValueData = 1 Ensure = "Present" } User Builtin-Administrator-Disabled { Ensure = "Present" Username = "Administrator" Disabled = $true } }
Guarde este código en el archivo. c:\ps\AzBasicDSCTests.ps1.
Nota. Consulte nuestro tutorial sobre cómo cambiar el tamaño del disco de la máquina virtual de Azure.
Ahora puede importar este archivo de configuración a Azure desde el Configuraciones sección.
O puede importarlo mediante el cmdlet Import-AzAutomationDscConfiguration:
Import-AzAutomationDscConfiguration -SourcePath c:\ps\AzBasicDSCTests.ps1 -ResourceGroupName RGTest1 -AutomationAccountName AzAutomationAcc1 -Published
Una vez que haya cargado el archivo de configuración de DSC, deberá compilarlo:
Start-AzAutomationDscCompilationJob -ConfigurationName AzBasicDSCTests -ResourceGroupName RGTest1 -AutomationAccountName AzAutomationAcc1
Verifique el estado de la compilación y asegúrese de que Estado acumulativo la propiedad se cambia a Bien:
Get-AzAutomationDscNodeConfiguration -ResourceGroupName RGTest1 -AutomationAccountName AzAutomationAcc1
Ahora está listo para aplicar su configuración a las máquinas virtuales de Azure:
- Navegue a Cuenta de automatización > Gestión de configuración > Configuración de estado (DSC);
- Hacer clic Agregar registrar máquinas virtuales en Gestión de Configuración;
- Hacer clic Conectar para agregar la máquina virtual como un nodo en la configuración de estado (DSC > Nodos > Agregar).
Puede agregar una máquina virtual usando PowerShell:
$vm = Get-AzVM -Name TestVM1 Register-AzAutomationDscNode -AzureVMName $vm.Name -AzureVMLocation $vm.Location -NodeConfigurationName "AzBasicDSCTests.localhost" -ConfigurationMode ApplyAndAutocorrect -AutomationAccountName AzAutomationAcc1 -ResourceGroupName RGTest1
DSC verificará el estado de Windows en la VM y aplicará la configuración deseada. Puede verificar el estado de cumplimiento de la VM:
Get-AzAutomationDscNode -NodeConfigurationName "AzBasicDSCTests.localhost" -ResourceGroupName RGTest1 -AutomationAccountName AzAutomationAcc1
deberia regresar Estado = Obediente.
La tarea de Azure Automation comprueba la configuración del host cada 15 minutos. Si se encuentra un estado de VM que no cumple con los requisitos, Azure intentará presentar la queja.
6 Comments