Mulai menggunakan Desired State Configuration (DSC) untuk Linux

Topik ini menjelaskan cara mulai menggunakan PowerShell Desired State Configuration (DSC) untuk Linux. Untuk informasi umum tentang DSC, lihat Mulai menggunakan Windows PowerShell Desired State Configuration.

Versi sistem operasi Linux yang didukung

Versi sistem operasi Linux berikut didukung oleh DSC untuk Linux.

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

Menginstal DSC untuk Linux

Anda harus menginstal Open Management Infrastructure (OMI) sebelum menginstal DSC untuk Linux.

Menginstal OMI

Konfigurasi Status yang Diinginkan untuk Linux memerlukan server CIM Open Management Infrastructure (OMI), versi 1.0.8.1 atau yang lebih baru. OMI dapat diunduh dari Open Group: Open Management Infrastructure (OMI).

Untuk menginstal OMI, instal paket yang sesuai untuk sistem Linux Anda (.rpm atau .deb) dan versi OpenSSL (ssl_098 atau ssl_100), dan arsitektur (x64/x86). Paket RPM sesuai untuk CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, dan Oracle Linux. Paket DEB sesuai untuk Debian GNU/Linux dan Ubuntu Server. Paket ssl_098 sesuai untuk komputer dengan OpenSSL 0.9.8 yang diinstal sementara paket ssl_100 sesuai untuk komputer dengan OpenSSL 1.0 terinstal.

Catatan

Untuk menentukan versi OpenSSL yang diinstal, jalankan perintah openssl version.

Jalankan perintah berikut untuk menginstal OMI pada sistem CentOS 7 x64.

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

Menginstal DSC

DSC untuk Linux tersedia untuk diunduh dari repositori PowerShell-DSC-for-Linux di repositori.

Untuk menginstal DSC, instal paket yang sesuai untuk sistem Linux Anda (.rpm atau .deb), versi OpenSSL, dan arsitektur (x64/x86). Paket RPM sesuai untuk CentOS, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, dan Oracle Linux. Paket DEB sesuai untuk Debian GNU/Linux dan Ubuntu Server.

Catatan

Dukungan untuk DSC Linux OpenSSL hingga versi 1.1. Untuk menentukan versi OpenSSL yang diinstal, jalankan perintah openssl version.

Jalankan perintah berikut untuk menginstal DSC pada sistem CentOS 7 x64.

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

Menggunakan DSC untuk Linux

Bagian berikut menjelaskan cara membuat dan menjalankan konfigurasi DSC di komputer Linux.

Membuat dokumen MOF konfigurasi

Kata kunci konfigurasi Windows PowerShell digunakan untuk membuat konfigurasi untuk komputer Linux, seperti untuk komputer Windows. Langkah-langkah berikut menjelaskan pembuatan dokumen konfigurasi untuk komputer Linux menggunakan Windows PowerShell.

  1. Impor modul nx. Modul nx Windows PowerShell berisi skema untuk sumber daya Built-In untuk DSC untuk Linux, dan harus diinstal ke komputer lokal Anda dan diimpor dalam konfigurasi.

    • Untuk menginstal modul nx, salin direktori modul nx ke $env:USERPROFILE\Documents\WindowsPowerShell\Modules\ atau $PSHOME\Modules. Modul nx disertakan dalam paket penginstalan DSC untuk Linux. Untuk mengimpor modul nx dalam konfigurasi Anda, gunakan Import-DSCResource perintah :
    Configuration ExampleConfiguration{
    
     Import-DSCResource -ModuleName nx
    
    }
    
  2. Tentukan konfigurasi dan buat dokumen konfigurasi:

    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"
    

Mendorong konfigurasi ke komputer Linux

Dokumen konfigurasi (file MOF) dapat didorong ke komputer Linux menggunakan cmdlet Start-DscConfiguration . Untuk menggunakan cmdlet ini, bersama dengan cmdlet Get-DscConfiguration, atau Test-DscConfiguration , dari jarak jauh ke komputer Linux, Anda harus menggunakan CIMSession. Cmdlet New-CimSession digunakan untuk membuat CIMSession ke komputer Linux.

Kode berikut menunjukkan cara membuat CIMSession untuk DSC untuk 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

Catatan

Untuk mode "Push", kredensial pengguna harus menjadi pengguna root di komputer Linux. Hanya koneksi SSL/TLS yang didukung untuk DSC untuk Linux, New-CimSession harus digunakan dengan parameter –UseSSL yang diatur ke $true. Sertifikat SSL yang digunakan oleh OMI (untuk DSC) ditentukan dalam file: /etc/opt/omi/conf/omiserver.conf dengan properti: pemfile dan keyfile. Jika sertifikat ini tidak dipercaya oleh komputer Windows tempat Anda menjalankan cmdlet New-CimSession , Anda dapat memilih untuk mengabaikan validasi sertifikat dengan Opsi CIMSession: -SkipCACheck -SkipCNCheck -SkipRevocationCheck

Jalankan perintah berikut untuk mendorong konfigurasi DSC ke simpul Linux.

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

Mendistribusikan konfigurasi dengan server penarikan

Konfigurasi dapat didistribusikan ke komputer Linux dengan server penarikan, seperti untuk komputer Windows. Untuk panduan tentang menggunakan server penarikan, lihat Windows PowerShell Desired State Configuration Pull Servers. Untuk informasi dan batasan tambahan yang terkait dengan penggunaan komputer Linux dengan server penarikan, lihat Catatan Rilis untuk Konfigurasi Status yang Diinginkan untuk Linux.

Bekerja dengan konfigurasi secara lokal

DSC untuk Linux menyertakan skrip untuk bekerja dengan konfigurasi dari komputer Linux lokal. Skrip ini ditemukan di /opt/microsoft/dsc/Scripts dan menyertakan yang berikut ini:

  • GetDscConfiguration.py

    Mengembalikan konfigurasi saat ini yang diterapkan ke komputer. Mirip dengan cmdlet cmdlet Get-DscConfiguration Windows PowerShell.

    # sudo ./GetDscConfiguration.py

  • GetDscLocalConfigurationManager.py

    Mengembalikan meta-configuration saat ini yang diterapkan ke komputer. Mirip dengan cmdlet Get-DSCLocalConfigurationManager cmdlet.

    # sudo ./GetDscLocalConfigurationManager.py

  • InstallModule.py

    Menginstal modul sumber daya DSC kustom. Memerlukan jalur ke file .zip yang berisi pustaka objek bersama modul dan file MOF skema.

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

  • RemoveModule.py

    Menghapus modul sumber daya DSC kustom. Memerlukan nama modul untuk dihapus.

    # sudo ./RemoveModule.py cnx_Resource

  • StartDscLocalConfigurationManager.py

    Menerapkan file MOF konfigurasi ke komputer. Mirip dengan cmdlet Start-DscConfiguration . Memerlukan jalur ke MOF konfigurasi untuk diterapkan.

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

  • SetDscLocalConfigurationManager.py

    Menerapkan file MOF Konfigurasi Meta ke komputer. Mirip dengan cmdlet Set-DSCLocalConfigurationManager . Memerlukan jalur ke MOF Konfigurasi Meta untuk diterapkan.

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

Konfigurasi Status yang Diinginkan PowerShell untuk File Log Linux

File log berikut dibuat untuk DSC untuk pesan Linux.

File log Direktori Deskripsi
omiserver.log /var/opt/omi/log Pesan yang berkaitan dengan pengoperasian server CIM OMI.
dsc.log /var/opt/omi/log Pesan yang berkaitan dengan pengoperasian operasi sumber daya Local Configuration Manager (LCM) dan DSC.