Mengaktifkan Konfigurasi Status Azure Automation

Catatan

Sebelum Anda mengaktifkan Konfigurasi Status Automation, kami ingin Anda mengetahui bahwa versi DSC yang lebih baru sekarang tersedia secara umum, dikelola oleh fitur Azure Policy bernama konfigurasi tamu. Layanan konfigurasi tamu menggabungkan fitur Ekstensi DSC, Konfigurasi Status Azure Automation, dan fitur yang paling sering diminta dari umpan balik pelanggan. Konfigurasi tamu juga mencakup dukungan komputer hibrid melalui server berkemampuan Arc.

Artikel ini menjelaskan cara menyiapkan komputer untuk manajemen dengan Konfigurasi Status Azure Automation. Untuk detail layanan ini, lihat Ringkasan Konfigurasi Status Azure Automation.

Mengaktifkan Azure VM

Konfigurasi Status Azure Automation memungkinkan Anda mengaktifkan Azure VM dengan mudah untuk manajemen konfigurasi, menggunakan portal Microsoft Azure, templat Azure Resource Manager, atau PowerShell. Di bawah layanan, dan tanpa administrator harus melakukan jarak jauh ke VM, ekstensi Konfigurasi Status Yang Diinginkan Azure VM mendaftarkan VM dengan Konfigurasi Status Azure Automation. Karena ekstensi Azure berjalan secara asinkron, langkah-langkah untuk melacak perkembangannya disediakan di Periksa status penyiapan VM.

Catatan

Menyebarkan DSC ke simpul Linux menggunakan folder /tmp. Modul seperti nxautomation diunduh untuk sementara waktu guna verifikasi sebelum dipasang di lokasi yang sesuai. Untuk memastikan modul dipasang dengan benar, agen Analitik Log untuk Linux memerlukan izin baca/tulis di folder /tmp.

Agen Analitik Log untuk Linux berjalan sebagai pengguna omsagent. Untuk memberikan >izin tulis kepada omsagent pengguna, jalankan perintah setfacl -m u:omsagent:rwx /tmp.

Mengaktifkan VM menggunakan portal Microsoft Azure

Untuk mengaktifkan Azure VM ke Konfigurasi Status melalui portal Microsoft Azure:

  1. Arahkan ke akun Azure Automation untuk mengaktifkan VM.

  2. Pada halaman Konfigurasi Status, pilih tab Simpul, lalu klik Tambahkan.

  3. Pilih VM untuk diaktifkan.

  4. Jika mesin tidak memiliki ekstensi status yang diinginkan PowerShell yang terpasang dan status daya sedang berjalan, klik Sambungkan.

  5. Pada bagian Pendaftaran, masukkan nilai Configuration Manager Lokal PowerShell DSC yang diperlukan untuk kasus penggunaan Anda. Secara opsional, Anda dapat memasukkan konfigurasi simpul untuk ditetapkan ke VM.

enabling VM

Mengaktifkan VM menggunakan templat Azure Resource Manager

Anda dapat memasang dan mengaktifkan VM untuk Konfigurasi Status menggunakan templat Azure Resource Manager. Lihat Server yang dikelola oleh layanan Konfigurasi Status yang diinginkan untuk contoh templat yang mengaktifkan VM yang ada untuk Konfigurasi Status. Jika Anda mengelola kumpulan skala komputer virtual, lihat templat contoh di Konfigurasi kumpulan skala komputer virtual yang dikelola oleh Azure Automation.

Mengaktifkan komputer menggunakan PowerShell

Anda dapat menggunakan cmdlet Register-AzAutomationDscNode di PowerShell guna mengaktifkan VM untuk State Configuration.

Catatan

Cmdlet Register-AzAutomationDscNode saat ini hanya diimplementasikan untuk komputer yang menjalankan Windows, karena hanya memicu ekstensi Windows.

Mendaftarkan VM di seluruh langganan Azure

