다음을 통해 공유


Active Manager 이해

마지막으로 수정된 항목: 2010-01-13

Microsoft Exchange Server 2010에는 Active Manager라는 새로운 구성 요소가 포함됩니다. 이 구성 요소는 이전 버전의 Exchange에서 클러스터 서비스와의 통합을 통해 제공된 리소스 모델 및 장애 조치(failover) 관리 기능을 대체하는 기능을 제공합니다. Exchange는 고가용성을 위해 더 이상 클러스터 리소스 모델을 사용하지 않습니다. 클러스터된 사서함 서버라는 구조를 포함하여 exres.dll에서 제공했던 모든 Exchange 클러스터 리소스는 더 이상 존재하지 않습니다. Windows 장애 조치(failover) 클러스터는 Exchange에서 사용되지만 Exchange에 대한 클러스터 그룹은 없으며 클러스터에 저장소 리소스도 없습니다. 따라서 클러스터 관리 도구를 사용하여 클러스터를 검사하면 중요 클러스터 리소스(IP 주소와 네트워크 이름, 그리고 필요한 경우 쿼럼 리소스)만 볼 수 있습니다. 클러스터 노드 및 네트워크도 존재하지만 이는 클러스터나 클러스터 도구가 아닌 Exchange에 의해 관리됩니다.

Active Manager는 DAG(데이터베이스 가용성 그룹)의 구성원인 모든 사서함 서버에서 실행됩니다. Active Manager 역할은 PAM(Primary Active Manager)과 SAM(Standby Active Manager), 두 가지입니다. PAM은 활성 및 수동 복사본을 결정하는 DAG의 Active Manager입니다. PAM은 토폴로지 변경 알림을 가져오고 서버 오류에 대처하는 역할을 담당합니다. PAM 역할을 맡은 DAG 구성원은 항상 현재 클러스터 쿼럼 리소스(기본 클러스터 그룹)를 소유한 구성원입니다. 클러스터 쿼럼 리소스를 소유한 서버에 오류가 발생하면 PAM 역할은 클러스터 쿼럼 리소스 소유권을 취하는 남은 서버로 자동으로 이동됩니다. 또한 유지 관리 또는 업그레이드를 위해 클러스터 쿼럼 리소스를 호스팅하는 서버를 오프라인으로 전환해야 하는 경우 먼저 PAM을 DAG의 다른 서버로 옮겨야 합니다. PAM은 데이터베이스 복사본 간의 모든 활성 지정 이동을 제어합니다(항상 하나의 복사본만 활성 상태일 수 있으며, 이 복사본은 탑재 또는 분리될 수 있음). PAM은 로컬 시스템에서 SAM 역할의 기능도 수행합니다(로컬 데이터베이스 및 로컬 정보 저장소 오류 검색).

SAM은 사서함 데이터베이스의 활성 복사본을 Active Manager 클라이언트 구성 요소를 실행하는 다른 Exchange 구성 요소에 호스팅하는 서버에 대한 정보를 제공합니다(예: RPC 클라이언트 액세스 서비스 또는 허브 전송 서버). SAM은 로컬 정보 저장소 및 로컬 데이터베이스의 오류를 검색합니다. SAM은 오류에 대처하기 위해 PAM에 장애 조치(failover)를 시작하도록 요청합니다(데이터베이스가 복제되는 경우). SAM은 장애 조치(failover)의 대상을 결정하지 않고, PAM의 데이터베이스 위치 상태도 업데이트하지 않습니다. SAM은 수신하는 활성 데이터베이스 복사본에 대한 쿼리에 응답하기 위해 활성 데이터베이스 복사본 위치 상태에 액세스합니다.

참고

Exchange 2010은 클러스터된 응용 프로그램이 아니며 대신 클러스터, 그룹, 클러스터 네트워크(하트비트), 노드 관리, 클러스터 레지스트리를 위해 clusapi.dll에 구현된 클러스터 라이브러리 기능과 몇 가지 제어 코드 기능을 사용합니다. 또한 Active Manager는 클러스터 데이터베이스에 현재 사서함 데이터베이스 정보를 저장합니다(예: 활성 및 수동 데이터, 탑재된 데이터) 이 정보는 클러스터 데이터베이스에 직접 저장되지만 다른 구성 요소에 의해 직접 액세스되지는 않습니다.

Exchange 2010에서 Microsoft Exchange Replication Service는 탑재된 모든 데이터베이스의 상태를 주기적으로 모니터링합니다. 또한 ESE(Extensible Storage Engine)에서 I/O 오류 또는 장애도 모니터링합니다. 오류가 발견되면 Active Manager에 이를 알립니다. 그러면 Active Manager는 탑재해야 할 데이터베이스 복사본과 이 데이터베이스를 탑재하기 위해 필요한 요소를 결정합니다. 또한 마지막으로 탑재된 데이터베이스 복사본을 바탕으로 사서함 데이터베이스의 활성 복사본을 추적하고, 클라이언트가 연결되는 클라이언트 액세스 서버의 RPC 클라이언트 액세스 구성 요소에 이 추적 결과를 제공합니다.

