Share via


스크립팅 에이전트 이해

 

적용 대상: Exchange Server 2010 SP2, Exchange Server 2010 SP3

마지막으로 수정된 항목: 2015-03-09

Microsoft Exchange Server 2010의 Scripting Agent cmdlet 확장 에이전트를 사용하여 사용자의 스크립팅 로직을 Exchange cmdlet의 실행에 삽입할 수 있습니다. Scripting Agent를 사용하면 조건을 추가하고 값을 재정의하고 보고를 설정할 수 있습니다.

경고

Scripting Agent cmdlet 확장 에이전트를 사용하도록 설정하면 Exchange 2010을 실행하는 서버에서 cmdlet이 실행될 때마다 에이전트가 호출됩니다. 여기에는 Exchange 관리 셸에서 직접 실행하는 cmdlet 뿐만 아니라 Exchange 서비스, EMC(Exchange 관리 콘솔) 및 ECP(Exchange 제어판)에서 실행되는 cmdlet도 포함됩니다. 업데이트된 구성 파일을 Exchange 2010 서버로 복사하고 Scripting Agent cmdlet 확장 에이전트를 사용하도록 설정하기 전에 스크립트를 비롯하여 구성 파일에 대한 변경 사항을 반드시 테스트하는 것이 좋습니다.

Exchange cmdlet이 실행될 때마다 cmdlet은 Scripting Agent cmdlet 확장 에이전트를 호출합니다. 이 에이전트가 호출되면 cmdlet은 스크립트가 cmdlet에 의해 호출되도록 구성되었는지 여부를 확인합니다. cmdlet에 대한 스크립트를 실행해야 하는 경우 cmdlet은 스크립트에 정의된 API를 호출하려 합니다. 다음 API를 사용할 수 있으며, 다음 순서대로 호출됩니다.

  1. ProvisionDefaultProperties   이 API는 개체를 만들 때 속성 값을 설정하는 데 사용할 수 있습니다. 값을 설정하면 그 값이 cmdlet으로 반환되며, cmdlet은 해당 속성에 값을 설정합니다. 사용자가 값을 지정하지 않은 경우 속성에 값을 채울 수도 있고 사용자가 지정한 값을 재정의할 수도 있습니다. 이 API는 우선 순위가 더 높은 에이전트가 설정한 값을 사용합니다. Scripting Agent cmdlet 확장 에이전트는 우선 순위가 더 높은 에이전트가 설정한 값을 덮어쓰지 않습니다.

  2. UpdateAffectedIConfigurable   이 API는 다른 모든 처리가 완료되었지만 Validate API가 아직 호출되지 않은 경우 개체에 대한 속성 값을 설정하는 데 사용할 수 있습니다. 이 API는 우선 순위가 더 높은 에이전트가 설정한 값을 사용합니다. Scripting Agent cmdlet 확장 에이전트는 우선 순위가 더 높은 에이전트가 설정한 값을 덮어쓰지 않습니다.

  3. Validate   이 API는 cmdlet에 의해 설정될 개체의 속성에 대한 값을 확인하는 데 사용할 수 있습니다. 이 API는 cmdlet이 데이터를 작성하기 직전에 호출됩니다. cmdlet의 성공 또는 실패를 결정하는 유효성 검사를 구성할 수 있습니다. cmdlet이 이 API에서 유효성 검사를 통과하면 cmdlet은 데이터를 쓸 수 있게 됩니다. cmdlet이 유효성 검사에서 탈락하면 이 API에 정의된 오류가 반환됩니다.

  4. OnComplete   이 API는 모든 cmdlet 처리가 완료된 후에 사용됩니다. 이는 외부 데이터베이스에 데이터 쓰기와 같은 후처리 작업에 사용할 수 있습니다.

참고

Get 동사를 포함한 cmdlet이 실행되는 경우에는 Scripting Agent cmdlet 확장 에이전트가 호출되지 않습니다. 또한 Edge 전송 서버 역할을 실행하는 Exchange 서버에서는 에이전트가 실행되지 않습니다. 이는 서버 역할이 cmdlet 확장 에이전트를 지원하지 않기 때문입니다.

Scripting Agent는 여러 cmdlet 확장 에이전트 중 하나입니다. cmdlet 확장 에이전트에 대한 자세한 내용은 Cmdlet 확장 에이전트 이해를 참조하십시오.

목차

스크립팅 에이전트 구성 파일

스크립팅 에이전트 사용 설정

에이전트 우선 순위

스크립팅 에이전트 구성 파일

스크립팅 에이전트 구성 파일에는 스크립팅 에이전트를 실행하려는 모든 스크립트가 포함됩니다. 구성 파일의 스크립트는 데이터를 스크립트에 전달하는 데 필요한 다양한 입력 매개 변수 및 스크립트의 시작과 끝을 정의하는 XML 태그 안에 포함되어 있습니다. 스크립트는 Windows PowerShell 구문을 사용하여 작성됩니다. 구성 파일은 다음 표에 나오는 요소 또는 특성을 사용하는 XML 파일입니다.

요소 특성 설명

Configuration

해당 없음

이 요소는 Scripting Agent cmdlet 확장 에이전트가 실행할 수 있는 모든 스크립트를 포함합니다. Feature 태그는 이 태그의 하위 태그입니다.

구성 파일당 Configuration 태그는 하나만 있습니다.

