Overzicht van Microsoft Desired State Configuration v3

Microsoft's Desired State Configuration (DSC) is een declaratief configuratieplatform. Met DSC wordt de status van een machine beschreven met behulp van een indeling die duidelijk moet zijn om te begrijpen, zelfs als de lezer geen onderwerpexpert is. In tegenstelling tot imperatieve hulpprogramma's is met DSC de definitie van een toepassingsomgeving gescheiden van de scriptlogica waarmee wordt geïmplementeerd hoe deze wordt geleverd.

De DSCv3-opdrachtregeltoepassing abstraheert het beheer van softwareonderdelen declaratief en idempotent. DSCv3 wordt uitgevoerd op Linux, macOS en Windows zonder externe afhankelijkheden.

Met DSCv3 kunt u het volgende doen:

  • DSC-resources ontwerpen om uw systemen in elke taal te beheren.
  • Afzonderlijke resources aanroepen.
  • Maak configuratiedocumenten die de gewenste status van een systeem definiëren.

Configuratiedocumenten

DSC-configuratiedocumenten zijn declaratieve YAML-bestanden die instanties van resources definiëren. Configuratiedocumenten definiëren doorgaans welke status moet worden afgedwongen.

Voorbeelden van scenario's zijn vereisten voor een toepassingsomgeving of operationele/beveiligingsstandaarden.

DSC-resources

DSC-resources definiëren hoe de status voor een bepaald systeem- of toepassingsonderdeel moet worden beheerd. Resources beschrijven een schema voor de beheerbare instellingen van het onderdeel. Elke resource kan worden gebruikt met de bewerkingen Ophalen en Testen om de huidige status van een resource-exemplaar op te halen en te valideren of deze de gewenste status heeft. De meeste resources ondersteunen ook het afdwingen van de gewenste status met de bewerking Set .

Voorbeelden van scenario's zijn het bijwerken van de inhoud van een bestand, het uitvoeren van een hulpprogramma waarmee de status van een computer wordt gewijzigd of het configureren van instellingen van een toepassing.

Verschillen met PowerShell DSC

DSCv3 maakt gebruik van de PSDesiredStateConfiguration-module ter ondersteuning van compatibiliteit met bestaande PowerShell-resources.

DSCv3 verschilt op een aantal belangrijke manieren van PowerShell Desired State Configuration (PSDSC):

  • DSCv3 is niet afhankelijk van PowerShell. U kunt DSCv3 gebruiken zonder dat PowerShell is geïnstalleerd en resources beheren die zijn geschreven in bash, Python, C#, Go of een andere taal.
  • DSCv3 bevat geen lokale configuratiebeheerder. DSCv3 wordt aangeroepen als een opdracht. Het wordt niet uitgevoerd als een service.
  • Niet-PowerShell-resources definiëren hun schema's met JSON-bestanden, niet met MOF-bestanden.
  • Configuratiedocumenten worden gedefinieerd in JSON- of YAML-bestanden, niet in PowerShell-scriptbestanden.

Belangrijk is dat DSCv3 een belangrijke wijziging in het DSC-platform vertegenwoordigt, maar dat DSCv3 PSDSC-resources kan aanroepen, inclusief op scripts en klassen gebaseerde DSC-resources, zoals deze tegenwoordig bestaan. De configuratiedocumenten zijn niet compatibel, maar alle gepubliceerde PSDSC-resources wel. U kunt PSDSC-resources in DSCv3 gebruiken met zowel Windows PowerShell als PowerShell.

Installatie

DSCv3 installeren:

  1. Download de nieuwste versie van de PowerShell/DSC-opslagplaats.
  2. Vouw het releasearchief uit.
  3. Voeg de map met de uitgevouwen archiefinhoud toe aan de PATH.

De bètaversie van versie 3 installeren PSDesiredStateConfiguration vanuit de PowerShell Gallery:

# Using PSResourceGet
Install-PSResource -Name PSDesiredStateConfiguration -Version 3.0.0-beta1 -Prerelease
# Using PowerShellGet
Install-Module -Name PSDesiredStateConfiguration -RequiredVersion 3.0.0-beta1 -AllowPrerelease

Integreren met DSCv3

DSCv3 is een platformhulpprogramma dat de zorgen voor het definiëren en aanroepen van resources abstract maakt. Hulpprogramma's van hogere volgorde, zoals Azure Machine Configuration, Azure Automanaged VM en WinGet, zijn vroege partners voor DSCv3 als indelingsagents.

DSCv3 gebruikt JSON-schema's voor het definiëren van de structuur van resources, configuratiedocumenten en de uitvoer die DSCv3 retourneert. Deze schema's maken het gemakkelijker om DSCv3 te integreren met andere hulpprogramma's, omdat ze de interface met DSCv3 standaardiseren en documenteren.

Zie ook