Met Desired State Configuration (DSC) aan de slag voor LinuxGet started with Desired State Configuration (DSC) for Linux

In dit onderwerp wordt uitgelegd hoe u aan de slag met behulp van PowerShell Desired State Configuration (DSC) voor Linux.This topic explains how to get started using PowerShell Desired State Configuration (DSC) for Linux. Raadpleeg voor algemene informatie over DSC aan de slag met Windows PowerShell Desired State Configuration.For general information about DSC, see Get Started with Windows PowerShell Desired State Configuration.

Ondersteunde versies van Linux bewerking systeemSupported Linux operation system versions

De volgende versies van Linux-besturingssystemen worden ondersteund voor DSC voor Linux.The following Linux operating system versions are supported for DSC for Linux.

  • CentOS 5, 6 en 7 (x86/x64)CentOS 5, 6, and 7 (x86/x64)
  • Debian GNU/Linux 6, 7 en 8 (x86/x64)Debian GNU/Linux 6, 7 and 8 (x86/x64)
  • Oracle Linux 5, 6 en 7 (x86/x64)Oracle Linux 5, 6 and 7 (x86/x64)
  • Red Hat Enterprise Linux Server 5, 6 en 7 (x86/x64)Red Hat Enterprise Linux Server 5, 6 and 7 (x86/x64)
  • SUSE Linux Enterprise Server 10, 11 en 12 (x86/x64)SUSE Linux Enterprise Server 10, 11 and 12 (x86/x64)
  • Ubuntu Server 12.04 TNS, 14.04 TNS en 16.04 LTS (x86/x64)Ubuntu Server 12.04 LTS, 14.04 LTS and 16.04 LTS (x86/x64)

De volgende tabel beschrijft de afhankelijkheden vereist pakket voor DSC voor Linux.The following table describes the required package dependencies for DSC for Linux.

Vereist pakketRequired package BeschrijvingDescription Minimale versieMinimum version
glibcglibc GNU-bibliotheekGNU Library 2…4 – 31.302…4 – 31.30
pythonpython PythonPython 2.4 – 3.42.4 – 3.4
omiserveromiserver Open Management InfrastructureOpen Management Infrastructure 1.0.8.11.0.8.1
Opensslopenssl OpenSSL-bibliothekenOpenSSL Libraries 0.9.8 of 1.00.9.8 or 1.0
ctypesctypes CTypes Python-bibliotheekPython CTypes library Moet overeenkomen met de versie van PythonMust match Python version
libcurllibcurl http-clientbibliotheek cURLcURL http client library 7.15.17.15.1

DSC voor Linux installerenInstalling DSC for Linux

U moet installeren de Open Management Infrastructure (OMI) voordat DSC voor Linux installeren.You must install the Open Management Infrastructure (OMI) before installing DSC for Linux.

OMI installerenInstalling OMI

Desired State Configuration voor Linux de Open Management Infrastructure (OMI) CIM-server, versie 1.0.8.1 vereist of hoger.Desired State Configuration for Linux requires the Open Management Infrastructure (OMI) CIM server, version 1.0.8.1 or later. OMI kan worden gedownload uit de Open groep: Open Management Infrastructure (OMI).OMI can be downloaded from The Open Group: Open Management Infrastructure (OMI).

Installeer het pakket dat geschikt is voor uw Linux-systeem (.rpm of .deb) en de versie van OpenSSL (ssl_098 of ssl_100) en de architectuur (x64/x86) voor het installeren van OMI.To install OMI, install the package that is appropriate for your Linux system (.rpm or .deb) and OpenSSL version (ssl_098 or ssl_100), and architecture (x64/x86). RPM pakketten zijn geschikt voor CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server en Oracle Linux.RPM packages are appropriate for CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, and Oracle Linux. DEB pakketten zijn geschikt voor Debian GNU/Linux en Ubuntu Server.DEB packages are appropriate for Debian GNU/Linux and Ubuntu Server. De ssl_098-pakketten zijn geschikt voor computers met OpenSSL 0.9.8 hebt geïnstalleerd terwijl de ssl_100-pakketten geschikt voor computers met OpenSSL 1.0 is geïnstalleerd zijn.The ssl_098 packages are appropriate for computers with OpenSSL 0.9.8 installed while the ssl_100 packages are appropriate for computers with OpenSSL 1.0 installed.