Cara terbaik untuk mendaftarkan VM dari langganan Azure lainnya adalah dengan menggunakan ekstensi DSC dalam templat penyebaran Azure Resource Manager. Contoh disediakan di Ekstensi Konfigurasi Status yang Diinginkan dengan templat Azure Resource Manager.

Menggunakan metakonfigurasi DSC untuk mendaftarkan komputer hibrid

Anda dapat mengaktifkan komputer dengan aman untuk akun Azure Automation melalui metakonfigurasi DSC. Protokol yang diterapkan di DSC menggunakan informasi dari metakonfigurasi untuk mengautentikasi ke Konfigurasi Status Azure Automation. Simpul mendaftar dengan layanan di URL pendaftaran dan mengautentikasi menggunakan kunci pendaftaran. Selama pendaftaran, node DSC dan layanan DSC menegosiasikan sertifikat unik agar simpul dapat digunakan untuk autentikasi ke server pasca-pendaftaran. Proses ini mencegah simpul yang diaktifkan untuk meniru satu sama lain, misalnya, jika simpul disusupi dan berperilaku jahat. Setelah pendaftaran, kunci pendaftaran tidak digunakan untuk autentikasi lagi, dan dihapus dari simpul.

Anda dapat memperoleh informasi yang diperlukan untuk protokol pendaftaran Konfigurasi Status dari Kunci pada bagian Pengaturan Akun di portal Microsoft Azure.

Azure automation keys and URL

  • URL pendaftaran adalah bidang URL pada halaman Kunci.
  • Kunci pendaftaran adalah nilai bidang Kunci akses primer atau bidang Kunci akses sekunder pada halaman Kunci. Salah satu kunci dapat digunakan.

Untuk keamanan tambahan, Anda dapat meregenerasi kunci akses primer dan sekunder dari akun Automation kapan pun di halaman Kunci. Regenerasi kunci mencegah pendaftaran simpul di masa mendatang menggunakan kunci sebelumnya.

Membuat metakonfigurasi DSC

Untuk mengaktifkan komputer apa pun guna Konfigurasi Status, Anda dapat membuat metakonfigurasi DSC. Konfigurasi ini memberi tahu agen DSC untuk menarik dari dan/atau melaporkan ke Konfigurasi Status Azure Automation. Anda dapat membuat konfigurasi meta DSC untuk Konfigurasi Status Azure Automation menggunakan konfigurasi PowerShell DSC atau cmdlet Azure Automation PowerShell.

Catatan

Metakonfigurasi DSC berisi rahasia yang diperlukan untuk mengaktifkan komputer di akun Automation untuk manajemen. Pastikan untuk melindungi metakonfigurasi DSC yang Anda buat dengan benar, atau hapus konfigurasi tersebut setelah digunakan.

Dukungan proksi untuk metakonfigurasi dikontrol oleh Configuration Manager Lokal, yang merupakan mesin DSC Windows PowerShell. LCM berjalan pada semua simpul target dan bertanggung jawab untuk memanggil sumber daya konfigurasi yang disertakan dalam skrip metakonfigurasi DSC. Anda dapat menyertakan dukungan proksi di dalam metakonfigurasi dengan menyertakan definisi properti ProxyURL dan ProxyCredential sesuai kebutuhan dalam blok ConfigurationRepositoryWeb, ResourceRepositoryWeb, dan ReportServerWeb. Contoh pengaturan URL adalah ProxyURL = "http://172.16.3.6:3128";. Properti ProxyCredential diatur ke objek PSCredential, seperti yang dijelaskan di Mengelola informasi masuk di Azure Automation.

