Configurar a Configuration Manager Local
Aplica-se a: Windows PowerShell 5.0
O Configuration Manager Local (LCM) é o motor de Desired State Configuration (DSC). O LCM é executado em todos os nós de destino e é responsável por analisar e decretar configurações que são enviadas para o nó. Também é responsável por vários outros aspetos do DSC, incluindo o seguinte.
- Determinar o modo de atualização (push ou pull).
- Especificar a frequência com que um nó solicita e decreta configurações.
- Associar o nó ao serviço Pull.
- Especificar configurações parciais.
Utiliza um tipo especial de configuração para configurar o LCM para especificar cada um destes comportamentos. As secções seguintes descrevem como configurar o LCM.
Windows PowerShell 5.0 introduziu novas definições para gerir Configuration Manager Locais. Para obter informações sobre como configurar o LCM no Windows PowerShell 4.0, consulte Configurar o Configuration Manager Local em Versões Anteriores do Windows PowerShell.
Escrever e decretar uma configuração LCM
Para configurar o LCM, crie e execute um tipo especial de configuração que aplica as definições de LCM. Para especificar uma configuração LCM, utilize o atributo DscLocalConfigurationManager. Segue-se uma configuração simples que define o LCM para o modo push.
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
O processo de aplicação de definições ao LCM é semelhante à aplicação de uma configuração de DSC. Irá criar uma configuração LCM, compilá-la num ficheiro MOF e aplicá-la ao nó. Ao contrário das configurações do DSC, não decreta uma configuração LCM ao chamar o cmdlet Start-DscConfiguration . Em vez disso, chama Set-DscLocalConfigurationManager, fornecendo o caminho para o MOF de configuração do LCM como um parâmetro. Depois de decretar a configuração do LCM, pode ver as propriedades do LCM ao chamar o cmdlet Get-DscLocalConfigurationManager .
Uma configuração LCM só pode conter blocos para um conjunto limitado de recursos. No exemplo anterior, o único recurso chamado é Definições. Os outros recursos disponíveis são:
- ConfigurationRepositoryWeb: especifica um serviço pull HTTP para configurações.
- ConfigurationRepositoryShare: especifica uma partilha SMB para configurações.
- ResourceRepositoryWeb: especifica um serviço PULL HTTP para módulos.
- ResourceRepositoryShare: especifica uma partilha SMB para módulos.
- ReportServerWeb: especifica um serviço pull HTTP para o qual os relatórios são enviados.
- PartialConfiguration: fornece dados para ativar configurações parciais.
Definições básicas
Além de especificar pontos finais/caminhos de serviço Pull e configurações parciais, todas as propriedades do LCM são configuradas num bloco Definições . As seguintes propriedades estão disponíveis num bloco Definições .
Propriedade | Tipo | Description |
---|---|---|
ActionAfterReboot | string | Especifica o que acontece após um reinício 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 transferidas do serviço Pull tiverem permissão para substituir as antigas no nó de destino. Caso contrário, $FALSE. |
CertificateID | string | O thumbprint de um certificado utilizado para proteger as credenciais transmitidas numa configuração. Para obter mais informações, consulte Pretende proteger as credenciais no Windows PowerShell Desired State Configuration?. Nota: isto é gerido automaticamente se utilizar Automatização do Azure serviço pull do DSC. |
ConfigurationDownloadManagers | CimInstance[] | Obsoleto. Utilize os blocos ConfigurationRepositoryWeb e ConfigurationRepositoryShare para definir pontos finais de serviço pull de configuração. |
ConfigurationID | string | Para retrocompatibilidade com versões mais antigas do serviço Pull. Um GUID que identifica o ficheiro de configuração a obter a partir de um serviço Pull. O nó irá solicitar configurações no serviço Pull se o nome do MOF de configuração tiver o nome ConfigurationID.mof. Nota: Se definir esta propriedade, o registo do nó com um serviço Pull com RegistrationKey não funciona. Para obter mais informações, consulte Configurar um cliente Pull com nomes de configuração. |
ConfigurationMode | string | Especifica como o LCM aplica a configuração aos nós de destino. Os valores possíveis são "ApplyOnly","ApplyAndMonitor" e "ApplyAndAutoCorrect".
|
ConfigurationModeFrequencyMins | UInt32 | Com que frequência, em minutos, a configuração atual é verificada e aplicada. Esta propriedade é ignorada se a propriedade ConfigurationMode estiver definida como ApplyOnly. O valor predefinido é 15. |
DebugMode | string | Os valores possíveis são None, ForceModuleImport e All.
|
RebootNodeIfNeeded | bool | Defina esta opção para $true permitir que os recursos reiniciem o Nó com o $global:DSCMachineStatus sinalizador. Caso contrário, terá de reiniciar manualmente o nó para qualquer configuração que o exija. O valor predefinido é $false . Para utilizar esta definição quando uma condição de reinício é decretada por algo diferente de DSC (como o Windows Installer), combine esta definição com o recurso PendingReboot no módulo ComputerManagementDsc . |
RefreshMode | string | Especifica como o LCM obtém configurações. Os valores possíveis são "Desativado","Push" e "Pull".
|
RefreshFrequencyMins | Uint32 | O intervalo de tempo, em minutos, em que o LCM verifica um serviço pull para obter configurações atualizadas e verifica se a configuração local está desfasada. A configuração é aplicada independentemente de uma atualização ter sido transferida. Este valor é ignorado se o LCM não estiver configurado no modo de solicitação. O valor predefinido é 30. |
ReportManagers | CimInstance[] | Obsoleto. Utilize os blocos ReportServerWeb para definir um ponto final para enviar dados de relatórios para um serviço pull. |
ResourceModuleManagers | CimInstance[] | Obsoleto. Utilize os blocos ResourceRepositoryWeb e ResourceRepositoryShare para definir pontos finais HTTP ou caminhos SMB do serviço pull, respetivamente. |
PartialConfigurations | CimInstance | Não implementado. Não utilizar. |
StatusRetentionTimeInDays | UInt32 | O número de dias em que o LCM mantém o estado da configuração atual. |
Nota
O LCM inicia o ciclo ConfigurationModeFrequencyMins com base em:
- É aplicada uma nova metaconfig com uma alteração a ConfigurationModeFrequencyMins com
Set-DscLocalConfigurationManager
- Um reinício do computador
Para qualquer condição em que o processo de temporizador tenha uma falha, esta será detetada 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 desta operação exceder a frequência de ciclo configurada, o temporizador seguinte não será iniciado. Por exemplo, a metaconfig é configurada com uma frequência de solicitação de 15 minutos e ocorre uma solicitação em T1. O Nó não termina o trabalho durante 16 minutos. O primeiro ciclo de 15 minutos é ignorado e a próxima solicitação ocorrerá em T1+15+15.
A intenção original nos cenários pull era que o RefreshFrequencyMins
está definido para um tempo mais longo do que o ConfigurationModeFrequencyMins
. As configurações locais seriam geridas principalmente para ConfigurationModeFrequencyMins
evitar o desfasamento da configuração e RefreshFrequencyMins
são utilizadas para controlar as alterações de configuração reais efetuadas pelo administrador.
Serviço pull
A configuração do LCM suporta a definição dos seguintes tipos de pontos finais de serviço pull:
- Servidor de configuração: um repositório para configurações do DSC. Defina servidores de configuração com os blocos ConfigurationRepositoryWeb (para servidores baseados na Web) e ConfigurationRepositoryShare (para servidores baseados em SMB).
- Servidor de recursos: um repositório para recursos do DSC, empacotado como módulos do PowerShell. Defina servidores de recursos com blocos ResourceRepositoryWeb (para servidores baseados na Web) e ResourceRepositoryShare (para servidores baseados em SMB).
- Servidor de relatórios: um serviço para o qual o DSC envia dados de relatório. Defina servidores de relatórios com blocos ReportServerWeb . Um servidor de relatórios tem de ser um serviço Web.
Para obter mais detalhes sobre o serviço pull, veja Desired State Configuration Pull Service.
Blocos do servidor de configuração
Para definir um servidor de configuração baseado na Web, crie um bloco ConfigurationRepositoryWeb . Um ConfigurationRepositoryWeb define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir ligações do nó ao servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | O thumbprint de um certificado utilizado para autenticar no servidor. |
Nomes de Configuração | Cadeia[] | Uma matriz de nomes de configurações a obter pelo nó de destino. Estes são utilizados apenas se o nó estiver registado no serviço pull através de uma RegistrationKey. Para obter mais informações, veja Configurar um cliente pull com nomes de configuração. |
RegistrationKey | string | Um GUID que regista o nó com o serviço pull. Para obter mais informações, veja Configurar um cliente pull com nomes de configuração. |
ServerURL | string | O URL do serviço de configuração. |
ProxyURL* | string | O URL do proxy http a utilizar ao comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a utilizar para o proxy http. |
Nota
Suportado nas versões 1809 e posteriores do Windows.
Um script de exemplo para simplificar a configuração do valor ConfigurationRepositoryWeb para nós no local está disponível – veja Gerar metaconfigurações do DSC
Para definir um servidor de configuração baseado em SMB, crie um bloco ConfigurationRepositoryShare . Um ConfigurationRepositoryShare define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
Credencial | MSFT_Credential | A credencial utilizada para autenticar na partilha SMB. |
SourcePath | string | O caminho da partilha SMB. |
Blocos do servidor de recursos
Para definir um servidor de recursos baseado na Web, crie um bloco ResourceRepositoryWeb . Um ResourceRepositoryWeb define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir ligações do nó ao servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | O thumbprint de um certificado utilizado para autenticar no servidor. |
RegistrationKey | string | Um GUID que identifica o nó para o serviço pull. |
ServerURL | string | O URL do servidor de configuração. |
ProxyURL* | string | O URL do proxy http a utilizar ao comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a utilizar para o proxy http. |
Nota
Suportado nas versões 1809 e posteriores do Windows.
Um script de exemplo para simplificar a configuração do valor ResourceRepositoryWeb para nós no local está disponível – veja Gerar metaconfigurações do DSC
Para definir um servidor de recursos baseado em SMB, crie um bloco ResourceRepositoryShare . ResourceRepositoryShare define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
Credencial | MSFT_Credential | A credencial utilizada para autenticar na partilha SMB. Para obter um exemplo de credenciais de transmissão, veja Configurar um servidor de solicitação SMB do DSC |
SourcePath | string | O caminho da partilha SMB. |
Blocos do servidor de relatórios
Para definir um servidor de relatórios, crie um bloco ReportServerWeb . A função de servidor de relatórios não é compatível com o serviço de solicitação baseado em SMB. ReportServerWeb define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
AllowUnsecureConnection | bool | Defina como $TRUE para permitir ligações do nó ao servidor sem autenticação. Defina como $FALSE para exigir autenticação. |
CertificateID | string | O thumbprint de um certificado utilizado para autenticar no servidor. |
RegistrationKey | string | Um GUID que identifica o nó para o serviço pull. |
ServerURL | string | O URL do servidor de configuração. |
ProxyURL* | string | O URL do proxy http a utilizar ao comunicar com o serviço de configuração. |
ProxyCredential* | pscredential | Credencial a utilizar para o proxy http. |
Nota
Suportado nas versões 1809 e posteriores do Windows.
Um script de exemplo para simplificar a configuração do valor ReportServerWeb para nós no local está disponível – veja Gerar metaconfigurações do DSC
Configurações parciais
Para definir uma configuração parcial, crie um bloco PartialConfiguration . Para obter mais informações sobre configurações parciais, veja DSC Partial configurations (Configurações parciais do DSC). PartialConfiguration define as seguintes propriedades.
Propriedade | Tipo | Description |
---|---|---|
ConfigurationSource | string[] | Uma matriz de nomes de servidores de configuração, anteriormente definidos nos blocos ConfigurationRepositoryWeb e ConfigurationRepositoryShare , de onde a configuração parcial é obtida. |
DependsOn | string{} | Uma lista de nomes de outras configurações que têm de ser concluídos antes de esta configuração parcial ser aplicada. |
Description | cadeia (de carateres) | Texto utilizado para descrever a configuração parcial. |
ExclusiveResources | string[] | Uma matriz de recursos exclusiva para esta configuração parcial. |
RefreshMode | string | Especifica como o LCM obtém esta configuração parcial. Os valores possíveis são "Desativado","Push" e "Pull".
|
ResourceModuleSource | string[] | Uma matriz dos nomes dos servidores de recursos a partir dos quais pretende transferir os recursos necessários para esta configuração parcial. Estes nomes têm de fazer referência aos pontos finais de serviço anteriormente definidos nos blocos ResourceRepositoryWeb e ResourceRepositoryShare . |
Nota
As configurações parciais são suportadas com Automatização do Azure DSC, mas apenas uma configuração pode ser extraída de cada conta de automatização por nó.
Consulte também
Conceitos
Descrição Geral do Desired State Configuration
Introdução ao Automatização do Azure DSC