Публикация на опрашиваемом сервере с помощью идентификаторов конфигурации (v4/v5)
В следующих разделах предполагается, что вы уже настроили опрашиваемый сервер. Если вы не настроили опрашиваемый сервер, можно воспользоваться следующими руководствами.
Для каждого целевого узла можно настроить скачивание конфигураций, ресурсов и даже отчет о состоянии. В этой статье показано, как передать ресурсы, чтобы они были доступны для загрузки, и настроить клиенты, чтобы ресурсы загружались автоматически. Когда узел получает назначенную конфигурацию с помощью команды Pull или Push (версия 5), он автоматически загружает любые ресурсы, требуемые для конфигурации, из расположения, указанного в локальном диспетчере конфигураций (LCM)
Компиляция конфигураций
Первый шаг к сохранению конфигураций на опрашиваемом сервере — скомпилировать их в файлы .mof
. Чтобы сделать конфигурацию универсальной и применимой к большему количеству клиентов, используйте localhost
в блоке узла. В приведенном ниже примере показана оболочка конфигурации, которая использует localhost
вместо имени конкретного клиента.
Configuration GenericConfig
{
Node localhost
{
}
}
GenericConfig
После компиляции универсальной конфигурации вы должны получить файл localhost.mof
.
Переименование MOF-файла
Конфигурации файлов .mof
можно хранить на опрашиваемом сервере, указывая параметр ConfigurationName или ConfigurationID. В зависимости от того, как вы планируете настроить опрашиваемые клиенты, можно выбрать раздел ниже, чтобы корректно переименовать скомпилированные файлы .mof
.
Идентификаторы конфигурации (GUID)
Вам потребуется переименовать файл localhost.mof
в <GUID>.mof
. Можно создать случайный GUID в примере ниже или с помощью командлета New-Guid.
[System.Guid]::NewGuid()
Пример выходных данных
Guid
----
64856475-939e-41fb-aba5-4469f4006059
Затем можно переименовать файл .mof
любым приемлемым способом. В примере ниже используется командлет Rename-Item.
Rename-Item -Path .\localhost.mof -NewName '64856475-939e-41fb-aba5-4469f4006059.mof'
Дополнительные сведения об использовании идентификаторов GUID в вашей среде см. в разделе Планирование для идентификаторов GUID.
Имена файлов конфигурации
Вам потребуется переименовать файл localhost.mof
в <Configuration Name>.mof
. В следующем примере используется имя конфигурации из предыдущего раздела. Затем можно переименовать файл .mof
любым приемлемым способом. В примере ниже используется командлет Rename-Item.
Rename-Item -Path .\localhost.mof -NewName 'GenericConfig.mof'
Создание контрольной суммы
С каждым файлом .mof
, который хранится на опрашиваемом сервере или в общей папке SMB, должен быть связан файл .checksum
.
Этот файл позволяет клиентам узнать, что связанный файл .mof
был изменен и должен быть загружен снова.
Вы можете создать контрольную сумму с помощью командлета New-DscChecksum. Можно также запустить New-DSCCheckSum
для каталога файлов с помощью параметра -Path
.
Если контрольная сумма уже существует, вы можете принудительно создать ее заново с помощью параметра -Force
. В следующем примере указан каталог, которые содержит файл .mof
из предыдущего раздела, и используется параметр -Force
.
New-DscChecksum -Path '.\' -Force
Выходные данные не будут отображаться, но теперь должен отобразиться файл <GUID or Configuration Name>.mof.checksum
.
Где хранить MOF-файлы и контрольные суммы
На опрашиваемом HTTP-сервере DSC
Когда вы настраиваете опрашиваемый HTTP-сервер, как описано в статье Опрашивающая служба Desired State Configuration, вы указываете ключи для ModulePath и ConfigurationPath. Ключ ModulePath указывает, где должны храниться упакованные файлы модуля .zip
. Ключ ConfigurationPath указывает, где должны храниться все файлы .mof
и файлы .checksum
.
xDscWebService PSDSCPullServer
{
...
ModulePath = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Modules"
ConfigurationPath = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Configuration"
...
}
В общей папке SMB
При настройке опрашивающего клиента для использования общей папки SMB укажите ConfigurationRepositoryShare.
Все файлы .mof
и файлы .checksum
следует хранить в каталоге SourcePath из блока ConfigurationRepositoryShare.
ConfigurationRepositoryShare SMBPullServer
{
SourcePath = '\\SMBPullServer\Pull'
}
Дальнейшие действия
Далее необходимо настроить опрашиваемый клиент, чтобы получить конкретную конфигурацию. Дополнительные сведения см. в следующих руководствах.
- Настройка клиента на включение внесенных изменений с помощью идентификаторы конфигурации в PowerShell 4.0
- Настройка опрашивающего клиента с помощью идентификаторов конфигурации в PowerShell 5.0 и выше
- Настройка опрашивающего клиента с помощью имен конфигурации в PowerShell 5.0 и выше