Membuat metakonfigurasi DSC menggunakan konfigurasi DSC

  1. Buka VSCode (atau editor favorit Anda) sebagai administrator pada komputer di lingkungan lokal Anda. Komputer harus terpasang WMF 5 versi terbaru.

  2. Salin skrip berikut secara lokal. Skrip ini berisi konfigurasi DSC PowerShell untuk membuat metakonfigurasi, dan perintah untuk memulai pembuatan metakonfigurasi.

    Catatan

    Nama Konfigurasi Simpul Konfigurasi Status peka huruf besar kecil di portal Microsoft Azure. Jika kasus tidak cocok, simpul tidak akan muncul di bawah tab Simpul.

    # The DSC configuration that will generate metaconfigurations
    [DscLocalConfigurationManager()]
    Configuration DscMetaConfigs
    {
         param
         (
             [Parameter(Mandatory=$True)]
             [String]$RegistrationUrl,
    
             [Parameter(Mandatory=$True)]
             [String]$RegistrationKey,
    
             [Parameter(Mandatory=$True)]
             [String[]]$ComputerName,
    
             [Int]$RefreshFrequencyMins = 30,
    
             [Int]$ConfigurationModeFrequencyMins = 15,
    
             [String]$ConfigurationMode = 'ApplyAndMonitor',
    
             [String]$NodeConfigurationName,
    
             [Boolean]$RebootNodeIfNeeded= $False,
    
             [String]$ActionAfterReboot = 'ContinueConfiguration',
    
             [Boolean]$AllowModuleOverwrite = $False,
    
             [Boolean]$ReportOnly
         )
    
         if(!$NodeConfigurationName -or $NodeConfigurationName -eq '')
         {
             $ConfigurationNames = $null
         }
         else
         {
             $ConfigurationNames = @($NodeConfigurationName)
         }
    
         if($ReportOnly)
         {
             $RefreshMode = 'PUSH'
         }
         else
         {
             $RefreshMode = 'PULL'
         }
    
         Node $ComputerName
         {
             Settings
             {
                 RefreshFrequencyMins           = $RefreshFrequencyMins
                 RefreshMode                    = $RefreshMode
                 ConfigurationMode              = $ConfigurationMode
                 AllowModuleOverwrite           = $AllowModuleOverwrite
                 RebootNodeIfNeeded             = $RebootNodeIfNeeded
                 ActionAfterReboot              = $ActionAfterReboot
                 ConfigurationModeFrequencyMins = $ConfigurationModeFrequencyMins
             }
    
             if(!$ReportOnly)
             {
             ConfigurationRepositoryWeb AzureAutomationStateConfiguration
                 {
                     ServerUrl          = $RegistrationUrl
                     RegistrationKey    = $RegistrationKey
                     ConfigurationNames = $ConfigurationNames
                 }
    
                 ResourceRepositoryWeb AzureAutomationStateConfiguration
                 {
                     ServerUrl       = $RegistrationUrl
                     RegistrationKey = $RegistrationKey
                 }
             }
    
             ReportServerWeb AzureAutomationStateConfiguration
             {
                 ServerUrl       = $RegistrationUrl
                 RegistrationKey = $RegistrationKey
             }
         }
    }
    
     # Create the metaconfigurations
     # NOTE: DSC Node Configuration names are case sensitive in the portal.
     # TODO: edit the below as needed for your use case
    $Params = @{
         RegistrationUrl = '<fill me in>';
         RegistrationKey = '<fill me in>';
         ComputerName = @('<some VM to onboard>', '<some other VM to onboard>');
         NodeConfigurationName = 'SimpleConfig.webserver';
         RefreshFrequencyMins = 30;
         ConfigurationModeFrequencyMins = 15;
         RebootNodeIfNeeded = $False;
         AllowModuleOverwrite = $False;
         ConfigurationMode = 'ApplyAndMonitor';
         ActionAfterReboot = 'ContinueConfiguration';
         ReportOnly = $False;  # Set to $True to have machines only report to AA DSC but not pull from it
    }
    
    # Use PowerShell splatting to pass parameters to the DSC configuration being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    DscMetaConfigs @Params
    
  3. Isi kunci pendaftaran dan URL untuk akun Automation Anda, serta nama-nama komputer yang akan diaktifkan. Semua parameter bersifat opsional. Untuk menemukan kunci pendaftaran dan URL pendaftaran untuk akun Automation Anda, lihat Menggunakan metakonfigurasi DSC untuk mendaftarkan komputer hibrid.

  4. Jika Anda ingin komputer melaporkan informasi status DSC ke Konfigurasi Status Azure Automation, tetapi tidak menarik konfigurasi atau modul PowerShell, atur parameter ReportOnly benar.

  5. Jika Anda ingin komputer melaporkan informasi status DSC ke Konfigurasi Status Azure Automation, tetapi tidak menarik konfigurasi atau modul PowerShell, atur parameter ReportOnly benar. Atur parameter yang sesuai dalam blok ConfigurationRepositoryWeb, ResourceRepositoryWeb, dan ReportServerWeb.

  6. Jalankan skrip. Anda sekarang memiliki folder direktori kerja yang disebut DscMetaConfigs, yang berisi metakonfigurasi DSC PowerShell agar komputer dapat diaktifkan (sebagai administrator).

    Set-DscLocalConfigurationManager -Path ./DscMetaConfigs
    

