Configurando o Gerenciador de Configurações Local
Aplica-se a: Windows PowerShell 5.0
O Gerenciador de Configurações Local (LCM) é o mecanismo de Configuração de Estado Desejado (DSC). Ele é executado em cada nó de destino e é responsável pela análise e aplicação das configurações que são enviadas para o nó. Também é responsável por uma série de outros aspectos da DSC, incluindo os itens a seguir.
- Determinar o modo de atualização (push ou pull).
- Especificar com que frequência um nó recebe e aplica as configurações.
- Associar o nó ao serviço de pull.
- Especificar configurações parciais.
Um tipo especial de configuração é utilizado para configurar o LCM para especificar cada um desses comportamentos. As seções a seguir descrevem como configurar o LCM.
O Windows PowerShell 5.0 introduziu novas configurações para gerenciar o Gerenciador de Configurações Local. Para obter informações sobre como configurar o LCM no Windows PowerShell 4.0, veja Configurar o Gerenciador de Configurações Local em versões anteriores do Windows PowerShell.
Escrevendo e aplicando uma configuração do LCM
Para configurar o LCM, você cria e executa um tipo especial de configuração que aplica as configurações de LCM. Para especificar uma configuração do LCM, é necessário usar o atributo DscLocalConfigurationManager. Segue uma configuração simples que define o LCM para o modo de push.
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
O processo de aplicação das configurações do LCM é semelhante à aplicação de uma configuração de DSC. Você criará uma configuração do LCM, a compilará em um arquivo MOF e a aplicará ao nó. Ao contrário de configurações de DSC, você não aplica uma configuração do LCM chamando o cmdlet Start-DscConfiguration. Em vez disso, chama Set-DscLocalConfigurationManager, fornecendo o caminho até o MOF de configuração do LCM como parâmetro. Depois de aplicar a configuração do LCM, você pode ver as propriedades do LCM chamando o cmdlet Get-DscLocalConfigurationManager.
Uma configuração do LCM pode conter blocos somente para um conjunto limitado de recursos. No exemplo anterior, o único recurso chamado é Settings. Os outros recursos disponíveis são:
- ConfigurationRepositoryWeb: especifica um serviço de pull de HTTP para configurações.
- ConfigurationRepositoryShare: especifica um serviço de pull de SMB para configurações.
- ResourceRepositoryWeb: especifica um serviço de pull de HTTP para os módulos.
- ResourceRepositoryShare: especifica um compartilhamento de SMB para os módulos.
- ReportServerWeb: especifica um serviço de pull de HTTP para o qual os relatórios serão enviados.
- PartialConfiguration: fornece dados para habilitar as configurações parciais.
Configurações Básicas
Além de especificar pontos de extremidade/caminhos do serviço de pull e configurações parciais, todas as propriedades do LCM são configuradas em um bloco Settings. As seguintes propriedades estão disponíveis em um bloco Settings.
Propriedade | Tipo | Descrição |
---|---|---|
ActionAfterReboot | string | Especifica o que acontece após uma reinicialização durante a aplicação de uma configuração. Os valores possíveis são "ContinueConfiguration" e "StopConfiguration" .
|
AllowModuleOverwrite | bool | $TRUE se as novas configurações baixadas do serviço de pull tiverem permissão para substituir as antigas no nó de destino. Caso contrário, $FALSE. |
CertificateID | string | A impressão digital de um certificado usado para proteger as credenciais passadas em uma configuração. Para obter mais informações, consulte Quer proteger credenciais na Configuração de Estado Desejado do Windows PowerShell? Observação: isso será gerenciado automaticamente se estiver usando o serviço de pull de DSC de Automação do Azure. |
ConfigurationDownloadManagers | CimInstance[] | Obsoleto. Use os blocos ConfigurationRepositoryWeb e ConfigurationRepositoryShare para definir pontos de extremidade de serviço de pull de configuração. |
ConfigurationID | string | Para compatibilidade com versões anteriores do serviço de pull. Um GUID que identifica o arquivo de configuração que deve ser obtido de um serviço de pull. O nó efetuará o pull das configurações serviço de pull se o nome do MOF de configuração for ConfigurationID.mof. Observação: Se você definir essa propriedade, o registro do nó com um serviço de pull usando RegistrationKey não funcionará. Para obter mais informações, consulte Configurando um cliente de pull com nomes de configuração. |
ConfigurationMode | string | Especifica como o LCM realmente aplica a configuração aos nós de destino. Os valores possíveis são "ApplyOnly" , "ApplyAndMonitor" e "ApplyAndAutoCorrect" .
|
ConfigurationModeFrequencyMins | UInt32 | A frequência, em minutos, em que a configuração atual é verificada e aplicada. Essa propriedade será ignorada se a propriedade ConfigurationMode estiver definida como ApplyOnly. O valor padrão é 15. |
DebugMode | string | Os valores possíveis são None, ForceModuleImport e All.
|
RebootNodeIfNeeded | bool | defina como $true para permitir que os recursos reinicializem o nó usando o sinalizador $global:DSCMachineStatus . Caso contrário, você precisará reinicializar manualmente o nó para qualquer configuração que exigir. O valor padrão é $false . Para usar essa configuração quando uma condição de reinicialização for representada por algo diferente do DSC (como o Windows Installer), combine essa configuração com recurso PendingReboot no módulo ComputerManagementDsc. |
RefreshMode | string | Especifica como o LCM obtém as configurações. Os valores possíveis são "Disabled" , "Push" e "Pull" .
|
RefreshFrequencyMins | Uint32 | O intervalo de tempo, em minutos, em que o LCM verifica um serviço de pull para obter configurações atualizadas e verificações da configuração local para descompasso. A configuração é aplicada independentemente de uma atualização ter sido baixada. Esse valor será ignorado se o LCM não estiver configurado no modo de pull. O valor padrão é 30. |
ReportManagers | CimInstance[] | Obsoleto. Use blocos ReportServerWeb para definir um ponto de extremidade para enviar dados de relatório a um serviço de pull. |
ResourceModuleManagers | CimInstance[] | Obsoleto. Use os blocos ResourceRepositoryWeb e ResourceRepositoryShare para definir pontos de extremidade HTTP do serviço de pull ou caminhos SMB, respectivamente. |
PartialConfigurations | CimInstance | Não implementado. Não use. |
StatusRetentionTimeInDays | UInt32 | O número de dias que o LCM mantém o status da configuração atual. |
Observação
O LCM inicia o ciclo ConfigurationModeFrequencyMins com base em:
- Uma nova metaconfiguração com uma alteração em ConfigurationModeFrequencyMins é aplicada usando
Set-DscLocalConfigurationManager
- Uma reinicialização do computador
Para qualquer condição em que o processo de temporizador apresentar uma falha, ela será detectada dentro de 30 segundos e o ciclo será reiniciado. Uma operação simultânea pode atrasar o início do ciclo; se a duração dessa operação ultrapassar a frequência de ciclo configurada, o próximo temporizador não será iniciado. Por exemplo, a metaconfiguração é configurada com uma frequência de pull de 15 minutos e um pull ocorre em T1. O Nó não conclui o trabalho por 16 minutos. O primeiro ciclo de 15 minutos será ignorado e próximo pull ocorrerá em T1 + 15 + 15.
A intenção original em cenários de pull era que RefreshFrequencyMins
fosse definido para uma hora mais tarde do que ConfigurationModeFrequencyMins
. As configurações locais seriam gerenciadas principalmente pelo ConfigurationModeFrequencyMins
para evitar o descompasso de configuração, e RefreshFrequencyMins
é usado para controlar as alterações de configuração reais feitas pelo administrador.
Serviço de pull
A configuração do LCM dá suporte à definição dos seguintes tipos de ponto de extremidade de serviço de pull:
- Servidor de configuração: um repositório para configurações de DSC. Defina os servidores de configuração usando blocos ConfigurationRepositoryWeb (para servidores baseados na Web) e ConfigurationRepositoryShare (para servidores baseados em SMB).
- Servidor de recursos: um repositório de recursos DSC, empacotados como módulos do PowerShell. Defina os servidores de recurso usando blocos ResourceRepositoryWeb (para servidores baseados na Web) e ResourceRepositoryShare (para servidores baseados em SMB).
- Servidor de relatório: um serviço para o qual o DSC envia dados de relatório. Defina os servidores de relatório usando blocos ReportServerWeb. Um servidor de relatório deve ser um serviço Web.
Para obter mais detalhes sobre o serviço de pull, veja Serviço de pull de Desired State Configuration.
Blocos do servidor de configuração
Para definir um servidor de configuração baseado na Web, crie um bloco ConfigurationRepositoryWeb. Um ConfigurationRepositoryWeb define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir conexões entre o nó e o servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | A impressão digital de um certificado usado para autenticar o servidor. |
ConfigurationNames | String[] | Uma matriz de nomes de configurações que serão retiradas por pull pelo nó de destino. Serão usadas apenas se o nó for registrado com o serviço de pull usando uma RegistrationKey. Para obter mais informações, consulte Configurando um cliente de pull com nomes de configuração. |
RegistrationKey | string | Um GUID que registra o nó com o serviço de pull. Para obter mais informações, consulte Configurando um cliente de pull com nomes de configuração. |
ServerURL | string | A URL do serviço de configuração. |
ProxyURL* | string | A URL do proxy http a ser usada ao se comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a ser usada para o proxy http. |
Observação
Compatível com as versões 1809 e posteriores do Windows.
Um exemplo de script para simplificar a configuração do valor ConfigurationRepositoryWeb para nós locais está disponível - confira Geração de metaconfigurações de DSC
Para definir um servidor de configuração baseado em SMB, crie um bloco ConfigurationRepositoryShare. Um ConfigurationRepositoryShare define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
Credencial | MSFT_Credential | A credencial usada para autenticar para o compartilhamento SMB. |
SourcePath | string | O caminho do compartilhamento SMB. |
Blocos do servidor de recurso
Para definir um servidor de recurso baseado na Web, crie um bloco ResourceRepositoryWeb. Um ResourceRepositoryWeb define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir conexões entre o nó e o servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | A impressão digital de um certificado usado para autenticar o servidor. |
RegistrationKey | string | Um GUID que identifica o nó para o serviço de pull. |
ServerURL | string | A URL do servidor de configuração. |
ProxyURL* | string | A URL do proxy http a ser usada ao se comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a ser usada para o proxy http. |
Observação
Compatível com as versões 1809 e posteriores do Windows.
Um exemplo de script para simplificar a configuração do valor ResourceRepositoryWeb para nós locais está disponível - confira Geração de metaconfigurações de DSC
Para definir um servidor de recurso baseado em SMB, crie um bloco ResourceRepositoryShare. ResourceRepositoryShare define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
Credencial | MSFT_Credential | A credencial usada para autenticar para o compartilhamento SMB. Para obter um exemplo de passagem de credenciais, consulte Configurando um servidor de pull de SMB para DSC |
SourcePath | string | O caminho do compartilhamento SMB. |
Blocos do servidor de relatório
Para definir um servidor de relatório, crie um bloco ReportServerWeb. A função de servidor de relatório não é compatível com o serviço de pull baseado em SMB. ReportServerWeb define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir conexões entre o nó e o servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | A impressão digital de um certificado usado para autenticar o servidor. |
RegistrationKey | string | Um GUID que identifica o nó para o serviço de pull. |
ServerURL | string | A URL do servidor de configuração. |
ProxyURL* | string | A URL do proxy http a ser usada ao se comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a ser usada para o proxy http. |
Observação
Compatível com as versões 1809 e posteriores do Windows.
Um exemplo de script para simplificar a configuração do valor ReportServerWeb para nós locais está disponível - confira Geração de metaconfigurações de DSC
Configurações parciais
Para definir uma configuração parcial, você cria um bloco PartialConfiguration. Para obter mais informações sobre configurações parciais, consulte Configurações parciais de DSC. PartialConfiguration define as propriedades a seguir.
Propriedade | Tipo | Descrição |
---|---|---|
ConfigurationSource | string[] | Uma matriz de nomes de servidores de configuração, definidos previamente nos blocos ConfigurationRepositoryWeb e ConfigurationRepositoryShare, dos quais a configuração parcial é retirada. |
DependsOn | string{} | Uma lista de nomes de outras configurações que devem ser concluídas antes que essa configuração parcial seja aplicada. |
Descrição | string | Texto usado para descrever a configuração parcial. |
ExclusiveResources | string[] | Uma matriz de recursos exclusivos para essa configuração parcial. |
RefreshMode | string | Especifica como o LCM obtém essa configuração parcial. Os valores possíveis são "Disabled" , "Push" e "Pull" .
|
ResourceModuleSource | string[] | Uma matriz de nomes de servidores de recurso por meio dos quais é possível baixar os recursos necessários para essa configuração parcial. Esses nomes devem se referir a pontos de extremidade de serviço definidos previamente nos blocos ResourceRepositoryWeb e ResourceRepositoryShare. |
Observação
configurações parciais tê suporte com o DSC de Automação do Azure, mas somente uma configuração pode ser extraída de cada conta de automação por nó.
Consulte Também
Conceitos
Visão geral da Configuração do Estado Desejado
Introdução à DSC de Automação do Azure