다음을 통해 공유


로컬 구성 관리자 구성

적용 대상: Windows PowerShell 5.0

LCM(Local Configuration Manager)은 DSC(Desired State Configuration)의 엔진입니다. LCM은 모든 대상 노드에서 실행되며 노드로 전송되는 구성을 구문 분석하고 제정하는 역할을 합니다. 또한 다음을 포함하여 DSC의 다른 여러 측면을 담당합니다.

  • 새로 고침 모드(푸시 또는 풀) 결정.
  • 노드가 구성을 가져오고 제정하는 빈도를 지정합니다.
  • 노드를 끌어오기 서비스와 연결합니다.
  • 부분 구성 지정.

이러한 각 동작을 지정하도록 LCM을 구성하는 것은 특수한 유형의 구성을 사용합니다. 다음 섹션에서는 LCM을 구성하는 방법에 대해 설명합니다.

Windows PowerShell 5.0에는 로컬 구성 관리자를 관리하기 위한 새로운 설정이 도입되었습니다. Windows PowerShell 4.0에서 LCM을 구성하는 방법에 대한 자세한 내용은 이전 버전의 Windows PowerShell에서 로컬 구성 관리자 구성을 참조하세요.

LCM 구성 작성 및 실행

LCM을 구성하려면 LCM 설정을 적용하는 특수 유형의 구성을 만들고 실행합니다. LCM 구성을 지정하려면 DscLocalConfigurationManager 특성을 사용합니다. 다음은 LCM을 푸시 모드로 설정하는 간단한 구성을 보여줍니다.

[DSCLocalConfigurationManager()]
configuration LCMConfig
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Push'
        }
    }
}

LCM에 설정을 적용하는 프로세스는 DSC 구성을 적용하는 것과 유사합니다. LCM 구성을 만들고 MOF 파일로 컴파일한 다음 노드에 적용합니다. DSC 구성과 달리 Start-DscConfiguration cmdlet을 호출하여 LCM 구성을 제정하지 않습니다. 대신 Set-DscLocalConfigurationManager를 호출하여 LCM 구성 MOF에 대한 경로를 매개 변수로 제공합니다. LCM 구성을 적용한 후 Get-DscLocalConfigurationManager cmdlet을 호출하여 LCM의 속성을 볼 수 있습니다.

LCM 구성에는 제한된 리소스 집합에 대한 블록만 포함될 수 있습니다. 이전 예제에서 호출된 유일한 리소스는 설정입니다. 사용 가능한 다른 리소스는 다음과 같습니다.

  • ConfigurationRepositoryWeb: 구성에 대한 HTTP 끌어오기 서비스를 지정합니다.
  • ConfigurationRepositoryShare: 구성에 대한 SMB 공유를 지정합니다.
  • ResourceRepositoryWeb: 모듈에 대한 HTTP 끌어오기 서비스를 지정합니다.
  • ResourceRepositoryShare: 모듈에 대한 SMB 공유를 지정합니다.
  • ReportServerWeb: 보고서가 전송되는 HTTP 끌어오기 서비스를 지정합니다.
  • PartialConfiguration: 부분 구성을 사용하도록 설정하는 데이터를 제공합니다.

기본 설정

끌어오기 서비스 엔드포인트/경로 및 부분 구성을 지정하는 것 외에 LCM의 모든 속성은 설정 블록에서 구성됩니다. 설정 블록에서 사용할 수 있는 속성은 다음과 같습니다.

재산 유형 Description
ActionAfterReboot (재부팅 후 작업) 문자열 구성을 애플리케이션하는 동안 다시 부팅한 후에 발생하는 동작을 지정합니다. 가능한 값은 "ContinueConfiguration""StopConfiguration"입니다.
  • ContinueConfiguration: 컴퓨터를 다시 부팅한 후 현재 구성을 계속 적용합니다. 기본값입니다
  • StopConfiguration: 컴퓨터를 다시 부팅한 후 현재 구성을 중지합니다.
