Обзор Microsoft Desired State Configuration версии 3
Microsoft Desired State Configuration (DSC) — это декларативная платформа конфигурации. При использовании DSC состояние компьютера описывается в формате, который должен быть понятным, даже если читатель не является экспертом в предметной области. В отличие от императивных инструментов, при использовании DSC определение среды приложения отделяется от логики скрипта, реализующей способ ее доставки.
Приложение командной строки DSCv3 декларативно и идемпотентно абстрагирует управление программными компонентами. DSCv3 работает в Linux, macOS и Windows без внешних зависимостей.
С помощью DSCv3 вы можете:
- Создание ресурсов DSC для управления системами на любом языке.
- Вызов отдельных ресурсов.
- Создайте документы конфигурации, определяющие требуемое состояние системы.
Документы конфигурации
Документы конфигурации DSC — это декларативные YAML-файлы, определяющие экземпляры ресурсов. Как правило, в документах конфигурации определяется принудительное состояние.
Примеры сценариев включают требования к среде приложения или операционным стандартам и стандартам безопасности.
Ресурсы DSC
Ресурсы DSC определяют, как управлять состоянием для конкретной системы или компонента приложения. Ресурсы описывают схему для управляемых параметров компонента. Каждый ресурс можно использовать с операциями Get и Test , чтобы получить текущее состояние экземпляра ресурса и проверить, находится ли он в нужном состоянии. Большинство ресурсов также поддерживают принудительное применение требуемого состояния с помощью операции Set .
Примеры сценариев включают обновление содержимого файла, запуск служебной программы, изменяющей состояние компьютера, или настройку параметров приложения.
Отличия от PowerShell DSC
DSCv3 использует модуль PSDesiredStateConfiguration для поддержки совместимости с существующими ресурсами на основе PowerShell.
DSCv3 отличается от PowerShell Desired State Configuration (PSDSC) несколькими важными способами:
- DSCv3 не зависит от PowerShell. Вы можете использовать DSCv3 без установки PowerShell и управлять ресурсами, написанными на bash, python, C#, Go или на любом другом языке.
- DSCv3 не включает локальный диспетчер конфигурации. DSCv3 вызывается как команда. Он не запускается как служба.
- Ресурсы, не относящиеся к PowerShell, определяют свои схемы с помощью JSON-файлов, а не MOF-файлов.
- Документы конфигурации определяются в файлах JSON или YAML, а не в файлах скриптов PowerShell.
Важно отметить, что, хотя DSCv3 представляет собой существенное изменение платформы DSC, DSCv3 может вызывать ресурсы PSDSC, включая ресурсы DSC на основе скриптов и классов, как они существуют сегодня. Документы конфигурации несовместимы, но все опубликованные ресурсы PSDSC являются. Ресурсы PSDSC в DSCv3 можно использовать как с Windows PowerShell, так и с PowerShell.
Установка
Чтобы установить DSCv3, выполните приведенные далее действия.
- Скачайте последний выпуск из репозитория PowerShell/DSC.
- Разверните архив выпуска.
- Добавьте папку, содержащую развернутое содержимое архива, в
PATH
.
Чтобы установить бета-версию PSDesiredStateConfiguration
3 из коллекция PowerShell:
# Using PSResourceGet
Install-PSResource -Name PSDesiredStateConfiguration -Version 3.0.0-beta1 -Prerelease
# Using PowerShellGet
Install-Module -Name PSDesiredStateConfiguration -RequiredVersion 3.0.0-beta1 -AllowPrerelease
Интеграция с DSCv3
DSCv3 — это средство платформы, которое абстрагирует задачи по определению и вызову ресурсов. Средства более высокого порядка, такие как Конфигурация компьютера Azure, Виртуальная машина Azure с автоматическим управлением и WinGet, являются ранними партнерами для DSCv3 в качестве агентов оркестрации.
DSCv3 использует схемы JSON для определения структуры ресурсов, документов конфигурации и выходных данных, возвращаемых DSCv3. Эти схемы упрощают интеграцию DSCv3 с другими средствами, так как они стандартизируют и документируют взаимодействие с DSCv3.
См. также:
- Структура ресурса DSC на основе команд , чтобы узнать о создании ресурса на выбранном вами языке.
- Справочник по командной строке для команды dsc