Compartir a través de


Introducción a Microsoft Desired State Configuration v3

Desired State Configuration (DSC) de Microsoft es una plataforma de configuración declarativa. Con DSC, el estado de una máquina se describe mediante un formato que debe ser claro para entender aunque el lector no sea un experto en la materia. A diferencia de las herramientas imperativas, con DSC la definición de un entorno de aplicación es independiente de la lógica de script que implementa cómo se entrega.

La aplicación de línea de comandos DSCv3 abstrae la administración de componentes de software de forma declarativa e idempotente. DSCv3 se ejecuta en Linux, macOS y Windows sin dependencias externas.

Con DSCv3, puede:

  • Cree recursos de DSC para administrar los sistemas en cualquier idioma.
  • Invoque recursos individuales.
  • Cree documentos de configuración que definan el estado deseado de un sistema.

Documentos de configuración

Los documentos de configuración de DSC son archivos YAML declarativos que definen instancias de recursos. Normalmente, los documentos de configuración definen qué estado se va a aplicar.

Los escenarios de ejemplo incluyen requisitos para un entorno de aplicación o estándares operativos o de seguridad.

Recursos de DSC

Los recursos de DSC definen cómo administrar el estado de un componente de aplicación o sistema determinado. Los recursos describen un esquema para la configuración administrable del componente. Cada recurso se puede usar con las operaciones de Obtener y Test para recuperar el estado actual de una instancia de recurso y validar si está en el estado deseado. La mayoría de los recursos también admiten la aplicación del estado deseado con la operación Set .

Los escenarios de ejemplo incluyen cómo actualizar el contenido de un archivo, cómo ejecutar una utilidad que cambia el estado de una máquina o cómo configurar las opciones de una aplicación.

Diferencias con DSC de PowerShell

DSCv3 aprovecha el módulo PSDesiredStateConfiguration de para admitir la compatibilidad con los recursos basados en PowerShell existentes.

DSCv3 difiere de la configuración de estado deseado (PSDSC) de PowerShell de algunas maneras importantes:

  • DSCv3 no depende de PowerShell. Puede usar DSCv3 sin powerShell instalado y administrar recursos escritos en Bash, python, C#, Go o cualquier otro lenguaje.
  • DSCv3 no incluye un administrador de configuración local. DSCv3 se invoca como un comando. No se ejecuta como servicio.
  • Los recursos que no son de PowerShell definen sus esquemas con archivos JSON, no con archivos MOF.
  • Los documentos de configuración se definen en archivos JSON o YAML, no en archivos de script de PowerShell.

Importantemente, aunque DSCv3 representa un cambio importante en la plataforma DSC, DSCv3 puede invocar recursos psDSC, incluidos los recursos de DSC basados en scripts y basados en clases, tal como existen actualmente. Los documentos de configuración no son compatibles, pero todos los recursos de PSDSC publicados son. Puede usar recursos de PSDSC en DSCv3 con Windows PowerShell y PowerShell.

Instalación

Para instalar DSCv3:

  1. Descargue la versión más reciente de del repositorio de PowerShell/DSC.
  2. Expanda el archivo de versión.
  3. Agregue la carpeta que contiene el contenido de archivo expandido al PATH.

Para instalar la versión beta de PSDesiredStateConfiguration versión 3 desde la Galería de 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

Integración con DSCv3

DSCv3 es una herramienta de plataforma que abstrae los problemas para definir e invocar recursos. Las herramientas de orden superior, como Azure Dev Box, Windows Dev Home y WinGet, son asociados tempranos para DSCv3 como agentes de orquestación.

DSCv3 usa esquemas JSON para definir la estructura de recursos, documentos de configuración y las salidas que devuelve DSCv3. Estos esquemas facilitan la integración de DSCv3 con otras herramientas, ya que normalizan y documentan cómo interactuar con DSCv3.

Consulte también