AllowModuleOverwrite bool 끌어오기 서비스에서 다운로드한 새 구성이 대상 노드의 이전 구성을 덮어쓸 수 있는지 $TRUE. 그렇지 않으면 $FALSE.
인증서 ID 문자열 구성에서 전달된 자격 증명을 보호하는 데 사용되는 인증서의 지문입니다. 자세한 내용은 Windows PowerShell 원하는 상태 구성에서 자격 증명을 보호하려는 경우를 참조하세요.
참고: Azure Automation DSC 끌어오기 서비스를 사용하는 경우 자동으로 관리됩니다.
ConfigurationDownloadManager CimInstance[] 더 이상 사용되지 않음. ConfigurationRepositoryWebConfigurationRepositoryShare 블록을 사용하여 구성 끌어오기 서비스 엔드포인트를 정의합니다.
구성 ID 문자열 이전 끌어오기 서비스 버전과의 이전 버전과의 호환성을 위해. 끌어오기 서비스에서 가져올 구성 파일을 식별하는 GUID입니다. 노드는 구성 MOF의 이름이 ConfigurationID.mof인 경우 끌어오기 서비스에서 구성을 끌어옵니다.
메모: 이 속성을 설정하면 RegistrationKey 를 사용하여 끌어오기 서비스에 노드를 등록할 수 없습니다. 자세한 정보는 구성 이름을 사용하여 풀 클라이언트 설정을 참조하십시오.
구성 모드 문자열 LCM이 실제로 대상 노드에 구성을 적용하는 방법을 지정합니다. 가능한 값은 "ApplyOnly", "ApplyAndMonitor""ApplyAndAutoCorrect"입니다.
  • ApplyOnly: DSC는 구성을 적용하고 새 구성이 대상 노드로 푸시되거나 서비스에서 새 구성을 가져오지 않는 한 더 이상 아무 작업도 수행하지 않습니다. 새 구성을 처음 적용한 후 DSC는 이전에 구성된 상태에서 드리프트를 확인하지 않습니다. DSC는 ApplyOnly 가 적용되기 전에 성공할 때까지 구성을 적용하려고 시도합니다.
  • ApplyAndMonitor: 기본값입니다. LCM은 모든 새 구성을 적용합니다. 새 구성을 처음 적용한 후 대상 노드가 원하는 상태에서 벗어나면 DSC는 로그의 불일치를 보고합니다. DSC는 ApplyAndMonitor 가 적용되기 전에 성공할 때까지 구성을 적용하려고 시도합니다.
  • ApplyAndAutoCorrect: DSC는 새 구성을 적용합니다. 새 구성을 처음 적용한 후 대상 노드가 원하는 상태에서 벗어나면 DSC는 로그에 불일치를 보고한 다음 현재 구성을 다시 적용합니다.
ConfigurationModeFrequencyMins UInt32 현재 구성을 검사하고 적용하는 빈도(분)입니다. ConfigurationMode 속성이 ApplyOnly로 설정된 경우 이 속성은 무시됩니다. 기본값은 15입니다.
DebugMode 문자열 가능한 값은 None, ForceModuleImportAll입니다.
  • 캐시된 리소스를 사용하려면 없음 으로 설정합니다. 이는 기본값이며 프로덕션 시나리오에서 사용해야 합니다.
  • ForceModuleImport로 설정하면 LCM이 이전에 로드되고 캐시된 경우에도 DSC 리소스 모듈을 다시 로드합니다. 이는 각 모듈이 사용 시 다시 로드될 때 DSC 작업의 성능에 영향을 미칩니다. 일반적으로 리소스를 디버깅하는 동안 이 값을 사용합니다
  • 이 릴리스에서 AllForceModuleImport와 동일합니다
