Поделиться через


Обзор конфигурации требуемого состояния Майкрософт

Microsoft Desired State Configuration (DSC) — это декларативная платформа конфигурации. При использовании DSC состояние компьютера описывается с помощью формата, который должен быть понятен, даже если читатель не является экспертом по теме. В отличие от императивных инструментов, в DSC определение среды приложения отделено от программной логики, которая обеспечивает это определение.

Приложение командной строки DSC (dsc) абстрагирует управление программными компонентами декларативно и идемпотентно. DSC работает на Linux, macOS и Windows без каких-либо внешних зависимостей.

С помощью DSC можно выполнять следующие задачи:

  • Создание ресурсов DSC для управления системами на любом языке.
  • Вызывайте отдельные ресурсы напрямую.
  • Создайте документы конфигурации, определяющие требуемое состояние системы.

Документы конфигурации

Конфигурационные документы DSC — это декларативные файлы данных, определяющие экземпляры ресурсов. Как правило, документы конфигурации определяют, какое состояние необходимо применить. DSC поддерживает запись конфигурационных документов как в формате JSON, так и в формате YAML.

Примеры сценариев включают требования к среде приложения или стандартам операционной или безопасности.

Ресурсы DSC

Ресурсы DSC определяют способ управления состоянием для определенного компонента системы или приложения. Ресурсы описывают схему для управляемых параметров компонента. Каждый ресурс можно использовать с Get и тестовых операций для получения текущего состояния экземпляра ресурса и проверки того, находится ли он в нужном состоянии. Большинство ресурсов также поддерживают принудительное применение требуемого состояния с помощью операции Set.

Примеры сценариев включают:

  • Как обновить содержимое файла.
  • Как запустить утилиту, которая изменяет состояние машины.
  • Как настроить параметры приложения.

Различия от PowerShell DSC

DSC отличается от конфигурации рекомендуемого состояния PowerShell (PSDSC) по нескольким важным параметрам:

  • DSC не зависит от PowerShell, Windows PowerShell или модуля PowerShell PSDesiredStateConfiguration . DSC обеспечивает полную совместимость с ресурсами PSDSC с помощью Microsoft.DSC/PowerShell ресурсов и Microsoft.Windows/WindowsPowerShellадаптера.

    С помощью ресурса адаптера Microsoft.DSC/PowerShell можно использовать любой ресурс PSDSC, реализованный в виде класса PowerShell. Ресурс обрабатывает обнаружение, проверку и вызов ресурсов PSDSC в PowerShell. Ресурс включен в установочный пакет DSC для каждой платформы.

    С помощью ресурса адаптера Microsoft.Windows/WindowsPowerShell можно использовать любой ресурс PSDSC, совместимый с Windows PowerShell. Ресурс обрабатывает обнаружение, проверку и вызов ресурсов PSDSC в Windows PowerShell. Ресурс включен в установочные пакеты DSC только для Windows.

  • Так как DSC не зависит от PowerShell, вы можете использовать DSC без установленного PowerShell и управлять ресурсами, написанными на bash, Python, C#, Rust или любом другом языке.

  • DSC не включает в себя локальный диспетчер конфигураций. DSC вызывается как команда. Он не выполняется в качестве службы.

  • Новые ресурсы DSC определяют свои схемы с помощью файлов JSON или YAML, а не MOF-файлов. Автономные ресурсы определяют манифест ресурса , в котором указано, как DSC должен вызывать ресурс и какими свойствами ресурс может управлять. Для адаптированных ресурсов, таких как реализованные в PowerShell, ресурс адаптера сообщает DSC о доступных свойствах для ресурса и обрабатывает вызов адаптированных ресурсов.

  • Документы конфигурации определяются в файлах JSON или YAML, а не в файлах скриптов PowerShell. Документы конфигурации поддерживают подмножество функций в шаблонах ARM, включая параметры, переменные, метаданные и функции выражений для динамического разрешения данных в конфигурации.

Установка

Установка DSC вручную

Чтобы установить DSC на любую платформу:

  1. Скачайте последний выпуск из репозитория PowerShell/DSC.
  2. Разверните архив выпуска.
  3. Добавьте папку, содержащую развернутое содержимое архива, в PATH.

Установка DSC на Windows с помощью WinGet

Для установки DSC с помощью пакетов, опубликованных winget в Microsoft Store, можно использовать следующие команды:

Найдите последнюю версию DSC:

winget search DesiredStateConfiguration --source msstore
Name                              Id           Version Source
---------------------------------------------------------------
DesiredStateConfiguration         9NVTPZWRC6KQ Unknown msstore
DesiredStateConfiguration-Preview 9PCX3HX4HZ0Z Unknown msstore

Установите DSC с помощью параметра id :

# Install latest stable
winget install --id 9NVTPZWRC6KQ --source msstore
# Install latest preview
winget install --id 9PCX3HX4HZ0Z --source msstore

Интеграция с DSC

DSC — это платформенный инструмент, который абстрагирует задачи для определения и вызова ресурсов. Средства более высокого порядка, такие как WinGet, Microsoft Dev Box и Azure Machine Configuration , являются ранними партнерами DSC в качестве агентов оркестрации.

DSC использует схемы JSON для определения структуры ресурсов, конфигурационных документов и выходных данных, возвращаемых DSC. Эти схемы упрощают интеграцию DSC с другими инструментами, поскольку они стандартизируют и документируют способы взаимодействия с DSC.

Дополнительные сведения см. в статье Общие сведения о схеме DSC JSON.

См. также