Настройка опрашивающего клиента с помощью имен конфигурации в PowerShell 5.0 и выше
Область применения: Windows PowerShell 5.0
Важно!
Опрашивающий сервер (компонент Windows служба DSC) — поддерживаемый компонент Windows Server, но реализация новых функций и возможностей для него не планируется. Мы хотели бы, чтобы вы знали, что более новая версия DSC теперь общедоступна, управляемая функцией Политика Azure именованной гостевой конфигурацией. Служба гостевой конфигурации сочетает в себе функции расширения DSC, служба автоматизации Azure State Configuration и наиболее часто запрашиваемые функции из отзывов клиентов. Гостевая конфигурация также включает поддержку гибридных компьютеров через серверы с поддержкой Arc.
Перед настройкой опрашивающего клиента необходимо настроить опрашиваемый сервер. Хотя этот порядок необязателен, он помогает устранять неполадки и гарантировать, что регистрация пройдет успешно. Чтобы настроить опрашиваемый сервер, можно воспользоваться следующими руководствами:
Для каждого целевого узла можно настроить скачивание конфигураций, ресурсов и даже отчет о состоянии. В следующих разделах описана настройка опрашивающего клиента с общим ресурсом SMB или опрашиваемым сервером DSC HTTP. При обновлении узла LCM он будет связываться с настроенным расположением для скачивания всех назначенных конфигураций. Если необходимые ресурсы отсутствуют на узле, он автоматически скачивает их из настроенного расположения. Если на узле настроен сервер отчетов, затем он сообщит о состоянии операции.
Примечание
Этот раздел относится к PowerShell 5.0. Сведения о настройке опрашивающего клиента в PowerShell 4.0 см. в разделе Настройка опрашивающего клиента с помощью идентификатора конфигурации в PowerShell 4.0
Настройка LCM опрашивающего клиента
После запуска любого из примеров ниже будет создана новая выходная папка PullClientConfigNames, в которую будет помещен MOF-файл метаконфигурации. В этом случае MOF-файл метаконфигурации будет называться localhost.meta.mof
.
Чтобы применить конфигурацию, вызовите командлет Set-DscLocalConfigurationManager, в параметре Path которого задано расположение MOF-файла метаконфигурации. Пример:
Set-DSCLocalConfigurationManager –ComputerName localhost –Path .\PullClientConfigName –Verbose.
Имя конфигурации
В примерах ниже в свойстве ConfigurationName LCM задается имя ранее скомпилированной конфигурации, созданной для этой цели. Имя ConfigurationName — это то, что LCM использует для поиска соответствующей конфигурации на опрашиваемом сервере. MOF-файл конфигурации на опрашиваемом сервере должен называться <ConfigurationName>.mof
, в данном случае "ClientConfig.mof". Дополнительные сведения см. в разделе Публикация конфигураций на опрашиваемом сервере (версии 4 и 5).
Настройка опрашивающего клиента для скачивания конфигураций
Каждый клиент должен быть настроен в опрашивающем режиме с URL-адресом опрашиваемого сервера, где хранится конфигурация. Для этого потребуется настроить локальный диспетчер конфигураций (LCM), указав обязательную информацию. Чтобы настроить LCM, создайте специальный тип конфигурации, помеченный атрибутом DSCLocalConfigurationManager. Дополнительные сведения о настройке LCM см. в разделе Настройка локального диспетчера конфигураций.
Следующий сценарий настраивает LCM для опроса конфигураций с сервера CONTOSO-PullSrv.
В сценарии блок ConfigurationRepositoryWeb задает опрашивающий сервер. Свойство ServerURL указывает конечную точку для опрашивающего сервера.
Свойство RegistrationKey является общим ключом между всеми узлами клиента для опрашивающего сервера и этим опрашивающим сервером. Те же значения хранятся в файле на опрашивающем сервере.
Примечание
Ключи регистрации работают только с опрашиваемыми веб-серверами. Вам по-прежнему следует использовать ConfigurationID с опрашиваемым сервером SMB. >Сведения о настройке опрашивающего сервера с помощью ConfigurationID см. в статье Настройка опрашивающего клиента с помощью идентификатора конфигурации.
Свойство ConfigurationNames представляет собой массив, указывающий имена конфигураций, предназначенных для узла клиента. >Примечание. Если для параметра ConfigurationNames указано больше одного значения, в конфигурации необходимо также указать блоки PartialConfiguration. >Сведения о частичных конфигурациях см. в разделе PowerShell Desired State Configuration частичных конфигураций.
[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
Node localhost
{
Settings
{
RefreshMode = 'Pull'
RefreshFrequencyMins = 30
RebootNodeIfNeeded = $true
}
ConfigurationRepositoryWeb CONTOSO-PullSrv
{
ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
RegistrationKey = '140a952b-b9d6-406b-b416-e0f759c9c0e4'
ConfigurationNames = @('ClientConfig')
}
}
}
PullClientConfigNames
Настройка опрашивающего клиента для скачивания ресурсов
Если указать только блок ConfigurationRepositoryWeb или ConfigurationRepositoryShare в конфигурации LCM (как в предыдущем примере), опрашивающий клиент будет получать ресурсы оттуда же, где хранятся ваши MOF-файлы. Можно также указать другое место, откуда клиенты смогут скачивать ресурсы. Чтобы указать сервер ресурсов, используйте ResourceRepositoryWeb (для опрашивающего веб-сервера) или блок ResourceRepositoryShare (для опрашивающего SMB-сервера).
В следующем примере показана метаконфигурация, которая настраивает клиент для скачивания конфигураций с опрашиваемого сервера, а ресурсов — с общего ресурса SMB.
[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
Node localhost
{
Settings
{
RefreshMode = 'Pull'
RefreshFrequencyMins = 30
RebootNodeIfNeeded = $true
}
ConfigurationRepositoryWeb CONTOSO-PullSrv
{
ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
}
ResourceRepositoryShare SMBResources
{
SourcePath = '\\SMBPullServer\Resources'
}
}
}
PullClientConfigNames
Настройка опрашивающего клиента для отчета о состоянии
Можно использовать один и тот же опрашиваемый сервер для конфигурации, ресурсов и создания отчетов. Отчеты не настраиваются для клиентов по умолчанию. Чтобы настроить клиент для отчета о состоянии, необходимо создать блок ReportRepositoryWeb. В следующем примере показана метаконфигурация, которая настраивает клиент для опроса конфигураций и ресурсов и отправки данных отчетов на одном опрашивающем сервере.
Примечание
Сервер отчетов не может быть общим ресурсом SMB.
[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
Node localhost
{
Settings
{
RefreshMode = 'Pull'
RefreshFrequencyMins = 30
RebootNodeIfNeeded = $true
}
ConfigurationRepositoryWeb CONTOSO-PullSrv
{
ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
}
ReportServerWeb CONTOSO-PullSrv
{
ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
}
}
}
PullClientConfigNames