RebootNode필요한 경우 bool 이 옵션을 설정하면 $true 리소스가 플래그를 사용하여 노드를 재부팅할 수 있습니다.$global:DSCMachineStatus 그렇지 않으면 필요한 구성에 대해 노드를 수동으로 다시 부팅해야 합니다. 기본값은 $false입니다. DSC 이외의 다른 항목(예: Windows Installer)에 의해 다시 부팅 조건이 제정될 때 이 설정을 사용하려면 이 설정을 ComputerManagementDsc 모듈의 PendingReboot 리소스와 결합합니다.
새로 고침 모드 문자열 LCM이 구성을 가져오는 방법을 지정합니다. 가능한 값은 "Disabled", "Push""Pull"입니다.
  • 사용 안 함: 이 노드에 대해 DSC 구성이 사용 안함으로 설정됩니다.
  • 푸시: Start-DscConfiguration cmdlet을 호출하여 구성을 시작합니다. 구성은 노드에 즉시 적용됩니다. 기본값입니다.
  • 끌다: 노드는 끌어오기 서비스 또는 SMB 경로의 구성을 정기적으로 확인하도록 구성됩니다. 이 속성이 Pull로 설정된 경우 ConfigurationRepositoryWeb 또는 ConfigurationRepositoryShare 블록에서 HTTP(서비스) 또는 SMB(공유) 경로를 지정해야 합니다.
새로 고침 빈도분 유인트32 LCM이 풀 서비스를 확인하여 업데이트된 구성을 가져오고 로컬 구성에서 드리프트를 확인하는 시간 간격(분)입니다. 업데이트가 다운로드되었는지 여부에 관계없이 구성이 적용됩니다. LCM이 끌어오기 모드로 구성되지 않은 경우 이 값은 무시됩니다. 기본값은 30입니다.
보고서 관리자 CimInstance[] 더 이상 사용되지 않음. ReportServerWeb 블록을 사용하여 보고 데이터를 끌어오기 서비스로 보내는 엔드포인트를 정의합니다.
ResourceModuleManagers CimInstance[] 더 이상 사용되지 않음. ResourceRepositoryWebResourceRepositoryShare 블록을 사용하여 끌어오기 서비스 HTTP 엔드포인트 또는 SMB 경로를 각각 정의합니다.
부분 구성 Cim인스턴스 구현되지 않았습니다. 사용하지 마세요.
상태 보존 시간 InDays UInt32 LCM이 현재 구성의 상태를 유지하는 일 수입니다.

비고

LCM은 다음을 기반으로 ConfigurationModeFrequencyMins 주기를 시작합니다.

  • ConfigurationModeFrequencyMins가 변경된 새 메타 구성은 다음을 사용하여 적용됩니다.Set-DscLocalConfigurationManager
  • 컴퓨터 다시 시작

타이머 프로세스에서 충돌이 발생하는 모든 조건의 경우 30초 이내에 감지되고 주기가 다시 시작됩니다. 동시 작업으로 인해 주기가 시작되지 않을 수 있으며, 이 작업의 지속 시간이 구성된 주기 빈도를 초과하면 다음 타이머가 시작되지 않습니다. 예를 들어, 메타구성은 15분 풀 빈도로 구성되고 풀은 T1에서 발생합니다. 노드가 16분 동안 작업을 완료하지 않습니다. 처음 15분 주기는 무시되고 다음 풀은 T1+15+15에서 발생합니다.

끌어오기 시나리오의 원래 의도는 가 .RefreshFrequencyMinsConfigurationModeFrequencyMins 로컬 구성은 주로 구성 드리프트 RefreshFrequencyMins 를 방지하기 위해 관리 ConfigurationModeFrequencyMins 되며 관리자가 수행한 실제 구성 변경 사항을 추적하는 데 사용됩니다.

풀 서비스