Membuat metakonfigurasi DSC menggunakan cmdlet Azure Automation

Jika PowerShell DSC LCM secara default cocok dengan kasus penggunaan Anda dan ingin mengaktifkan komputer untuk menarik dari dan melaporkan ke Konfigurasi Status Azure Automation, Anda dapat membuat konfigurasi metakonfigurasi DSC yang diperlukan dengan lebih mudah menggunakan cmdlet Azure Automation.

  1. Buka konsol PowerShell atau VSCode sebagai administrator pada komputer di lingkungan lokal Anda.

  2. Sambungkan ke Azure Resource Manager menggunakan Connect-AzAccount.

  3. Unduh metakonfigurasi DSC PowerShell untuk komputer yang ingin Anda aktifkan dari akun Automation tempat Anda menyiapkan simpul.

    # Define the parameters for Get-AzAutomationDscOnboardingMetaconfig using PowerShell Splatting
    $Params = @{
        ResourceGroupName = 'ContosoResources'; # The name of the Resource Group that contains your Azure Automation account
        AutomationAccountName = 'ContosoAutomation'; # The name of the Azure Automation account where you want a node on-boarded to
        ComputerName = @('web01', 'web02', 'sql01'); # The names of the computers that the metaconfiguration will be generated for
        OutputFolder = "$env:UserProfile\Desktop\";
    }
    # Use PowerShell splatting to pass parameters to the Azure Automation cmdlet being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    Get-AzAutomationDscOnboardingMetaconfig @Params
    
  4. Anda sekarang memiliki folder DscMetaConfigs yang berisi metakonfigurasi DSC PowerShell agar komputer dapat diaktifkan (sebagai administrator).

    Set-DscLocalConfigurationManager -Path $env:UserProfile\Desktop\DscMetaConfigs
    

Mengaktifkan komputer Windows fisik/virtual

Anda dapat mengaktifkan server Windows yang berjalan lokal atau di lingkungan cloud lain (termasuk instans AWS EC2) ke Konfigurasi Status Azure Automation. Server harus memiliki akses keluar ke Azure.

  1. Pastikan WMF 5 versi terbaru dipasang di komputer untuk mengaktifkan Konfigurasi Status. Selain itu, WMF 5 harus dipasang di komputer yang Anda gunakan untuk mengaktifkan komputer.

  2. Ikuti petunjuk di Membuat metakonfigurasi DSC untuk membuat folder yang berisi metakonfigurasi DSC yang diperlukan.

  3. Gunakan cmdlet berikut untuk menerapkan metakonfigurasi PowerShell DSC dari jarak jauh ke komputer yang akan diaktifkan.

    Set-DscLocalConfigurationManager -Path C:\Users\joe\Desktop\DscMetaConfigs -ComputerName MyServer1, MyServer2
    
  4. Jika tidak dapat menerapkan metakonfigurasi PowerShell DSC dari jarak jauh, salin folder metakonfigurasi ke komputer yang Anda aktifkan. Kemudian, tambahkan kode untuk memanggil Set-DscLocalConfigurationManager secara lokal pada komputer.

  5. Dengan menggunakan portal Microsoft Azure atau cmdlet, pastikan komputer muncul sebagai simpul Konfigurasi Status yang terdaftar di akun Azure Automation Anda.

