Začínáme s Desired State Configuration (DSC) pro Linux

Toto téma vysvětluje, jak začít používat PowerShell Desired State Configuration (DSC) pro Linux. Obecné informace o DSC najdete v tématu Začínáme s Windows PowerShell Desired State Configuration.

Podporované verze operačního systému Linux

DSC pro Linux podporuje následující verze operačního systému Linux.

  • CentOS 7 a 8 (x64)
  • Debian GNU/Linux 8, 9 a 10 (x64)
  • Oracle Linux 7 (x64)
  • Red Hat Enterprise Linux Server 7 a 8 (x64)
  • SUSE Linux Enterprise Server 12 a 15 (x64)
  • Ubuntu Server 14.04 LTS, 16.04 LTS, 18.04 LTS a 20.04 LTS (x64)

Instalace DSC pro Linux

Před instalací DSC pro Linux musíte nainstalovat infrastrukturu OMI (Open Management Infrastructure ).

Instalace OMI

Desired State Configuration pro Linux vyžaduje server CIM OMI (Open Management Infrastructure) verze 1.0.8.1 nebo novější. OMI je možné stáhnout z části Otevřená skupina: Infrastruktura OMI (Open Management Infrastructure).

Pokud chcete nainstalovat OMI, nainstalujte balíček, který je vhodný pro váš systém Linux (.rpm nebo .deb), verzi OpenSSL (ssl_098 nebo ssl_100) a architekturu (x64/x86). Balíčky RPM jsou vhodné pro CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server a Oracle Linux. Balíčky DEB jsou vhodné pro Debian GNU/Linux a Ubuntu Server. Balíčky ssl_098 jsou vhodné pro počítače s nainstalovanou aplikací OpenSSL 0.9.8, zatímco balíčky ssl_100 jsou vhodné pro počítače s nainstalovanou aplikací OpenSSL 1.0.

Poznámka

Pokud chcete zjistit nainstalovanou verzi OpenSSL, spusťte příkaz openssl version.

Spuštěním následujícího příkazu nainstalujte OMI do systému CentOS 7 x64.

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

Instalace DSC

DSC pro Linux je k dispozici ke stažení z úložiště PowerShell-DSC-for-Linux v úložišti.

Pokud chcete nainstalovat DSC, nainstalujte balíček, který je vhodný pro váš systém Linux (.rpm nebo .deb), verzi OpenSSL a architekturu (x64/x86). Balíčky RPM jsou vhodné pro CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server a Oracle Linux. Balíčky DEB jsou vhodné pro Debian GNU/Linux a Ubuntu Server.

Poznámka

Podpora DSC Linux OpenSSL až do verze 1.1. Pokud chcete zjistit nainstalovanou verzi OpenSSL, spusťte příkaz openssl version.

Spuštěním následujícího příkazu nainstalujte DSC do systému CentOS 7 x64.

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

Použití DSC pro Linux

Následující části vysvětlují, jak vytvořit a spustit konfigurace DSC na počítačích s Linuxem.

Vytvoření dokumentu MOF konfigurace

Klíčové slovo Windows PowerShell Configuration se používá k vytvoření konfigurace pro počítače s Linuxem, stejně jako u počítačů s Windows. Následující postup popisuje vytvoření dokumentu konfigurace pro počítač s Linuxem pomocí Windows PowerShell.

  1. Importujte modul nx. Modul nx Windows PowerShell obsahuje schéma pro Built-In prostředky pro DSC pro Linux a musí být nainstalovaný do místního počítače a importován v konfiguraci.

    • Pokud chcete nainstalovat modul nx, zkopírujte adresář modulu nx do složky nebo $env:USERPROFILE\Documents\WindowsPowerShell\Modules\$PSHOME\Modules. Modul nx je součástí instalačního balíčku DSC pro Linux. K importu modulu nx ve vaší konfiguraci použijte Import-DSCResource příkaz :
    Configuration ExampleConfiguration{
    
     Import-DSCResource -ModuleName nx
    
    }
    
  2. Definujte konfiguraci a vygenerujte dokument konfigurace:

    Configuration ExampleConfiguration
    {
         Import-DSCResource -ModuleName nx
    
         Node  "linuxhost.contoso.com"
         {
             nxFile ExampleFile
             {
                 DestinationPath = "/tmp/example"
                 Contents = "hello world `n"
                 Ensure = "Present"
                 Type = "File"
             }
         }
    }
    
    ExampleConfiguration -OutputPath:"C:\temp"
    

