PowerShell
Configuración del estado deseado
Buscar..
Ejemplo simple - Habilitar WindowsFeature
configuration EnableIISFeature
{
node localhost
{
WindowsFeature IIS
{
Ensure = “Present”
Name = “Web-Server”
}
}
}
Si ejecuta esta configuración en Powershell (EnableIISFeature), producirá un archivo localhost.mof. Esta es la configuración "compilada" que puede ejecutar en una máquina.
Para probar la configuración de DSC en su host local, simplemente puede invocar lo siguiente:
Start-DscConfiguration -ComputerName localhost -Wait
Iniciando DSC (mof) en una máquina remota
Iniciar un DSC en una máquina remota es casi igual de simple. Suponiendo que ya haya configurado la comunicación remota de Powershell (o que haya habilitado WSMAN).
$remoteComputer = "myserver.somedomain.com"
$cred = (Get-Credential)
Start-DSCConfiguration -ServerName $remoteComputer -Credential $cred -Verbose
Nb: asumiendo que ha compilado una configuración para su nodo en su máquina local (y que el archivo myserver.somedomain.com.mof está presente antes de comenzar la configuración)
Importando psd1 (archivo de datos) en una variable local
A veces puede ser útil probar sus archivos de datos de Powershell e iterar a través de los nodos y servidores.
Powershell 5 (WMF5) agregó esta pequeña característica para hacer esto llamado Import-PowerShellDataFile.
Ejemplo:
$data = Import-PowerShellDataFile -path .\MydataFile.psd1
$data.AllNodes
Lista de recursos DSC disponibles
Para listar los recursos DSC disponibles en su nodo de autoría:
Get-DscResource
Esto mostrará una lista de todos los recursos para todos los módulos instalados (que están en su PSModulePath) en su nodo de creación.
Para enumerar todos los recursos DSC disponibles que se pueden encontrar en las fuentes en línea (PSGallery ++) en WMF 5:
Find-DSCResource
Importando recursos para usar en DSC
Antes de poder utilizar un recurso en una configuración, debe importarlo explícitamente. El solo hecho de tenerlo instalado en su computadora, no le permitirá usar el recurso de manera implícita.
Importe un recurso utilizando Import-DscResource.
Ejemplo que muestra cómo importar el recurso PSDesiredStateConfiguration y el recurso File.
Configuration InstallPreReqs
{
param(); # params to DSC goes here.
Import-DscResource PSDesiredStateConfiguration
File CheckForTmpFolder {
Type = 'Directory'
DestinationPath = 'C:\Tmp'
Ensure = "Present"
}
}
Nota : para que los recursos de DSC funcionen, debe tener los módulos instalados en las máquinas de destino al ejecutar la configuración. Si no los tiene instalados, la configuración fallará.