Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a: Windows PowerShell 4.0, Windows PowerShell 5.0
Este exercício descreve a criação e a aplicação de uma configuração de Estado Desejado (DSC) do início ao fim. No exemplo a seguir, você aprenderá a escrever e aplicar uma Configuração muito simples. A Configuração garantirá a existência de um arquivo "HelloWorld.txt" em sua máquina local. Se você excluir o arquivo, o DSC o recriará na próxima vez que for atualizado.
Para obter uma visão geral do que é DSC e como ele funciona, consulte Visão geral da configuração do estado desejado para desenvolvedores.
Requerimentos
Para executar este exemplo, você precisará de um computador executando o PowerShell 4.0 ou posterior.
Escrever a configuração
Uma Configuração DSC é uma função especial do PowerShell que define como você deseja configurar um ou mais computadores de destino (nós).
No ISE do PowerShell ou em outro editor do PowerShell, digite o seguinte:
Configuration HelloWorld {
# Import the module that contains the File resource.
Import-DscResource -ModuleName PsDesiredStateConfiguration
# The Node statement specifies which targets to compile MOF files for, when
# this configuration is executed.
Node 'localhost' {
# The File resource can ensure the state of files, or copy them from a
# source to a destination with persistent updates.
File HelloWorld {
DestinationPath = "C:\Temp\HelloWorld.txt"
Ensure = "Present"
Contents = "Hello World from DSC!"
}
}
}
Importante
Em cenários mais avançados em que vários módulos precisam ser importados para que você possa trabalhar com muitos recursos DSC na mesma configuração, certifique-se de colocar cada módulo em uma linha separada usando Import-DscResource. Isso é mais fácil de manter no controle do código-fonte e necessário ao trabalhar com DSC na Configuração de Estado do Azure.
Configuration HelloWorld {
# Import the module that contains the File resource.
Import-DscResource -ModuleName PsDesiredStateConfiguration
Import-DscResource -ModuleName xWebAdministration
Salve o arquivo como "HelloWorld.ps1".
Definir uma configuração é como definir uma função. O bloco Nó especifica o nó de destino a ser configurado, neste caso localhost.
A configuração chama um recurso, o File recurso. Os recursos fazem o trabalho de garantir que o nó de destino esteja no estado definido pela configuração.
Compilar a configuração
Para que uma configuração DSC seja aplicada a um nó, ela deve primeiro ser compilada em um arquivo MOF. Executar a configuração, como uma função, compilará um .mof arquivo para cada nó definido pelo Node bloco. Para executar a configuração, você precisa colocar o código-fonte do HelloWorld.ps1 script no escopo atual. Para obter mais informações, consulte about_Scripts.
Dot originar seu HelloWorld.ps1 script digitando o caminho onde você o armazenou, após o . (ponto, espaço). Você pode, então, executar sua configuração chamando-a como uma função. Você também pode invocar a função de configuração na parte inferior do script para que você não precise dot-source.
. C:\Scripts\HelloWorld.ps1
HelloWorld
Isso gera a seguinte saída:
Directory: C:\Scripts\HelloWorld
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 3/13/2017 5:20 PM 2746 localhost.mof
Aplicar a configuração
Agora que você tem o MOF compilado, pode aplicar a configuração ao nó de destino (neste caso, o computador local) chamando o cmdlet Start-DscConfiguration .
O Start-DscConfiguration cmdlet informa ao Local Configuration Manager (LCM), o mecanismo do DSC, para aplicar a configuração. O LCM faz o trabalho de chamar os recursos do DSC para aplicar a configuração.
Use o código abaixo para executar o Start-DSCConfiguration cmdlet. Especifique o caminho do diretório onde o seu localhost.mof está armazenado para o parâmetro Path . O Start-DSCConfiguration cmdlet examina o diretório especificado para todos os <computername>.mof arquivos. O Start-DSCConfiguration cmdlet tenta aplicar cada .mof arquivo encontrado ao computername especificado pelo nome do arquivo ("localhost", "server01", "dc-02", etc.).
Observação
Se o -Wait parâmetro não for especificado, Start-DSCConfiguration criará um trabalho em segundo plano para executar a operação. Especificar o -Verbose parâmetro permite que você observe a saída detalhada da operação.
-Wait, e -Verbose ambos são parâmetros opcionais.
Start-DscConfiguration -Path C:\Scripts\HelloWorld -Verbose -Wait
Testar a configuração
Quando o Start-DSCConfiguration cmdlet estiver concluído, você verá um HelloWorld.txt arquivo no local especificado. Você pode verificar o conteúdo com o cmdlet Get-Content .
Você também pode testar o status atual usando Test-DSCConfiguration.
A saída deve ser True se o nó é atualmente compatível com a configuração aplicada.
Test-DSCConfiguration
True
Get-Content -Path C:\Temp\HelloWorld.txt
Hello World from DSC!
Reaplicando a configuração
Para ver sua configuração ser aplicada novamente, você pode remover o arquivo de texto criado pela sua Configuração. O use o Start-DSCConfiguration cmdlet com o -UseExisting parâmetro. O -UseExisting parâmetro instrui Start-DSCConfiguration a reaplicar o arquivo "current.mof", que representa a configuração aplicada com êxito mais recentemente.
Remove-Item -Path C:\Temp\HelloWorld.txt
Próximos passos
- Saiba mais sobre as configurações DSC em Configurações DSC.
- Veja quais recursos DSC estão disponíveis e como criar recursos DSC personalizados em Recursos DSC.
- Encontre configurações e recursos de DSC na Galeria do PowerShell.