Opmerking: Voer de opdracht uit om te bepalen van de geïnstalleerde versie van OpenSSL, openssl version.Note: To determine the installed OpenSSL version, run the command openssl version.

Voer de volgende opdracht voor het installeren van OMI op een systeem CentOS 7 x64.Run the following command to install OMI on a CentOS 7 x64 system.

# sudo rpm -Uvh omiserver-1.0.8.ssl_100.rpm

DSC installerenInstalling DSC

DSC voor Linux is beschikbaar als download hier.DSC for Linux is available for download here.

Installeer het pakket dat geschikt is voor uw Linux-systeem (.rpm of .deb) en de versie van OpenSSL (ssl_098 of ssl_100) en de architectuur (x64/x86) voor het installeren van DSC.To install DSC, install the package that is appropriate for your Linux system (.rpm or .deb) and OpenSSL version (ssl_098 or ssl_100), and architecture (x64/x86). RPM pakketten zijn geschikt voor CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server en Oracle Linux.RPM packages are appropriate for CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, and Oracle Linux. DEB pakketten zijn geschikt voor Debian GNU/Linux en Ubuntu Server.DEB packages are appropriate for Debian GNU/Linux and Ubuntu Server. De ssl_098-pakketten zijn geschikt voor computers met OpenSSL 0.9.8 hebt geïnstalleerd terwijl de ssl_100-pakketten geschikt voor computers met OpenSSL 1.0 is geïnstalleerd zijn.The ssl_098 packages are appropriate for computers with OpenSSL 0.9.8 installed while the ssl_100 packages are appropriate for computers with OpenSSL 1.0 installed.

Opmerking: om te bepalen van de geïnstalleerde versie van OpenSSL, voert u de opdracht openssl-versie.Note: To determine the installed OpenSSL version, run the command openssl version.

Voer de volgende opdracht DSC installeren op een systeem CentOS 7 x64.Run the following command to install DSC on a CentOS 7 x64 system.

# sudo rpm -Uvh dsc-1.0.0-254.ssl_100.x64.rpm

Gebruik van DSC voor LinuxUsing DSC for Linux

De volgende secties wordt uitgelegd hoe maken en uitvoeren van DSC-configuraties op Linux-computers.The following sections explain how to create and run DSC configurations on Linux computers.

Maken van een document van de MOF-configuratieCreating a configuration MOF document

De configuratie van Windows PowerShell-sleutelwoord gebruikt voor het maken van een configuratie voor Linux-computers, net als voor Windows-computers.The Windows PowerShell Configuration keyword is used to create a configuration for Linux computers, just like for Windows computers. De volgende stappen beschrijven het maken van een document van de configuratie voor een Linux-computer met Windows PowerShell.The following steps describe the creation of a configuration document for a Linux computer using Windows PowerShell.

  1. Importeer de module NX inschakelen.Import the nx module. De nx Windows PowerShell-module moet bevat het schema voor ingebouwde bronnen voor DSC voor Linux en worden geïnstalleerd op uw lokale computer en geïmporteerd in de configuratie.The nx Windows PowerShell module contains the schema for Built-In resources for DSC for Linux, and must be installed to your local computer and imported in the configuration.

    -Voor het installeren van de module nx, kopieert u de modulemap nx naar elk $env:USERPROFILE\Documents\WindowsPowerShell\Modules\ of $PSHOME\Modules.-To install the nx module, copy the nx module directory to either $env:USERPROFILE\Documents\WindowsPowerShell\Modules\ or $PSHOME\Modules. De module nx is opgenomen in de DSC voor Linux-installatiepakket (MSI).The nx module is included in the DSC for Linux installation package (MSI). Gebruik de module nx in uw configuratie importeren de importeren DSCResource opdracht:To import the nx module in your configuration, use the Import-DSCResource command:

Configuration ExampleConfiguration{

    Import-DSCResource -Module nx

}
  1. Definieer een configuratie en genereren van het configuratiebestand:Define a configuration and generate the configuration document:
Configuration ExampleConfiguration{

    Import-DscResource -Module nx

    Node  "linuxhost.contoso.com"{
    nxFile ExampleFile {

        DestinationPath = "/tmp/example"
        Contents = "hello world `n"
        Ensure = "Present"
        Type = "File"
    }

    }
}
ExampleConfiguration -OutputPath:"C:\temp" 

De configuratie van de push naar de Linux-computerPush the configuration to the Linux computer

Van configuratiedocumenten (MOF-bestanden) kunnen worden geactiveerd met het Linux-computer via de Start DscConfiguration cmdlet.Configuration documents (MOF files) can be pushed to the Linux computer using the Start-DscConfiguration cmdlet. Als u wilt gebruiken van deze cmdlet, samen met de Get-DscConfiguration, of Test DscConfiguration cmdlets, naar een Linux-computer, moet u op afstand een CIMSession gebruiken.In order to use this cmdlet, along with the Get-DscConfiguration, or Test-DscConfiguration cmdlets, remotely to a Linux computer, you must use a CIMSession. De New-CimSession cmdlet gebruikt voor het maken van een CIMSession naar de Linux-computer.The New-CimSession cmdlet is used to create a CIMSession to the Linux computer.

De volgende code laat zien hoe een CIMSession voor DSC voor Linux maken.The following code shows how to create a CIMSession for DSC for Linux.

$Node = "ostc-dsc-01"
$Credential = Get-Credential -UserName:"root" -Message:"Enter Password:"

#Ignore SSL certificate validation
#$opt = New-CimSessionOption -UseSsl:$true -SkipCACheck:$true -SkipCNCheck:$true -SkipRevocationCheck:$true

#Options for a trusted SSL certificate
$opt = New-CimSessionOption -UseSsl:$true 
$Sess=New-CimSession -Credential:$credential -ComputerName:$Node -Port:5986 -Authentication:basic -SessionOption:$opt -OperationTimeoutSec:90 

Opmerking:Note:

  • Voor de modus 'Push' moet de gebruikersreferentie de hoofdgebruiker op de Linux-computer.For “Push” mode, the user credential must be the root user on the Linux computer.
  • Alleen SSL/TLS-verbindingen worden ondersteund voor DSC voor Linux, de New-CimSession moet worden gebruikt met de parameter – UseSSL is ingesteld op $true.Only SSL/TLS connections are supported for DSC for Linux, the New-CimSession must be used with the –UseSSL parameter set to $true.
  • Het SSL-certificaat gebruikt door OMI (DSC) is opgegeven in het bestand: /opt/omi/etc/omiserver.conf met de eigenschappen: pemfile en keyfile.The SSL certificate used by OMI (for DSC) is specified in the file: /opt/omi/etc/omiserver.conf with the properties: pemfile and keyfile. Als dit certificaat niet wordt vertrouwd door de Windows-computer die u gebruikt de New-CimSession cmdlet op, kunt u voor het negeren van validatie van het servercertificaat met de opties CIMSession:-SkipCACheck:$true -SkipCNCheck:$true -SkipRevocationCheck:$trueIf this certificate is not trusted by the Windows computer that you are running the New-CimSession cmdlet on, you can choose to ignore certificate validation with the CIMSession Options: -SkipCACheck:$true -SkipCNCheck:$true -SkipRevocationCheck:$true

Voer de volgende opdracht om de DSC-configuratie naar de Linux-knooppunt.Run the following command to push the DSC configuration to the Linux node.

Start-DscConfiguration -Path:"C:\temp" -CimSession:$Sess -Wait -Verbose

De configuratie met een pull-server distribuerenDistribute the configuration with a pull server

Configuraties kunnen worden gedistribueerd naar een Linux-computer met een pull-server, net als voor Windows-computers.Configurations can be distributed to a Linux computer with a pull server, just like for Windows computers. Zie voor instructies over het gebruik van een pull-server, Windows PowerShell Desired status Pull configuratieservers.For guidance on using a pull server, see Windows PowerShell Desired State Configuration Pull Servers. Zie voor meer informatie en beperkingen bij het gebruik van Linux-computers met een pull-server, de Release-opmerkingen voor Desired State Configuration voor Linux.For additional information and limitations related to using Linux computers with a pull server, see the Release Notes for Desired State Configuration for Linux.

