Kann eine PowerShell DSC-Konfigurationsdatei aus einem aktuellen Systembuild erstellt werden?

7

Gibt es eine Möglichkeit, eine PowerShell-Konfigurationsdatei für den gewünschten Status (DSC) aus einem aktuellen System zu erstellen? Sie möchten die gesamte Datei nicht von Grund auf neu erstellen?

Brettski
quelle

Antworten:

6

Nicht direkt. Sie müssten sich jeder Ressource, die Sie modulieren möchten, unabhängig nähern.

Wenn Sie beispielsweise die vorhandenen Windows-Rollen und -Funktionen modellieren möchten, können Sie so etwas wie ein Skript erstellen

Get-WindowsFeature -ComputerName ny-web01 | 
? installed |
% {$t = ''} { $t += @"

WindowsFeature "Role-$($_.Name)"
{
    Name = '$($_.Name)'
    Ensure = 'Present'
"@ 
    if ($_.dependson)
    {
        $t += @"
    DependsOn = '[WindowsFeature]Role-$($_.Name)'
"@
    }

    $t += @'

}
'@
} {$t}

Jede Ressource ist einzigartig darin, wie Sie die Dinge identifizieren möchten, die Sie steuern möchten.

Steven Murawski
quelle
Nicht schön, aber es funktioniert. Obwohl -ComputerName keine gültige Option war, als ich es versuchte. Ich denke, es ist immer noch am besten, von vorne zu beginnen. Danke Steven!
Brettski
-computername ist unter Win7 / Server2008R2 nicht vorhanden, aber auf neueren Betriebssystemen verfügbar.
Steven Murawski
1

Wenn Sie über einen Webserver verfügen, können Sie mit dem Desired State Generator Konfigurationen für Ihre Websites, Anwendungspools und IIS-Komponenten erstellen.

Nicht alles, aber es könnte Ihnen einen Vorsprung verschaffen.

Peter Hahndorf
quelle
1

Es gibt jetzt etwas namens ReverseDSC , mit dem Sie DSC-Konfigurationsdateien basierend auf einem vorhandenen System erstellen können. Es funktioniert immer noch nicht für alle Aspekte des Systems, unterstützt jedoch viele gängige Szenarien.

Peter Hahndorf
quelle