Mengaktifkan komputer Linux fisik/virtual

Anda dapat mengaktifkan server Linux yang berjalan lokal atau di lingkungan cloud lainnya untuk Konfigurasi Status. Server harus memiliki akses keluar ke Azure.

  1. Pastikan Konfigurasi Status yang Diinginkan PowerShell untuk Linux versi terbaru dipasang di komputer untuk mengaktifkan Konfigurasi Status.

  2. Jika Configuration Manager Lokal DSC PowerShell secara default cocok dengan kasus penggunaan Anda, dan Anda ingin mengaktifkan mesin sehingga keduanya menarik dari dan melaporkan ke Konfigurasi Status:

    • Di setiap komputer Linux yang akan diaktifkan, gunakan Register.py untuk mengaktifkan komputer dengan Configuration Manager Lokal DSC PowerShell secara default.

      /opt/microsoft/dsc/Scripts/Register.py <Automation account registration key> <Automation account registration URL>

    • Untuk menemukan kunci pendaftaran dan URL pendaftaran untuk akun Automation Anda, lihat Menggunakan metakonfigurasi DSC untuk mendaftarkan komputer hibrid.

  3. Jika Configuration Manager Lokal (LCM) PowerShell DSC secara default tidak cocok dengan kasus penggunaan Anda, atau Anda ingin mengaktifkan komputer yang hanya melapor ke Konfigurasi Status Azure Automation, ikuti langkah 4-7. Jika tidak, langsung lanjutkan ke langkah 7.

  4. Ikuti petunjuk di Membuat metakonfigurasi DSC untuk membuat folder yang berisi metakonfigurasi DSC yang diperlukan.

  5. Pastikan WMF 5 versi terbaru dipasang di komputer yang digunakan untuk mengaktifkan komputer Anda guna Konfigurasi Status.

  6. Tambahkan kode berikut untuk menerapkan metakonfigurasi PowerShell DSC dari jarak jauh ke mesin yang akan diaktifkan.

    $SecurePass = ConvertTo-SecureString -String '<root password>' -AsPlainText -Force
    $Cred = New-Object System.Management.Automation.PSCredential 'root', $SecurePass
    $Opt = New-CimSessionOption -UseSsl -SkipCACheck -SkipCNCheck -SkipRevocationCheck
    
    # need a CimSession for each Linux machine to onboard
    $Session = New-CimSession -Credential $Cred -ComputerName <your Linux machine> -Port 5986 -Authentication basic -SessionOption $Opt
    
    Set-DscLocalConfigurationManager -CimSession $Session -Path C:\Users\joe\Desktop\DscMetaConfigs
    
  7. Jika Anda tidak dapat menerapkan metakonfigurasi PowerShell DSC dari jarak jauh, salin metakonfigurasi yang sesuai dengan komputer jarak jauh dari folder yang dijelaskan pada langkah 4 ke komputer Linux.

  8. Tambahkan kode untuk memanggil Set-DscLocalConfigurationManager.py secara lokal di setiap komputer Linux untuk mengaktifkan Konfigurasi Status.

    /opt/microsoft/dsc/Scripts/SetDscLocalConfigurationManager.py -configurationmof <path to metaconfiguration file>

  9. Dengan menggunakan portal Microsoft Azure atau cmdlet, pastikan bahwa saat ini komputer yang diaktifkan muncul sebagai simpul DSC yang terdaftar di akun Azure Automation Anda.