데이터베이스 장애 조치(failover)

복제되는 사서함 데이터베이스에 영향을 미치는 오류가 발생하면 PAM은 장애 조치(failover) 논리를 시작하고 활성화에 가장 적합한 사용 가능한 데이터베이스 복사본을 선택합니다. PAM은 활성화하기에 가장 적합한 복사본을 찾을 때 최대 10개의 개별 조건 집합을 사용합니다. PAM이 선택 조건을 사용하여 활성화하기에 가장 적합한 복사본을 찾기 전에 ACLL(Attempt Copy Last Logs)이라는 프로세스가 수행됩니다. Exchange 2010은 여러 데이터베이스 복사본을 처리하도록 향상되었으며, 로그 파일 복사의 원본으로 사용하기에 가장 적합한 복사본을 판별합니다. ACLL은 사서함 데이터베이스 복사본을 호스팅하는 DAG의 각 사서함 서버에 대해 병렬 원격 프로시저 호출을 수행하여 서버의 가용성과 상태에 문제가 없는지 확인하고 데이터베이스 복사본에 대한 LogInspectorGeneration 값을 검사합니다. LogInspectorGeneration 값이 가장 큰 사서함 데이터베이스 복사본이 로그 파일 복사를 위한 원본으로 사용하기에 가장 적합합니다.

ACLL 프로세스가 완료된 후 선택된 최적의 원본에서 모든 누락된 로그 파일이 복사되면 데이터베이스는 데이터 손실 없이 탑재됩니다. 이를 무손실 오류라고 합니다. ACLL 프로세스가 실패하는 경우 AutoDatabaseMountDial에 대해 구성된 값이 참조됩니다. AutoDatabaseMountDial에 대한 자세한 내용은 Set-MailboxServer를 참조하십시오. 손실된 로그의 수가 AutoDatabaseMountDial에 대해 구성된 값 내에 있으면 데이터베이스가 탑재됩니다. 손실된 로그의 수가 AutoDatabaseMountDial에 대해 구성된 값을 벗어나면 누락된 로그 파일이 복구되거나 관리자가 명시적으로 데이터베이스를 탑재하고 더 큰 데이터 손실을 수락할 때까지 데이터베이스는 탑재되지 않습니다.

Active Manager 최적 복사본 선택

활성 데이터베이스에 영향을 미치는 오류가 발생하는 경우 Active Manager는 여러 선택 조건 집합을 사용하여 활성화할 데이터베이스 복사본을 결정합니다. Active Manager는 상태가 Healthy, DisconnectedAndHealthy, DisconnectedAndResynchronizing 또는 SeedingSource이며 다음 조건을 모두 충족하는 사서함 데이터베이스 복사본을 찾습니다.

  • 상태가 Healthy이며 콘텐츠 인덱스가 있음
  • 복사 큐 길이가 로그 파일 10개 미만임
  • 재생 큐 길이가 로그 파일 50개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Crawling이며 콘텐츠 인덱스가 있음
  • 복사 큐 길이가 로그 파일 10개 미만임
  • 재생 큐 길이가 로그 파일 50개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Healthy이며 콘텐츠 인덱스가 있음
  • 재생 큐 길이가 로그 파일 50개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Crawling이며 콘텐츠 인덱스가 있음
  • 재생 큐 길이가 로그 파일 50개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 재생 큐 길이가 로그 파일 50개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Healthy이며 콘텐츠 인덱스가 있음
  • 복사 큐 길이가 로그 파일 10개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Crawling이며 콘텐츠 인덱스가 있고,
  • 복사 큐 길이가 로그 파일 10개 미만임

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Healthy이며 콘텐츠 인덱스가 있음

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 다음 조건 집합을 충족하는 데이터베이스 복사본을 찾습니다.

  • 상태가 Crawling이며 콘텐츠 인덱스가 있음

위의 조건을 모두 충족하는 데이터베이스 복사본이 없는 경우 Active Manager는 상태가 Healthy, DisconnectedAndHealthy, DisconnectedAndResynchronizing 또는 SeedingSource인 아무 데이터베이스 복사본이나 활성화합니다. 이 상태의 데이터베이스 복사본을 찾을 수 없는 경우 데이터베이스 복사본을 자동으로 활성화할 수 없습니다.

앞의 각 단계에서 둘 이상의 데이터베이스 복사본이 위 조건을 모두 충족하는 경우 ActivationPreference에 대해 구성된 값이 참조되고 값이 가장 작은 데이터베이스가 활성화 및 탑재됩니다.