Visão geral da Configuração de Estado Desejado da Microsoft v3
A Configuração de Estado Desejado (DSC) da Microsoft é uma plataforma de configuração declarativa. Com o DSC, o estado de uma máquina é descrito usando um formato que deve ser claro para entender, mesmo que o leitor não seja um especialista no assunto. Ao contrário das ferramentas imperativas, com o DSC a definição de um ambiente de aplicativo é separada da lógica de script que implementa como ele é entregue.
O aplicativo de linha de comando DSCv3 abstrai o gerenciamento de componentes de software declarativa e idempotente. O DSCv3 é executado em Linux, macOS e Windows sem dependências externas.
Com o DSCv3, você pode:
- Crie Recursos DSC para gerenciar seus sistemas em qualquer idioma.
- Invoque recursos individuais.
- Crie documentos de configuração que definem o estado desejado de um sistema.
Documentos de configuração
Os Documentos de Configuração DSC são arquivos YAML declarativos que definem instâncias de recursos. Normalmente, os documentos de configuração definem qual estado deve ser imposto.
Cenários de exemplo incluem requisitos para um ambiente de aplicativo ou padrões operacionais/de segurança.
Recursos DSC
Os Recursos DSC definem como gerenciar o estado de um determinado sistema ou componente de aplicativo. Os recursos descrevem um esquema para as configurações gerenciáveis do componente. Cada recurso pode ser usado com as operações Get e Test para recuperar o estado atual de uma instância de recurso e validar se ela está no estado desejado. A maioria dos recursos também suporta a imposição do estado desejado com a operação set.
Cenários de exemplo incluem como atualizar o conteúdo de um arquivo, como executar um utilitário que altera o estado de uma máquina ou como definir as configurações de um aplicativo.
Diferenças do DSC do PowerShell
O DSCv3 aproveita o módulo PSDesiredStateConfiguration para oferecer suporte à compatibilidade com recursos existentes baseados no PowerShell.
O DSCv3 difere da Configuração de Estado Desejado (PSDSC) do PowerShell de algumas maneiras importantes:
- O DSCv3 não depende do PowerShell. Você pode usar o DSCv3 sem o PowerShell instalado e gerenciar recursos escritos em bash, python, C#, Go ou qualquer outra linguagem.
- O DSCv3 não inclui um gerenciador de configuração local. DSCv3 é invocado como um comando. Ele não é executado como um serviço.
- Recursos que não são do PowerShell definem seus esquemas com arquivos JSON, não com arquivos MOF.
- Os documentos de configuração são definidos em arquivos JSON ou YAML, não em arquivos de script do PowerShell.
É importante ressaltar que, embora o DSCv3 represente uma grande mudança na plataforma DSC, o DSCv3 é capaz de invocar Recursos PSDSC, incluindo Recursos DSC baseados em script e baseados em classe, como existem hoje. Os documentos de configuração não são compatíveis, mas todos os recursos PSDSC publicados são. Você pode usar recursos PSDSC no DSCv3 com o Windows PowerShell e o PowerShell.
Instalação
Para instalar o DSCv3:
- Baixe a versão mais recente do repositório PowerShell/DSC.
- Expanda o arquivo de versão.
- Adicione a pasta que contém o conteúdo do arquivo expandido ao
PATH
.
Para instalar o PSDesiredStateConfiguration
versão 3 beta da Galeria do PowerShell:
# Using PSResourceGet
Install-PSResource -Name PSDesiredStateConfiguration -Version 3.0.0-beta1 -Prerelease
# Using PowerShellGet
Install-Module -Name PSDesiredStateConfiguration -RequiredVersion 3.0.0-beta1 -AllowPrerelease
Integração com DSCv3
O DSCv3 é uma ferramenta de plataforma que abstrai as preocupações de definição e invocação de recursos. Ferramentas de ordem superior, como Azure Dev Box, Windows Dev Home e WinGet são os primeiros parceiros do DSCv3 como agentes de orquestração.
O DSCv3 usa esquemas JSON para definir a estrutura de recursos, documentos de configuração e as saídas que o DSCv3 retorna. Esses esquemas facilitam a integração do DSCv3 com outras ferramentas, porque padronizam e documentam como interagir com o DSCv3.
Ver também
- Anatomia de um recurso DSC baseado em comando aprender sobre a criação de um recurso no idioma de sua escolha.
- Referência de linha de comando para o comando 'dsc'