PowerShell 5.0 ve sonraki sürümlerde Yapılandırma Kimliklerini kullanarak Çekme İstemcisi ayarlama

Şunlar için geçerlidir: Windows PowerShell 5.0

Önemli

Çekme Sunucusu (Windows Özelliği DSC-Hizmeti), Windows Server'ın desteklenen bir bileşenidir, ancak yeni özellik veya özellikler sunma planı yoktur. DSC'nin daha yeni bir sürümünün artık genel kullanıma sunulduğundan ve konuk yapılandırma adlı Azure İlkesi özelliği tarafından yönetildiğini bilmenizi isteriz. Konuk yapılandırma hizmeti DSC Uzantısı, Azure Otomasyonu State Configuration ve müşteri geri bildirimlerinden en sık istenen özellikleri birleştirir. Konuk yapılandırması, Arc özellikli sunucular aracılığıyla karma makine desteği de içerir.

Çekme istemcisini ayarlamadan önce bir çekme sunucusu ayarlamanız gerekir. Bu sipariş gerekli olmasa da, sorun gidermeye yardımcı olur ve kaydın başarılı olduğundan emin olmanıza yardımcı olur. Çekme sunucusu ayarlamak için aşağıdaki kılavuzları kullanabilirsiniz:

Her hedef düğüm yapılandırmaları, kaynakları indirmek ve hatta durumunu bildirmek için yapılandırılabilir. Aşağıdaki bölümlerde, çekme istemcisini SMB paylaşımı veya HTTP DSC Çekme Sunucusu ile nasıl yapılandıracağınız gösterilmektedir. Node'un LCM'i yenilendiğinde, atanan yapılandırmaları indirmek için yapılandırılan konuma ulaşır. Düğümde gerekli kaynaklar yoksa, bunları yapılandırılan konumdan otomatik olarak indirir. Düğüm bir Rapor Sunucusu ile yapılandırılmışsa işlemin durumunu bildirir.

Not

Bu konu PowerShell 5.0 için geçerlidir. PowerShell 4.0'da çekme istemcisi ayarlama hakkında bilgi için bkz. PowerShell 4.0'da yapılandırma kimliğini kullanarak çekme istemcisi ayarlama

Çekme istemcisi LCM'sini yapılandırma

Aşağıdaki örneklerden herhangi birinin yürütülmesi PullClientConfigID adlı yeni bir çıkış klasörü oluşturur ve meta yapılandırma MOF dosyasını oraya yerleştirir. Bu durumda meta yapılandırma MOF dosyası olarak adlandırılır localhost.meta.mof.

Yapılandırmayı uygulamak için, Path meta yapılandırma MOF dosyasının konumuna ayarlanmış olarak Set-DscLocalConfigurationManager cmdlet'ini çağırın. Örnek:

Set-DSCLocalConfigurationManager –ComputerName localhost –Path .\PullClientConfigId –Verbose.

Yapılandırma Kimliği

Aşağıdaki örnekler LCM'nin ConfigurationID özelliğini daha önce bu amaçla oluşturulmuş bir Guid olarak ayarlar. ConfigurationID, LCM'nin çekme sunucusunda uygun yapılandırmayı bulmak için kullandığı değerdir. Çekme sunucusundaki yapılandırma MOF dosyası olarak adlandırılmalıdır ConfigurationID.mof; burada ConfigurationID , hedef düğümün LCM'sinin ConfigurationID özelliğinin değeridir. Daha fazla bilgi için bkz. Yapılandırmaları Çekme Sunucusunda Yayımlama (v4/v5).

Aşağıdaki örneği veya New-Guid cmdlet'ini kullanarak rastgele guid oluşturabilirsiniz.

[System.Guid]::NewGuid()

Ortamınızda Guid kullanma hakkında daha fazla bilgi için bkz. Guid'leri planlama.

Yapılandırmaları indirmek için Çekme İstemcisi ayarlama

Her istemciNin Çekme modunda yapılandırılması ve yapılandırmasının depolandığı çekme sunucusu URL'si verilmelidir. Bunu yapmak için Yerel Configuration Manager (LCM) gerekli bilgilerle yapılandırmanız gerekir. LCM'yi yapılandırmak için DSCLocalConfigurationManager özniteliğiyle donatılmış özel bir yapılandırma türü oluşturursunuz. LCM'yi yapılandırma hakkında daha fazla bilgi için bkz. Yerel Configuration Manager Yapılandırma.

HTTP DSC Çekme Sunucusu

Aşağıdaki betik, LCM'yi "CONTOSO-PullSrv" adlı bir sunucudan yapılandırmaları çekecek şekilde yapılandırıyor.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'

        }
    }
}
PullClientConfigID

Betikte ConfigurationRepositoryWeb bloğu çekme sunucusunu tanımlar. ServerUrl, DSC Çekme url'sini belirtir

SMB Paylaşımı

Aşağıdaki betik, LCM'yi SMB Paylaşımı'ndan \\SMBPullServer\Pullyapılandırmaları çekecek şekilde yapılandırıyor.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryShare SMBPullServer
        {
            SourcePath = '\\SMBPullServer\Pull'
        }
    }
}
PullClientConfigID

