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.
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žijteImport-DSCResource
příkaz :
Configuration ExampleConfiguration{ Import-DSCResource -ModuleName nx }
- Pokud chcete nainstalovat modul nx, zkopírujte adresář modulu nx do složky nebo
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 PowerShell
Get-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 |