Odeslání konfigurace do počítače s Linuxem

Konfigurační dokumenty (soubory MOF) je možné odeslat do počítače s Linuxem pomocí rutiny Start-DscConfiguration . Pokud chcete tuto rutinu použít spolu s rutinami Get-DscConfiguration nebo Test-DscConfiguration vzdáleně na počítač s Linuxem, musíte použít CIMSession. Rutina New-CimSession se používá k vytvoření CIMSession na počítači s Linuxem.

Následující kód ukazuje, jak vytvořit CIMSession pro DSC pro Linux.

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

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

#Options for a trusted SSL certificate
$opt = New-CimSessionOption -UseSsl

$sessParams = @{
    Credential = $credential
    ComputerName = $Node
    Port = 5986
    Authentication = 'basic'
    SessionOption = $opt
    OperationTimeoutSec = 90
}

$Sess = New-CimSession @sessParams

Poznámka

V režimu nabízení změn musí přihlašovací údaje uživatele být uživatele root na počítači s Linuxem. Pro DSC pro Linux jsou podporovaná pouze připojení SSL/TLS, New-CimSession musí se použít s parametrem –UseSSL nastaveným na $true. Certifikát SSL používaný protokolem OMI (pro DSC) je zadaný v souboru s /etc/opt/omi/conf/omiserver.conf vlastnostmi pemfile a keyfile. Pokud tento certifikát není pro počítač s Windows, na kterém spouštíte rutinu New-CimSession , důvěryhodný, můžete se rozhodnout ignorovat ověřování certifikátu pomocí možností CIMSession: -SkipCACheck -SkipCNCheck -SkipRevocationCheck

Spuštěním následujícího příkazu odešlete konfiguraci DSC do linuxového uzlu.

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

Distribuce konfigurace se serverem vyžádané replikace

Konfigurace je možné distribuovat do počítače s Linuxem pomocí serveru vyžádané replikace stejně jako u počítačů s Windows. Pokyny k používání serveru vyžádané replikace najdete v tématu Windows PowerShell Desired State Configuration servery vyžádané replikace. Další informace a omezení související s používáním počítačů s Linuxem se serverem vyžádané replikace najdete v tématu Poznámky k verzi pro Desired State Configuration pro Linux.

Místní práce s konfiguracemi

DSC pro Linux zahrnuje skripty pro práci s konfigurací z místního počítače s Linuxem. Tyto skripty najdete v /opt/microsoft/dsc/Scripts souboru a obsahují následující:

  • GetDscConfiguration.py

    Vrátí aktuální konfiguraci použitou pro počítač. Podobně jako u rutiny Windows PowerShellGet-DscConfiguration.

    # sudo ./GetDscConfiguration.py

  • GetDscLocalConfigurationManager.py

    Vrátí aktuální meta-konfiguraci použitou pro počítač. Podobá se rutině Get-DSCLocalConfigurationManager .

    # sudo ./GetDscLocalConfigurationManager.py

  • InstallModule.py

    Nainstaluje vlastní modul prostředků DSC. Vyžaduje cestu k souboru .zip obsahujícímu sdílenou knihovnu objektů modulu a soubory MOF schématu.

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

  • RemoveModule.py

    Odebere vlastní modul prostředků DSC. Vyžaduje název modulu, který se má odebrat.

    # sudo ./RemoveModule.py cnx_Resource

  • StartDscLocalConfigurationManager.py

    Použije konfigurační soubor MOF na počítač. Podobá se rutině Start-DscConfiguration . Vyžaduje, aby se použila cesta ke konfiguračnímu MOF.

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

  • SetDscLocalConfigurationManager.py

    Použije na počítač soubor MOF meta configuration. Podobá se rutině Set-DSCLocalConfigurationManager . Vyžaduje, aby se použila cesta k souboru MOF meta configuration.

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

Desired State Configuration PowerShellu pro soubory protokolů Linuxu

Pro zprávy DSC pro Linux se generují následující soubory protokolu.

Soubor protokolu Directory Description
omiserver.log /var/opt/omi/log Zprávy týkající se provozu serveru OMI CIM.
dsc.log /var/opt/omi/log Zprávy týkající se provozu místních Configuration Manager (LCM) a operací prostředků DSC