LCM 구성은 다음과 같은 유형의 끌어오기 서비스 엔드포인트 정의를 지원합니다.

  • 구성 서버: DSC 구성을 위한 저장소입니다. ConfigurationRepositoryWeb(웹 기반 서버의 경우) 및 ConfigurationRepositoryShare(SMB 기반 서버의 경우) 블록을 사용하여 구성 서버를 정의합니다.
  • 리소스 서버: PowerShell 모듈로 패키지된 DSC 리소스에 대한 리포지토리입니다. ResourceRepositoryWeb(웹 기반 서버의 경우) 및 ResourceRepositoryShare(SMB 기반 서버의 경우) 블록을 사용하여 리소스 서버를 정의합니다.
  • 보고서 서버: DSC에서 보고서 데이터를 보내는 서비스입니다. ReportServerWeb 블록을 사용하여 보고서 서버를 정의합니다. 보고서 서버는 웹 서비스여야 합니다.

끌어오기 서비스에 대한 자세한 내용은 원하는 상태 구성 끌어오기 서비스를 참조하세요.

구성 서버 블록

웹 기반 구성 서버를 정의하려면 ConfigurationRepositoryWeb 블록을 만듭니다. ConfigurationRepositoryWeb은 다음 속성을 정의합니다.

재산 유형 Description
AllowUnsecureConnection(연결 허용) bool 인증 없이 노드에서 서버로의 연결을 허용하려면 $TRUE 로 설정합니다. 인증을 요구하려면 $FALSE 로 설정합니다.
인증서 ID 문자열 서버에 인증하는 데 사용되는 인증서의 지문입니다.
구성 이름 문자열[] 대상 노드에서 가져올 구성 이름의 배열입니다. 노드가 RegistrationKey를 사용하여 끌어오기 서비스에 등록된 경우에만 사용됩니다. 자세한 정보는 구성 이름을 사용하여 풀 클라이언트 설정을 참조하십시오.
등록키 문자열 끌어오기 서비스에 노드를 등록하는 GUID입니다. 자세한 정보는 구성 이름을 사용하여 풀 클라이언트 설정을 참조하십시오.
서버 URL 문자열 구성 서비스의 URL입니다.
프록시URL* 문자열 구성 서비스와 통신할 때 사용할 http 프록시의 URL입니다.
프록시 자격 증명* pscredential http 프록시에 사용할 자격 증명입니다.

비고

Windows 버전 1809 이상에서 지원됩니다.

온-프레미스 노드에 대한 ConfigurationRepositoryWeb 값 구성을 단순화하는 예제 스크립트를 사용할 수 있습니다 - DSC 메타 구성 생성 참조

SMB 기반 구성 서버를 정의하려면 ConfigurationRepositoryShare 블록을 만듭니다. ConfigurationRepositoryShare는 다음 속성을 정의합니다.

재산 유형 Description
Credential MSFT_Credential SMB 공유에 인증하는 데 사용되는 자격 증명입니다.
SourcePath 문자열 SMB 공유의 경로입니다.

자원 서버 블록

웹 기반 리소스 서버를 정의하려면 ResourceRepositoryWeb 블록을 만듭니다. ResourceRepositoryWeb은 다음 속성을 정의합니다.

재산 유형 Description
AllowUnsecureConnection(연결 허용) bool 인증 없이 노드에서 서버로의 연결을 허용하려면 $TRUE 로 설정합니다. 인증을 요구하려면 $FALSE 로 설정합니다.
인증서 ID 문자열 서버에 인증하는 데 사용되는 인증서의 지문입니다.
등록키 문자열 끌어오기 서비스에 대한 노드를 식별하는 GUID입니다.
서버 URL 문자열 구성 서버의 URL입니다.
프록시URL* 문자열 구성 서비스와 통신할 때 사용할 http 프록시의 URL입니다.
프록시 자격 증명* pscredential http 프록시에 사용할 자격 증명입니다.

비고

Windows 버전 1809 이상에서 지원됩니다.

온프레미스 노드에 대한 ResourceRepositoryWeb 값 구성을 단순화하는 예제 스크립트를 사용할 수 있습니다 - DSC 메타 구성 생성 참조

SMB 기반 리소스 서버를 정의하려면 ResourceRepositoryShare 블록을 만듭니다. ResourceRepositoryShare 는 다음 속성을 정의합니다.