Werken met lokaal configuratiesWorking with configurations locally

DSC voor Linux bevat scripts werken met de configuratie van de lokale Linux-computer.DSC for Linux includes scripts to work with configuration from the local Linux computer. Deze scripts zijn niet vinden in /opt/microsoft/dsc/Scripts en neem het volgende:These scripts are locate in /opt/microsoft/dsc/Scripts and include the following:

  • GetDscConfiguration.pyGetDscConfiguration.py

    Retourneert de huidige configuratie toegepast op de computer.Returns the current configuration applied to the computer. Vergelijkbaar met de cmdlet Get-DscConfiguration Windows PowerShell-cmdlet.Similar to the Windows PowerShell cmdlet Get-DscConfiguration cmdlet.

# sudo ./GetDscConfiguration.py

  • GetDscLocalConfigurationManager.pyGetDscLocalConfigurationManager.py

    Retourneert de huidige meta-configuratie toegepast op de computer.Returns the current meta-configuration applied to the computer. Vergelijkbaar met de cmdlet Get-DSCLocalConfigurationManager cmdlet.Similar to the cmdlet Get-DSCLocalConfigurationManager cmdlet.

# sudo ./GetDscLocalConfigurationManager.py

  • InstallModule.pyInstallModule.py

    Hiermee installeert een aangepaste module van de DSC-resource.Installs a custom DSC resource module. Het pad naar een ZIP-bestand met de module Gedeelde objectbibliotheek en schema MOF-bestanden vereist.Requires the path to a .zip file containing the module shared object library and schema MOF files.

# sudo ./InstallModule.py /tmp/cnx_Resource.zip

  • RemoveModule.pyRemoveModule.py

    Hiermee verwijdert u een aangepaste module van de DSC-resource.Removes a custom DSC resource module. Vereist de naam van de module te verwijderen.Requires the name of the module to remove.

# sudo ./RemoveModule.py cnx_Resource

  • StartDscLocalConfigurationManager.pyStartDscLocalConfigurationManager.py

    Geldt een MOF-bestand voor configuratie voor de computer.Applies a configuration MOF file to the computer. Net als bij de Start DscConfiguration cmdlet.Similar to the Start-DscConfiguration cmdlet. Het pad naar MOF toepassen van de configuratie vereist.Requires the path to the configuration MOF to apply.

# sudo ./StartDscLocalConfigurationManager.py –configurationmof /tmp/localhost.mof

  • SetDscLocalConfigurationManager.pySetDscLocalConfigurationManager.py

    Geldt een Meta configuratie MOF-bestand voor de computer.Applies a Meta Configuration MOF file to the computer. Net als bij de Set DSCLocalConfigurationManager cmdlet.Similar to the Set-DSCLocalConfigurationManager cmdlet. Vereist het pad naar het MOF Meta configuratie toe te passen.Requires the path to the Meta Configuration MOF to apply.

# sudo ./SetDscLocalConfigurationManager.py –configurationmof /tmp/localhost.meta.mof

PowerShell Desired State Configuration voor Linux-logboekbestandenPowerShell Desired State Configuration for Linux Log Files

De volgende logboekbestanden worden gegenereerd voor DSC voor Linux-berichten.The following log files are generated for DSC for Linux messages.

LogboekbestandLog file AdreslijstDirectory BeschrijvingDescription
omiserver.logomiserver.log /var/opt/OMI/log/var/opt/omi/log Berichten met betrekking tot de werking van de OMI-CIM-server.Messages relating to the operation of the OMI CIM server.
dsc.logdsc.log /var/opt/OMI/log/var/opt/omi/log Berichten met betrekking tot de werking van de bewerkingen van de lokale Configuration Manager (LCM) en DSC-resources.Messages relating to the operation of the Local Configuration Manager (LCM) and DSC resource operations.