Feature

해당 없음

이 요소는 기능과 관련된 스크립트 집합을 포함합니다. ApiCall 하위 태그에 정의된 각 스크립트는 cmdlet 실행 파이프라인의 특정 부분을 확장합니다. 이 태그에는 NameCmdlets 특성이 포함됩니다.

Configuration 태그 하에 여러 Feature 태그가 있을 수 있습니다.

 

Name

이 특성은 기능의 이름을 포함합니다. 이 특성을 사용하면 태그에 포함된 스크립트에 의해 확장되는 기능을 식별할 수 있습니다.

 

Cmdlets

이 특성에는 이 기능 확장에 포함된 스크립트 집합이 사용될 Exchange cmdlet 목록이 포함됩니다. 각 cmdlet을 쉼표로 분리하여 여러 개의 cmdlet을 지정할 수 있습니다.

ApiCall

해당 없음

이 요소는 cmdlet 실행 파이프라인의 일부를 확장할 수 있는 스크립트를 포함합니다. 각 스크립트가 확장하는 cmdlet 실행 파이프라인에 포함된 API 호출 이름에 따라 스크립트가 정의됩니다. 다음은 확장 가능한 API 이름입니다.

  • ProvisionDefaultProperties

  • UpdateAffectedIConfigurable

  • Validate

  • OnComplete

 

Name

이 특성은 cmdlet 실행 파이프라인을 확장하는 API 호출의 이름을 포함합니다.

Common

해당 없음

이 요소는 구성 파일의 스크립트에서 사용할 수 있는 기능을 포함합니다.

모든 Exchange 2010 서버의 <installation path>\V14\Bin\CmdletExtensionAgents 폴더에는 ScriptingAgentConfig.xml.sample 파일이 포함됩니다. Scripting Agent cmdlet 확장 에이전트를 사용하도록 설정하는 경우에는 모든 Exchange 2010 서버에서 이 파일의 이름을 ScriptingAgentConfig.xml로 변경해야 합니다. 예제 구성 파일에는 구성 파일에 스크립트를 추가하는 방법을 이해하는 데 도움이 되는 예제 스크립트가 들어 있습니다.

스크립트를 구성 파일에 추가한 후 또는 구성 파일을 변경한 경우에는 조직의 모든 Exchange 2010 서버에서 파일을 업데이트해야 합니다. 이것은 각 서버가 Scripting Agent cmdlet 확장 에이전트가 실행하는 스크립트의 최신 버전을 포함하도록 하기 위해서입니다.

스크립트에 기본적으로 사용되는 일부 문자가 XML에서는 특별한 의미를 갖기도 합니다. 이러한 문자를 스크립트에 사용하려면 이스케이프 시퀀스를 사용하십시오. 예를 들어, 다음 문자는 이스케이프 시퀀스를 사용합니다.

  • 보다 큼 기호( > ) 대신 &gt; 사용

  • 보다 작음 기호( < ) 대신 $lt; 사용

  • 앰퍼샌드( & ) 대신 &amp; 사용

맨 위로 이동

스크립팅 에이전트 사용 설정

Scripting Agent cmdlet 확장 에이전트는 기본적으로 사용하지 않도록 설정되어 있습니다. 스크립팅 에이전트를 사용하도록 설정하면 전체 Exchange 2010 조직에 대해 에이전트가 사용됩니다. Scripting Agent를 사용하도록 설정하기 전에 모든 Exchange 2010 서버에서 Scripting Agent 구성 파일의 이름을 올바로 변경하고 스크립트를 사용하여 업데이트했는지 확인합니다. 구성 파일의 이름을 올바로 변경하지 않은 경우에는 cmdlet을 실행할 때마다 오류 메시지가 나타납니다.

스크립팅 에이전트를 사용하도록 설정하려면 다음을 수행해야 합니다.

  1. 조직의 모든 Exchange 2010 서버에서 <installation path>\V14\Bin\CmdletExtensionAgents의 ScriptingAgentConfig.xml.sample 파일 이름을 ScriptingAgentConfig.xml로 변경합니다.

    참고

    한 Exchange 2010 서버의 구성 파일을 다른 Exchange 2010 서버로 복사할 수 있습니다. 구성 파일을 복사하기 전에 먼저 업데이트해야 합니다.

  2. 조직의 모든 Exchange 2010 서버에서 이름을 변경한 구성 파일에 스크립트를 추가합니다. 

  3. Scripting Agent cmdlet 확장 에이전트를 사용하도록 설정합니다. cmdlet 확장 에이전트 사용 설정에 대한 자세한 내용은 Cmdlet 확장 에이전트 사용을 참조하십시오.

맨 위로 이동

에이전트 우선 순위

기본적으로 Scripting Agent cmdlet 확장 에이전트는 관리 감사 로그 에이전트를 제외한 다른 모든 에이전트 이후에 실행됩니다. 새로 만든 스크립트가 기존의 에이전트를 대체하도록 하려면 다른 에이전트를 사용하지 않도록 설정하거나 다른 에이전트의 우선 순위를 변경하여 Scripting Agent cmdlet 확장 에이전트가 먼저 실행되도록 해야 합니다. 에이전트를 사용하지 않도록 설정하는 방법이나 에이전트의 우선 순위를 변경하는 방법에 대한 자세한 내용은 다음 항목을 참조하십시오.

맨 위로 이동