Översikt över Microsoft Desired State Configuration v3

Microsofts Desired State Configuration (DSC) är en deklarativ konfigurationsplattform. Med DSC beskrivs tillståndet för en dator med ett format som bör vara tydligt för att förstå även om läsaren inte är en ämnesexpert. Till skillnad från imperativa verktyg är definitionen av en programmiljö separat från skriptlogik som implementerar hur den levereras med DSC.

Kommandoradsprogrammet DSCv3 abstraherar hanteringen av programvarukomponenter deklarativt och idempotent. DSCv3 körs på Linux, macOS och Windows utan några externa beroenden.

Med DSCv3 kan du:

  • Skapa DSC-resurser för att hantera dina system på valfritt språk.
  • Anropa enskilda resurser.
  • Skapa konfigurationsdokument som definierar det önskade tillståndet för ett system.

Konfigurationsdokument

DSC-konfigurationsdokument är deklarativa YAML-filer som definierar instanser av resurser. Konfigurationsdokument definierar vanligtvis vilket tillstånd som ska framtvingas.

Exempelscenarier omfattar krav för en programmiljö eller drift-/säkerhetsstandarder.

DSC-resurser

DSC-resurser definierar hur du hanterar tillstånd för ett visst system eller en viss programkomponent. Resurser beskriver ett schema för de hanterbara inställningarna för komponenten. Varje resurs kan användas med åtgärderna Get and Test för att hämta det aktuella tillståndet för en resursinstans och verifiera om den är i önskat tillstånd. De flesta resurser har också stöd för att framtvinga önskat tillstånd med set-åtgärden .

Exempelscenarier är hur du uppdaterar innehållet i en fil, hur du kör ett verktyg som ändrar tillståndet för en dator eller hur du konfigurerar inställningar för ett program.

Skillnader från PowerShell DSC

DSCv3 använder modulen PSDesiredStateConfiguration för att stödja kompatibilitet med befintliga PowerShell-baserade resurser.

DSCv3 skiljer sig från PowerShell Desired State Configuration (PSDSC) på några viktiga sätt:

  • DSCv3 är inte beroende av PowerShell. Du kan använda DSCv3 utan att PowerShell har installerats och hantera resurser som skrivits i bash, python, C#, Go eller något annat språk.
  • DSCv3 innehåller ingen lokal konfigurationshanterare. DSCv3 anropas som ett kommando. Den körs inte som en tjänst.
  • Icke-PowerShell-resurser definierar sina scheman med JSON-filer, inte MOF-filer.
  • Konfigurationsdokument definieras i JSON- eller YAML-filer, inte PowerShell-skriptfiler.

Även om DSCv3 innebär en stor förändring av DSC-plattformen kan DSCv3 anropa PSDSC-resurser, inklusive skriptbaserade och klassbaserade DSC-resurser, som de finns idag. Konfigurationsdokumenten är inte kompatibla, men alla publicerade PSDSC-resurser är det. Du kan använda PSDSC-resurser i DSCv3 med både Windows PowerShell och PowerShell.

Installation

Så här installerar du DSCv3:

  1. Ladda ned den senaste versionen från PowerShell/DSC-lagringsplatsen.
  2. Expandera versionsarkivet.
  3. Lägg till mappen som innehåller det expanderade arkivinnehållet i PATH.

Så här installerar PSDesiredStateConfiguration du version 3 beta från PowerShell-galleriet:

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

Integrera med DSCv3

DSCv3 är ett plattformsverktyg som sammanfattar problemen med att definiera och anropa resurser. Verktyg med högre ordning, till exempel Azure Machine Configuration, Azure Automanaged VM och WinGet är tidiga partner för DSCv3 som orkestreringsagenter.

DSCv3 använder JSON-scheman för att definiera strukturen för resurser, konfigurationsdokument och de utdata som DSCv3 returnerar. Dessa scheman gör det enklare att integrera DSCv3 med andra verktyg, eftersom de standardiserar och dokumenterar hur man interagerar med DSCv3.

Se även