핵심 정보 항목 about _ DesiredStateConfiguration 
 about _ Desired _ State _ Configuration 
 Windows PowerShell ® DSC ( 필요 한 상태 구성 ) 기능 을 간단히 소개 합니다 . 
 DSC 는 Windows PowerShell 의 관리 플랫 폼 입니다 . 이 플랫폼 에서 소프트웨어 서비스 및 이러 한 서비스 가 실행 되 는 환경 에 대한 구성 데이터 를 배포 및 관리 할 수 있 습니다 . DSC 는 소프트웨어 환경 의 상태 를 구성 하 는 방법 을 선언 적 으로 지정 하 는 데 사용 할 수 있 는 Windows PowerShell 언어 확장 , 새로운 cmdlet 및 리소스 를 제공 합니다 . 
 DSC 는 Windows PowerShell 4 . 0 부터 도입 되 었 습니다 . 
 DSC 사용 
 DSC 를 사용 하 여 환경 을 구성 하 려면 구성 키워드 , 식별자 및 블록 을 구분 하 는 중괄호 쌍 을 차례 로 사용 하 여 Windows PowerShell 스크립트 블록 을 정의 합니다 . 구성 블록 내 에 환경 의 각 노드 ( 컴퓨터 ) 에 대해 필요 한 구성 상태 를 지정 하 는 노드 블록 을 정의 할 수 있 습니다 . 노드 블록 은 노드 키워드 로 시작 되 고 , 뒤 에 대상 컴퓨터 의 이름 이 나옵니다 . 이 이름 은 변수 일 수 있 습니다 . 컴퓨터 이름 뒤 에 는 노드 블록 을 구분 하 는 중괄호 가 나옵니다 . 노드 블록 내 에 특정 리소스 를 구성 하 기 위한 리소스 블록 을 정의 할 수 있 습니다 . 리소스 블록 은 다음 예제 와 같이 리소스 의 형식 이름 으로 시작 되 고 , 뒤 에 해당 블록 에 대해 지정 하 려는 식별자 , 블록 을 구분 하 는 중괄호 가 차례 로 나옵니다 . 
 param ( $ MachineName , $ WebsiteFilePath ) 
 # A Configuration block can have one or more Node blocks 
 # WindowsFeature is one of the resources you can use in a Node block 
 # To ensure that the role is not installed , set Ensure to " Absent " 
 # You can use the File resource to create files and folders 
 # " WebDirectory " is the name you want to use to refer to this instance 
 # Ensure that the IIS block is successfully run first before 
 # configuring this resource 
 구성 을 만들 려면 Windows PowerShell 함수 를 호출 할 때 와 같 은 방식 으로 Configuration 블록 을 호출 하 고 정의 했 을 수 있 는 모든 예상 매개 변수 를 제공 합니다 ( 위 의 예제 에서 는 2 개 있 음 ) . 예 를 들 어 이 경우 에 는 다음 과 같 습니다 . 
 MyWebConfig - MachineName " TestMachine " – WebsiteFilePath "\\ filesrv \ WebFiles " ` 
 - OutputPath " C : \ Windows \ system 32 \ temp " # OutputPath is optional 
 이렇게 하 면 사용 자 가 지정 한 경로 에 각 노드 에 대한 MOF 파일 이 생성 됩니다 . 이러 한 MOF 파일 은 각 노드 에 대해 원 하 는 구성 을 지정 합니다 . 다음 으로 , 다음 cmdlet 을 사용 하 여 구성 MOF 파일 을 구문 분석 하 고 , 각 노드 에 해당 구성 을 보내 고 , 해당 구성 을 시행 합니다 . 
 Start - DscConfiguration – Verbose - Wait - Path " C : \ Windows \ system 32 \ temp " 
 DSC 를 사용 하 여 구성 상태 유지 관리 
 DSC 를 사용 할 경우 구성 은 멱 등원 입니다 . 즉 , DSC 를 사용 하 여 동일 한 구성 을 두 번 이상 시행 할 경우 결과 구성 상태 는 항상 동일 해집니다 . 이 때문 에 환경 의 노드 가 필요 한 구성 상태 에서 다른 상태 로 이동 되 었 을 수 있 다고 의심 될 경우 동일 한 DSC 구성 을 다시 시행 하 여 필요 한 상태 로 되돌릴 수 있 습니다 . 해당 상태 가 필요 한 상태 에서 다른 상태 로 이동 된 리소스 만 처리 하 도록 구성 스크립트 를 수정 할 필요 는 없 습니다 . 
 다음 예제 에서 는 지정 된 노드 의 실제 구성 상태 가 노드 에서 마지막 으로 시행 된 DSC 구성 에서 다른 상태 로 이동 되 었 는지 여부 를 확인 하 는 방법 을 보여 줍니다 . 이 예제 에서 는 로컬 컴퓨터 의 구성 을 확인 합니다 . 
 Test - DscConfiguration - CimSession $ session 
 기본 제공 DSC 리소스 
 DSC 는 구성 스크립트 에서 사용 할 수 있 는 기본 제공 리소스 집합 인 레지스트리 , 스크립트 , 보관 , 파일 , WindowsFeature , 패키지 , 환경 , 그룹 , 사용자 , 로그 , 서비스 및 WindowsProcess 를 제공 합니다 . 위 의 예제 에서 는 파일 및 WindowsFeature 리소스 를 사용 하 는 방법 을 보여 줍니다 . 지정 된 리소스 에서 사용 할 수 있 는 모든 속성 을 보 려면 Windows PowerShell ISE 의 구성 스크립트 내 에 있 는 리소스 키워드 ( 예 : 파일 ) 에 커서 를 놓 고 Ctrl 키 를 누른 채 스페이스 바 를 누릅니다 . 
 " Windows PowerShell 필요 한 상태 구성 "