Mendaftarkan ulang sebuah simpul

Setelah mendaftarkan komputer sebagai simpul DSC di Konfigurasi Status Azure Automation, ada beberapa alasan mengapa Anda mungkin perlu mendaftarkan kembali simpul tersebut di masa depan.

  • Perpanjangan sertifikat. Untuk versi Windows Server sebelum Windows Server 2019, setiap simpul menegosiasikan sertifikat unik secara otomatis untuk autentikasi yang kedaluwarsa setelah satu tahun. Jika sertifikat kedaluwarsa tanpa perpanjangan, simpul tidak dapat berkomunikasi dengan Azure Automation dan ditandai Unresponsive. Saat ini, protokol pendaftaran DSC PowerShell tidak dapat memperbarui sertifikat secara otomatis ketika sertifikat mendekati kedaluwarsa, dan Anda harus mendaftarkan kembali simpul setelah waktu setahun. Sebelum mendaftar ulang, pastikan setiap simpul menjalankan WMF 5 RTM.

    Pendaftaran ulang yang dilakukan 90 hari atau kurang dari waktu kedaluwarsa sertifikat, atau pada titik mana pun setelah waktu kedaluwarsa sertifikat, akan menghasilkan sertifikat baru yang dibuat dan digunakan. Resolusi untuk masalah ini disertakan dalam Windows Server 2019 dan yang lebih baru.

  • Perubahan pada nilai LCM DSC. Anda mungkin perlu mengubah nilai LCM DSC PowerShell yang ditetapkan saat pendaftaran awal simpul, misalnya, ConfigurationMode. Saat ini, Anda hanya dapat mengubah nilai agen DSC tersebut melalui pendaftaran ulang. Satu-satunya pengecualian adalah nilai Konfigurasi Simpul yang ditetapkan ke simpul. Anda dapat mengubahnya di DSC Azure Automation secara langsung.

Anda dapat mendaftarkan ulang simpul seperti saat mendaftarkan simpul awal, menggunakan salah satu metode yang dijelaskan dalam dokumen ini. Anda tidak perlu membatalkan pendaftaran simpul dari Konfigurasi Status Azure Automation sebelum mendaftarkan ulang simpul.

Memeriksa status penyiapan VM

Konfigurasi Status memungkinkan Anda dengan mudah mengaktifkan Azure Windows VM untuk manajemen konfigurasi. Di balik layanan, ekstensi Konfigurasi Status yang Diinginkan Azure VM digunakan untuk mendaftarkan VM dengan Konfigurasi Status Azure Automation. Karena ekstensi Konfigurasi Status yang Diinginkan Azure VM berjalan secara asinkron, melacak perkembangannya dan memecahkan masalah eksekusinya bisa menjadi penting.

Catatan

Metode apa pun untuk mengaktifkan Azure Windows VM untuk Konfigurasi Status yang menggunakan ekstensi Konfigurasi Status Yang Diinginkan Azure VM dapat memakan waktu hingga satu jam agar Azure Automation menampilkan VM sebagai terdaftar. Penundaan ini disebabkan oleh pemasangan WMF 5 pada VM oleh ekstensi Konfigurasi Status yang Diinginkan Azure VM, yang diperlukan untuk mengaktifkan VM guna Konfigurasi Status.

Untuk menampilkan status ekstensi Konfigurasi Status yang Diinginkan Azure VM:

  1. Di portal Microsoft Azure, arahkan ke VM yang diaktifkan.
  2. Klik Ekstensi di bagian Pengaturan.
  3. Sekarang pilih DSC atau DSCForLinux, tergantung pada sistem operasi Anda.
  4. Untuk detail selengkapnya, Anda dapat mengklik Menampilkan detail status.

Langkah berikutnya