Betikte ConfigurationRepositoryShare bloğu çekme sunucusunu tanımlar ve bu durumda yalnızca bir SMB paylaşımıdır.

Kaynakları indirmek için Çekme İstemcisi ayarlama

LCM yapılandırmanızda yalnızca ConfigurationRepositoryWeb veya ConfigurationRepositoryShare bloğunu belirtirseniz (önceki örneklerde olduğu gibi), çekme istemcisi yapılandırmalarını aldığı konumdan kaynakları çeker. Kaynaklar için ayrı konumlar da belirtebilirsiniz. Kaynak konumunu ayrı bir sunucu olarak belirtmek için ResourceRepositoryWeb bloğunu kullanın. SMB paylaşımı olarak bir kaynak konumu belirtmek için ResourceRepositoryShare bloğunu kullanın.

Not

ConfigurationRepositoryWeb ile ResourceRepositoryShare veya ConfigurationRepositoryShare'iResourceRepositoryWeb ile birleştirebilirsiniz. Bunun örnekleri aşağıda gösterilmez.

HTTP DSC Çekme Sunucusu

Aşağıdaki meta yapılandırma, yapılandırmalarını CONTOSO-PullSrv'den ve kaynaklarını CONTOSO-ResourceSrv'den almak için bir çekme istemcisi yapılandırmaktadır.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'

        }

        ResourceRepositoryWeb CONTOSO-ResourceSrv
        {
            ServerURL = 'https://CONTOSO-REsourceSrv:8080/PSDSCPullServer.svc'
        }
    }
}
PullClientConfigID

SMB Paylaşımı

Aşağıdaki örnekte, SMB paylaşımından yapılandırmaları ve SMB paylaşımındaki \\SMBPullServer\Configurationskaynakları çekmek için bir istemci ayarlayan bir meta yapılandırma gösterilmektedir \\SMBPullServer\Resources.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryShare SMBPullServer
        {
            SourcePath = '\\SMBPullServer\Configurations'
        }

        ResourceRepositoryShare SMBResourceServer
        {
            SourcePath = '\\SMBPullServer\Resources'
        }
    }
}
PullClientConfigID

Gönderme Modunda Kaynakları otomatik olarak indirme

PowerShell 5.0'dan başlayarak, çekme istemcileriniz Gönderme modu için yapılandırıldıklarında bile modülleri bir SMB paylaşımından indirebilir. Bu özellikle Çekme Sunucusu ayarlamak istemediğiniz senaryolarda kullanışlıdır. ResourceRepositoryShare bloğu ConfigurationRepositoryShare belirtilmeden kullanılabilir. Aşağıdaki örnekte, bir SMB Paylaşımından kaynak çekmek için bir istemci ayarlayan bir meta yapılandırma gösterilmektedir \\SMBPullServer\Resources. Düğüm bir yapılandırmayı GÖNDERDİ olduğunda, belirtilen paylaşımdan gerekli kaynakları otomatik olarak indirir.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Push'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
        }

        ResourceRepositoryShare SMBResourceServer
        {
            SourcePath = '\\SMBPullServer\Resources'
        }
    }
}
PullClientConfigID

Durumu bildirmek için Çekme İstemcisi ayarlama

Varsayılan olarak, Düğümler yapılandırılmış bir Çekme Sunucusuna rapor göndermez. Yapılandırmalar, kaynaklar ve raporlama için tek bir çekme sunucusu kullanabilirsiniz, ancak raporlamayı ayarlamak için bir ReportRepositoryWeb bloğu oluşturmanız gerekir.

HTTP DSC Çekme Sunucusu

Aşağıdaki örnekte, bir istemciyi yapılandırmaları ve kaynakları çekecek ve raporlama verilerini tek bir çekme sunucusuna gönderecek şekilde ayarlayan bir meta yapılandırma gösterilmektedir.

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
        }

        ReportServerWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
        }
    }
}
PullClientConfigID

Bir rapor sunucusu belirtmek için Bir ReportRepositoryWeb bloğu kullanırsınız. Rapor sunucusu SMB sunucusu olamaz. Aşağıdaki meta yapılandırma, yapılandırmalarını CONTOSO-PullSrv'den ve kaynaklarını CONTOSO-ResourceSrv'den almak ve CONTOSO-ReportSrv'ye durum raporları göndermek için çekme istemcisini yapılandırmaktadır:

[DSCLocalConfigurationManager()]
configuration PullClientConfigID
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            ConfigurationID = '1d545e3b-60c3-47a0-bf65-5afc05182fd0'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
        }

        ResourceRepositoryWeb CONTOSO-ResourceSrv
        {
            ServerURL = 'https://CONTOSO-REsourceSrv:8080/PSDSCPullServer.svc'
        }

        ReportServerWeb CONTOSO-ReportSrv
        {
            ServerURL = 'https://CONTOSO-REsourceSrv:8080/PSDSCPullServer.svc'
        }
    }
}
PullClientConfigID

SMB Paylaşımı

Rapor sunucusu SMB paylaşımı olamaz.

Sonraki Adımlar

Çekme istemcisi yapılandırıldıktan sonra aşağıdaki kılavuzları kullanarak sonraki adımları gerçekleştirebilirsiniz:

Ayrıca Bkz.