Configuración del administrador de configuración local
Se aplica a: Windows PowerShell 5.0
El administrador de configuración local (LCM) es el motor de Desired State Configuration (DSC). El LCM se ejecuta en cada nodo de destino y es el responsable de analizar y establecer las configuraciones que se envían al nodo. También es responsable de diversos otros aspectos de DSC, entre los que se incluyen los siguientes.
- Determinar el modo de actualización (inserción o extracción).
- Especificar la frecuencia con que un nodo extrae y aplica configuraciones.
- Asociar el nodo con el servicio de extracción.
- Especificar configuraciones parciales.
Se utiliza un tipo especial de configuración para configurar el LCM a fin de que especifique cada uno de estos comportamientos. En las siguientes secciones se describe cómo configurar el LCM.
Con Windows PowerShell 5.0 se incluyeron nuevas configuraciones para administrar el Administrador de configuración local. Para obtener información sobre cómo configurar el LCM en Windows PowerShell 4.0, consulte Administrador de configuración local (LCM) de la configuración de estado deseado de Windows PowerShell 4.0.
Escritura y aplicación de una configuración de LCM
Para configurar el LCM, debe crear y ejecutar un tipo especial de configuración que aplique los valores de LCM. Para especificar una configuración de LCM, utilice el atributo DscLocalConfigurationManager. A continuación se muestra una configuración sencilla que establece el LCM en el modo de inserción.
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
El proceso de aplicar los valores al LCM es similar a la aplicación de una configuración DSC. Creará una configuración de LCM, la compilará en un archivo MOF y la aplicará en el nodo. A diferencia de las configuraciones DSC, no aplique una configuración LCM con una llamada al cmdlet Start-DscConfiguration. En su lugar, llame al cmdlet Set-DscLocalConfigurationManager y proporcione la ruta de acceso al MOF de configuración de LCM como un parámetro. Después de establecer la configuración de LCM, podrá ver las propiedades del LCM con una llamada al cmdlet Get-DscLocalConfigurationManager.
Una configuración de LCM puede contener bloques solo para un conjunto limitado de recursos. En el ejemplo anterior, el único recurso al que se llama es Settings. El resto de recursos disponibles son:
- ConfigurationRepositoryWeb: especifica un servicio de extracción HTTP para configuraciones.
- ConfigurationRepositoryShare: especifica un recurso compartido SMB para configuraciones.
- ResourceRepositoryWeb: especifica un servicio de extracción HTTP para módulos.
- ResourceRepositoryShare: especifica un recurso compartido SMB para módulos.
- ReportServerWeb: especifica un servicio de extracción HTTP al que se envían informes.
- PartialConfiguration: proporciona datos para habilitar las configuraciones parciales.
Configuración básica
Aparte de especificar puntos de conexión o rutas de acceso del servicio de extracción y configuraciones parciales, todas las propiedades del LCM se configuran en un bloque Settings. Las propiedades siguientes están disponibles en un bloque Settings.
Propiedad | Tipo | Descripción |
---|---|---|
ActionAfterReboot | string | Especifica lo que ocurre tras un reinicio durante la aplicación de una configuración. Los valores posibles son "ContinueConfiguration" y "StopConfiguration" .
|
AllowModuleOverwrite | bool | $TRUE si se permite que las nuevas configuraciones descargadas desde el servicio de extracción sobrescriban las antiguas en el nodo de destino. En caso contrario, $FALSE. |
CertificateID | string | La huella digital de un certificado usado para proteger las credenciales que se han pasado en una configuración. Para más información, consulte Want to secure credentials in Windows PowerShell Desired State Configuration? (¿Quiere proteger las credenciales de configuración de estado deseado de Windows PowerShell?). Nota: Se administra automáticamente si se usa el servicio de extracción DSC de Azure Automation. |
ConfigurationDownloadManagers | CimInstance[] | Obsoleto. Use los bloques ConfigurationRepositoryWeb y ConfigurationRepositoryShare para definir puntos de conexión del servicio de extracción de configuración. |
ConfigurationID | string | Para la compatibilidad con versiones anteriores con versiones anteriores del servicio de extracción. Un GUID que identifica el archivo de configuración que se obtendrá de un servicio de extracción. El nodo extraerá las configuraciones del servicio de extracción si el nombre del MOF de configuración es ConfigurationID.mof. Nota: Si establece esta propiedad, el registro del nodo con un servicio de extracción mediante RegistrationKey no funcionará. Para más información, consulte Configuración de un cliente de incorporación de cambios con nombres de configuración. |
ConfigurationMode | string | Especifica la forma en que el LCM aplica realmente la configuración a los nodos de destino. Los valores posibles son "ApplyOnly" , "ApplyAndMonitor" y "ApplyAndAutoCorrect" .
|
ConfigurationModeFrequencyMins | UInt32 | La frecuencia, en minutos, con que se comprueba y aplica la configuración actual. Esta propiedad se omite si la propiedad ConfigurationMode se establece en ApplyOnly. El valor predeterminado es 15. |
DebugMode | string | Los valores posibles son None, ForceModuleImport y All.
|
RebootNodeIfNeeded | bool | Establezca esta opción en $true para permitir que los recursos reinicien el nodo usando la marca $global:DSCMachineStatus . De lo contrario, tendrá que reiniciar manualmente el nodo de configuración que lo requiera. El valor predeterminado es $false . Para usar esta configuración cuando una instancia distinta de DSC (como Windows Installer) implementa una condición de reinicio, combine la configuración con el recurso PendingReboot del módulo ComputerManagementDsc. |
RefreshMode | string | Especifica cómo obtiene el LCM las configuraciones. Los valores posibles son "Disabled" , "Push" y "Pull" .
|
RefreshFrequencyMins | Uint32 | El intervalo de tiempo, en minutos, que emplea el LCM para comprobar un servicio de extracción en busca de configuraciones actualizadas y comprobar algún desfase en la configuración local. La configuración se aplica independientemente de si se descargó una actualización. Este valor se omite si el LCM no está configurado en el modo de extracción. El valor predeterminado es 30. |
ReportManagers | CimInstance[] | Obsoleto. Use los bloques ReportServerWeb para definir un punto de conexión para enviar datos de informes a un servicio de extracción. |
ResourceModuleManagers | CimInstance[] | Obsoleto. Use los bloques ResourceRepositoryWeb y ResourceRepositoryShare para definir puntos de conexión HTTP o rutas de acceso SMB del servicio de extracción, respectivamente. |
PartialConfigurations | CimInstance | No implementado. No debe usarse. |
StatusRetentionTimeInDays | UInt32 | El número de días que el LCM mantiene el estado de la configuración actual. |
Nota
El LCM inicia el ciclo ConfigurationModeFrequencyMins según lo siguiente:
- Nueva metaconfiguración aplicada con un cambio en ConfigurationModeFrequencyMins mediante
Set-DscLocalConfigurationManager
- Un reinicio del equipo
En cualquier condición en la cual el proceso de temporizador experimente un bloqueo, se detectará dentro del plazo de 30 segundos y se reiniciará el ciclo. Una operación simultánea puede retrasar el ciclo de inicio; si la duración de esta operación supera la frecuencia del ciclo configurado, el siguiente temporizador no se iniciará. Por ejemplo, la metaconfiguración se configura con una frecuencia de extracción de 15 minutos y se produce una extracción en T1. El nodo no finaliza el trabajo en 16 minutos. Se omite el primer ciclo de 15 minutos y la extracción siguiente se realizará en T1+15+15.
La intención original en los escenarios de extracción era que RefreshFrequencyMins
se establece en un tiempo más largo que el ConfigurationModeFrequencyMins
. Las configuraciones locales se pueden cambiar principalmente por ConfigurationModeFrequencyMins
para evitar el desfase de la configuración y RefreshFrequencyMins
se usa para realizar un seguimiento de los cambios de configuración reales realizados por el administrador.
Servicio de extracción
La configuración de LCM admite la definición de los siguientes puntos de conexión del servicio de extracción:
- Servidor de configuración: un repositorio para las configuraciones de DSC. Defina servidores de configuración mediante el uso de bloques ConfigurationRepositoryWeb (para servidores basados en web) y ConfigurationRepositoryShare (para servidores basados en SMB).
- Servidor de recursos: un repositorio para recursos de DSC, empaquetado como módulos de PowerShell. Defina servidores de recursos mediante el uso de bloques ResourceRepositoryWeb (para servidores basados en web) y ResourceRepositoryShare (para servidores basados en SMB).
- Servidor de informes: un servicio al que DSC envía datos de informes. Defina servidores de informes mediante bloques ReportServerWeb. Un servidor de informes debe ser un servicio web.
Para ver más detalles sobre el servicio de extracción, consulte Servicio de extracción de Desired State Configuration.
Bloques del servidor de configuración
Para definir un servidor de configuración basado en web, cree un bloque ConfigurationRepositoryWeb. Un bloque ConfigurationRepositoryWeb define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
AllowUnsecureConnection | bool | Establézcala en $TRUE para permitir conexiones desde el nodo al servidor sin autenticación. Establézcala en $FALSE para que se requiera autenticación. |
CertificateID | string | La huella digital de un certificado usado para autenticar el servidor. |
ConfigurationNames | String[] | Una matriz de nombres de configuraciones que el nodo de destino extraerá. Solo se usan si el nodo se registra con el servicio de extracción mediante un elemento RegistrationKey. Para más información, consulte Configuración de un cliente de incorporación de cambios con nombres de configuración. |
RegistrationKey | string | Un GUID que registra el nodo con el servicio de extracción. Para más información, consulte Configuración de un cliente de incorporación de cambios con nombres de configuración. |
ServerURL | string | La dirección URL del servicio de configuración. |
ProxyURL* | string | URL del proxy HTTP que se debe usar al conectar con el servicio de configuración. |
ProxyCredential* | PSCredential | Credencial que se debe usar para el proxy HTTP. |
Nota
Se admite en Windows 1809 y versiones posteriores.
Hay disponible un script de ejemplo para simplificar la configuración del valor ConfigurationRepositoryWeb para los nodos locales, consulte el artículo sobre la configuración de metaconfiguraciones DSC
Para definir un servidor de configuración basado en SMB, cree un bloque ConfigurationRepositoryShare. Un bloque ConfigurationRepositoryShare define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
Credential: | MSFT_Credential | La credencial usada para autenticarse en el recurso compartido SMB. |
SourcePath | string | La ruta de acceso del recurso compartido SMB. |
Bloques del servidor de recursos
Para definir un servidor de recursos basado en web, cree un bloque ResourceRepositoryWeb. Un bloque ResourceRepositoryWeb define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
AllowUnsecureConnection | bool | Establézcala en $TRUE para permitir conexiones desde el nodo al servidor sin autenticación. Establézcala en $FALSE para que se requiera autenticación. |
CertificateID | string | La huella digital de un certificado usado para autenticar el servidor. |
RegistrationKey | string | Un GUID que identifica el nodo para el servicio de extracción. |
ServerURL | string | La dirección URL del servidor de configuración. |
ProxyURL* | string | URL del proxy HTTP que se debe usar al conectar con el servicio de configuración. |
ProxyCredential* | PSCredential | Credencial que se debe usar para el proxy HTTP. |
Nota
Se admite en Windows 1809 y versiones posteriores.
Hay disponible un script de ejemplo para simplificar la configuración del valor ResourceRepositoryWeb para los nodos locales, consulte el artículo sobre la configuración de metaconfiguraciones DSC
Para definir un servidor de recursos basado en SMB, cree un bloque ResourceRepositoryShare. ResourceRepositoryShare define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
Credential: | MSFT_Credential | La credencial usada para autenticarse en el recurso compartido SMB. Para obtener un ejemplo de transferencia de credenciales, consulte Configuración de un servidor de incorporación de cambios SMB de DSC |
SourcePath | string | La ruta de acceso del recurso compartido SMB. |
Bloques del servidor de informes
Para definir un servidor de informes, cree un bloque ReportServerWeb. El rol del servidor de informes no es compatible con el servicio de extracción basado en SMB. ReportServerWeb define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
AllowUnsecureConnection | bool | Establézcala en $TRUE para permitir conexiones desde el nodo al servidor sin autenticación. Establézcala en $FALSE para que se requiera autenticación. |
CertificateID | string | La huella digital de un certificado usado para autenticar el servidor. |
RegistrationKey | string | Un GUID que identifica el nodo para el servicio de extracción. |
ServerURL | string | La dirección URL del servidor de configuración. |
ProxyURL* | string | URL del proxy HTTP que se debe usar al conectar con el servicio de configuración. |
ProxyCredential* | PSCredential | Credencial que se debe usar para el proxy HTTP. |
Nota
Se admite en Windows 1809 y versiones posteriores.
Hay disponible un script de ejemplo para simplificar la configuración del valor ReportServerWeb para los nodos locales, consulte el artículo sobre la configuración de metaconfiguraciones DSC
Configuraciones parciales
Para definir una configuración parcial, cree un bloque PartialConfiguration. Para más información sobre configuraciones parciales, consulte Configuraciones parciales de DSC. PartialConfiguration define las siguientes propiedades.
Propiedad | Tipo | Descripción |
---|---|---|
ConfigurationSource | string[] | Una matriz de nombres de servidores de configuración, definidos previamente en bloques ConfigurationRepositoryWeb y ConfigurationRepositoryShare, desde donde se extrae la configuración parcial. |
DependsOn | string{} | Una lista de nombres de otras configuraciones que se deben completar antes de que se aplique esta configuración parcial. |
Descripción | string | Texto utilizado para describir la configuración parcial. |
ExclusiveResources | string[] | Una matriz de recursos exclusivos de esta configuración parcial. |
RefreshMode | string | Especifica cómo obtiene el LCM esta configuración parcial. Los valores posibles son "Disabled" , "Push" y "Pull" .
|
ResourceModuleSource | string[] | Una matriz de los nombres de los servidores de recursos desde los que se descargarán los recursos necesarios para esta configuración parcial. Estos nombres deben hacer referencia a los puntos de conexión del servicio definidos previamente en los bloques ResourceRepositoryWeb y ResourceRepositoryShare. |
Nota
Se admiten configuraciones parciales con Azure Automation DSC, pero solo se puede extraer una configuración de cada cuenta de automatización por nodo.
Consulte también
Conceptos
Información de Desired State Configuration
Introducción a DSC de Azure Automation
Otros recursos
Set-DscLocalConfigurationManager
Configuración de un cliente de extracción con nombres de configuración