재산 유형 Description
Credential MSFT_Credential SMB 공유에 인증하는 데 사용되는 자격 증명입니다. 자격 증명 전달의 예는 DSC SMB 끌어오기 서버 설정을 참조하세요.
SourcePath 문자열 SMB 공유의 경로입니다.

보고서 서버 블록

보고서 서버를 정의하려면 ReportServerWeb 블록을 만듭니다. 보고서 서버 역할은 SMB 기반 끌어오기 서비스와 호환되지 않습니다. ReportServerWeb 은 다음 속성을 정의합니다.

재산 유형 Description
AllowUnsecureConnection(연결 허용) bool 인증 없이 노드에서 서버로의 연결을 허용하려면 $TRUE 로 설정합니다. 인증을 요구하려면 $FALSE 로 설정합니다.
인증서 ID 문자열 서버에 인증하는 데 사용되는 인증서의 지문입니다.
등록키 문자열 끌어오기 서비스에 대한 노드를 식별하는 GUID입니다.
서버 URL 문자열 구성 서버의 URL입니다.
프록시URL* 문자열 구성 서비스와 통신할 때 사용할 http 프록시의 URL입니다.
프록시 자격 증명* pscredential http 프록시에 사용할 자격 증명입니다.

비고

Windows 버전 1809 이상에서 지원됩니다.

온프레미스 노드에 대한 ReportServerWeb 값 구성을 단순화하는 예제 스크립트를 사용할 수 있습니다( DSC 메타 구성 생성 참조)

부분 구성

부분 구성을 정의하려면 PartialConfiguration 블록을 생성합니다. 부분 구성에 대한 자세한 내용은 DSC 부분 구성을 참조하세요. PartialConfiguration 은 다음 속성을 정의합니다.

재산 유형 Description
구성 소스 문자열[] 부분 구성을 가져오는 ConfigurationRepositoryWebConfigurationRepositoryShare 블록에 이전에 정의된 구성 서버의 이름 배열입니다.
종속 문자열{} 이 부분 구성이 적용되기 전에 완료해야 하는 다른 구성의 이름 목록입니다.
Description 문자열 부분 구성을 설명하는 데 사용되는 텍스트입니다.
독점 리소스 문자열[] 이 부분 구성에 독점적인 리소스 배열입니다.
새로 고침 모드 문자열 LCM이 이 부분 구성을 가져오는 방법을 지정합니다. 가능한 값은 "Disabled", "Push""Pull"입니다.
  • 사용 안 함: 이 부분 구성은 사용 안함으로 설정됩니다.
  • 푸시: Publish-DscConfiguration cmdlet을 호출하여 부분 구성이 노드로 푸시됩니다. 노드에 대한 모든 부분 구성이 서비스에서 푸시 또는 풀된 후 를 호출 Start-DscConfiguration –UseExisting하여 구성을 시작할 수 있습니다. 기본값입니다.
  • 끌다: 노드는 끌어오기 서비스에서 부분 구성을 정기적으로 확인하도록 구성됩니다. 이 속성이 Pull로 설정된 경우 ConfigurationSource 속성에서 끌어오기 서비스를 지정해야 합니다. Azure Automation 끌어오기 서비스에 대한 자세한 내용은 Azure Automation DSC 개요를 참조하세요.
ResourceModuleSource 문자열[] 이 부분 구성에 필요한 리소스를 다운로드할 리소스 서버의 이름 배열입니다. 이러한 이름은 이전에 ResourceRepositoryWebResourceRepositoryShare 블록에 정의된 서비스 엔드포인트를 참조해야 합니다.

비고

부분 구성은 Azure Automation DSC에서 지원되지만 노드당 각 Automation 계정에서 하나의 구성만 끌어올 수 있습니다.

또한 참조하십시오

개념들

원하는 상태 구성 개요

Azure Automation DSC 시작

기타 리소스

Set-DscLocalConfigurationManager

구성 이름을 사용하여 끌어오기 클라이언트 설정