관리되는 가용성

적용 대상: Exchange Server 2013 SP1

메시징 시스템 관리자의 기본적인 목표는 사용자에게 항상 효율적인 전자 메일 환경을 제공하는 것입니다. Microsoft Exchange Server 2013 조직의 가용성과 안정성을 보장하려면 시스템의 모든 측면을 적극적으로 모니터링하고 확인된 문제를 신속하게 해결해야 합니다. 이전 Exchange 버전에서는 중요 시스템 구성 요소를 모니터링할 때 대개 Microsoft System Center 2012 Operations Manager와 같은 외부 응용 프로그램을 사용하여 데이터를 수집한 다음 수집된 데이터 분석을 통해 확인된 문제에 대한 복구 작업을 제공했습니다. Exchange 2010 이하 버전에서는 상태 매니페스트 및 상관 관계 엔진이 관리 팩 형태로 포함되어 있었습니다. Operations Manager에서는 이러한 구성 요소를 통해 특정 구성 요소의 상태가 정상인지 여부를 확인했습니다. 또한 Operations Manager는 Exchange 2010에서 기본 제공되는 진단 cmdlet 인프라를 사용하여 다양한 시스템 측면에 대해 가상 트랜잭션을 실행했습니다.

Exchange 2013은 기본적으로 기본 제공 모니터링 및 복구 작업을 제공하는 관리되는 가용성 이라는 기능을 사용하여 최종 사용자 환경을 모니터링하고 보존하는 새로운 접근 방식을 사용합니다.

활성 모니터링 또는 로컬 활성 모니터링이라고도 하는 관리되는 가용성은 Exchange 고가용성 플랫폼과 기본 제공 모니터링 및 복구 작업의 통합입니다. 이 기능은 문제가 발생하여 시스템에서 검색되면 바로 복구를 진행하도록 설계되었습니다. 이전의 Exchange용 외부 모니터링 솔루션 및 기술과 달리, 관리되는 가용성은 문제의 근본 원인을 식별하고 전달하려고 하지 않습니다. 대신, 사용자 환경의 세 가지 주요 영역을 해결하는 복구 측면에 중점을 둡니다.

  • 가용성: 사용자가 서비스에 액세스할 수 있나요?
  • 대기 시간: 사용자의 환경은 어떻게 합니까?
  • 오류: 사용자가 원하는 것을 수행할 수 있나요?

Exchange 2013에서는 서버 역할이 통합되고 아키텍처의 기타 측면이 변경되어 이전 Exchange 버전에서 사용되었던 모니터링 방법 및 상태 모델과는 다른 새로운 방식이 필요합니다. 관리되는 가용성은 기본적인 상태 모니터링 및 복구 솔루션을 제공하여 이와 같이 변경된 아키텍처의 문제를 처리하도록 설계되었습니다. 관리되는 가용성은 개별 시스템 부분의 모니터링 방식을 종단 간 사용자 환경 모니터링 방식으로 전환하며, 복구 지향 작업을 통해 최종 사용자 환경을 보호합니다.

관리되는 가용성은 모든 Exchange 2013 서버에서 실행되는 내부 프로세스입니다. 이 프로세스에서는 초당 수백 개의 상태 메트릭을 폴링 및 분석합니다. 잘못된 항목이 발견되면 대부분의 경우에는 자동으로 수정됩니다. 그러나 관리되는 가용성이 자체적으로 수정할 수 없는 문제도 발생합니다. 이러한 경우 관리되는 가용성은 이벤트 로깅을 통해 해당 문제를 관리자에게 에스컬레이션합니다.

관리되는 가용성은 다음의 두 서비스 형식으로 구현됩니다.

  • Exchange Health Manager 서비스(MSExchangeHMHost.exe): 이 서비스는 작업자 프로세스를 관리하는 데 사용되는 컨트롤러 프로세스입니다. 필요에 따라 작업자 프로세스를 작성, 실행, 시작 및 중지하는 데 사용됩니다. 프로세스의 작동이 실패할 경우 단일 실패 지점이 되지 않도록 작업자 프로세스를 복구하는 데도 사용됩니다.

  • Exchange Health Manager 작업자 프로세스(MSExchangeHMWorker.exe): 이 서비스는 관리되는 가용성 프레임워크 내에서 런타임 작업을 수행하는 작업자 프로세스입니다.

관리되는 가용성의 기능은 영구 저장소를 사용하여 수행됩니다.

  • \bin\Monitoring\config 폴더의 XML 파일은 일부 프로브 및 모니터 작업 항목의 구성 설정을 저장하는 데 사용됩니다.
  • Active Directory는 전역 재정의를 저장하는 데 사용됩니다.
  • Windows 레지스트리는 책갈피 및 로컬(서버별) 재정의와 같은 런타임 데이터를 저장하는 데 사용됩니다.
  • Windows 크림슨 채널 이벤트 로그 인프라는 작업 항목 결과를 저장하는 데 사용됩니다.
  • 상태 사서함은 프로브 활동에 사용됩니다. 서버의 각 사서함 데이터베이스에 대해 여러 상태 사서함이 만들어집니다.

다음 그림에 나와 있는 것처럼 관리되는 가용성은 계속해서 작업을 수행하는 세 가지 주요 비동기 구성 요소를 포함합니다.

Exchange Server 2013의 관리 가용성.

첫 번째 구성 요소를 프로브라고 합니다. 프로브는 서버에서 측정을 수행하고 데이터를 수집해야 합니다. 이러한 측정의 결과는 두 번째 구성 요소인 모니터로 흐릅니다. 모니터에는 수집된 데이터에서 정상으로 간주되는 항목에 따라 시스템에서 사용하는 모든 비즈니스 논리가 포함됩니다. 패턴 인식 엔진과 마찬가지로 모니터는 수집된 모든 측정값에서 다양한 패턴을 찾은 다음, 정상으로 간주되는지 여부를 결정합니다. 마지막으로 복구 및 에스컬레이션 작업을 담당하는 응답자가 있습니다. 비정상 상태인 경우 첫 번째 작업은 해당 구성 요소를 복구하는 것입니다. 이 복구 작업에는 다단계 복구 작업이 포함될 수 있습니다. 예를 들어 첫 번째 시도는 애플리케이션 풀을 다시 시작하는 것일 수 있고, 두 번째는 서비스를 다시 시작하는 것일 수 있고, 세 번째 시도는 서버를 다시 시작하는 것일 수 있으며, 후속 시도는 더 이상 트래픽을 허용하지 않도록 서버를 오프라인으로 전환하려는 것일 수 있습니다. 복구 작업이 실패하면 시스템은 이벤트 로그 알림을 통해 인간에게 문제를 에스컬레이션합니다.

프로브에는 되풀이 프로브, 알림 및 검사의 세 가지 기본 범주가 있습니다. 되풀이 프로브는 종단 간 사용자 환경을 테스트하기 위해 시스템에서 수행하는 가상 트랜잭션입니다. 검사는 사용자 트래픽을 포함하여 성능 데이터 수집을 수행하고 사용자 오류 급증을 확인하기 위해 설정된 임계값에 대해 수집된 데이터를 측정하는 인프라입니다. 이 측정 기능을 사용하면 사용자가 문제가 발생할 때 검사 인프라를 인식할 수 있습니다. 마지막으로 알림 논리는 프로브에 의해 수집된 데이터의 결과를 기다리지 않고도 시스템이 중요 이벤트를 기반으로 즉시 조치를 취할 수 있도록 합니다. 이러한 예외 또는 조건은 큰 샘플 집합 없이 검색 및 인식할 수 있습니다.

되풀이 프로브는 몇 분마다 실행되며 서비스 상태의 일부 측면을 확인합니다. 이러한 프로브는 Exchange ActiveSync 통해 이메일을 모니터링 사서함으로 전송하거나, RPC 엔드포인트에 연결하거나, 클라이언트 액세스-사서함 연결을 확인할 수 있습니다.

모든 프로브는 Microsoft.Exchange.ActiveMonitoring\ProbeDefinition 진홍 채널의 Health Manager 서비스 시작 시 정의됩니다. 각 프로브 정의에는 많은 속성이 있지만 가장 관련성이 큰 속성은 다음과 같습니다.

  • 이름: 프로브의 모니터의 SampleMask 로 시작하는 프로브의 이름입니다.
  • TypeName: 프로브의 논리를 포함하는 프로브의 코드 개체 형식입니다.
  • ServiceName: 이 프로브를 포함하는 상태 집합의 이름입니다.
  • TargetResource: 프로브가 유효성을 검사하는 개체입니다. 이 속성 이름은 프로브 결과 ResultName이 되도록 실행될 때 프로브의 이름에 추가됩니다.
  • RecurrenceIntervalSeconds: 프로브가 실행되는 빈도입니다.
  • TimeoutSeconds: 프로브가 실패하기 전에 대기하는 시간입니다.

수백 개의 되풀이 프로브가 있습니다. 이러한 프로브의 대부분은 데이터베이스당이므로 데이터베이스 수가 증가함에 따라 프로브 수도 증가합니다. 대부분의 프로브는 코드에 정의되므로 직접 검색할 수 없습니다.

되풀이 프로브의 기본 사항은 다음과 같습니다. 모든 RecurrenceIntervalSeconds를 시작하고 상태의 일부 측면을 확인(또는 프로브)합니다. 구성 요소가 정상인 경우 프로브는 ResultType 이 3인 Microsoft.Exchange.ActiveMonitoring\ProbeResult 채널에 정보 이벤트를 전달하고 씁니다. 검사가 실패하거나 시간이 초과되면 프로브가 실패하고 동일한 채널에 오류 이벤트를 씁니다. ResultType이 4이면 검사가 실패하고 ResultType이 1이면 시간이 초과되었음을 의미합니다. 시간이 초과되면 MaxRetryAttempts 속성 값까지 많은 프로브가 다시 실행됩니다.

참고

ProbeResult 진홍색 채널은 몇 분마다 실행되고 이벤트를 로깅하는 수백 개의 프로브로 매우 바쁠 수 있으므로 프로덕션 환경에서 이벤트 로그에 대해 값비싼 쿼리를 시도하는 경우 Exchange 서버의 성능에 실질적인 영향을 미칠 수 있습니다.

알림은 상태 관리자 프레임워크에서 실행되지 않고 서버의 다른 서비스에서 실행되는 프로브입니다. 이러한 서비스는 자체 모니터링을 수행한 다음 프로브 결과를 직접 작성하여 관리되는 가용성 프레임워크에 데이터를 공급합니다. 이 채널은 관리되는 가용성 프레임워크에서 실행할 프로브만 설명하므로 ProbeDefinition 채널에는 이러한 프로브가 표시되지 않습니다. 예를 들어 ServerOneCopyMonitor 모니터는 MSExchangeDAGMgmt 서비스에서 작성한 프로브 결과에 의해 트리거됩니다. 이 서비스는 자체 모니터링을 수행하고, 문제가 있는지 여부를 확인하고, 프로브 결과를 기록합니다. 대부분의 알림 프로브에는 모니터를 비정상으로 만드는 빨간색 이벤트와 모니터를 다시 정상 상태로 만드는 녹색 이벤트를 모두 기록할 수 있는 기능이 있습니다.

검사는 성능 카운터가 정의된 임계값을 초과하거나 초과하는 경우에만 이벤트를 기록하는 프로브입니다. 서버의 성능 카운터를 모니터링하고 구성된 임계값이 충족되면 ProbeResult 채널에 이벤트를 로깅하는 서비스가 있기 때문에 실제로 알림 프로브의 특별한 경우입니다.

비정상으로 간주되는 카운터 및 임계값을 찾으려면 모니터에서 이 검사를 확인할 수 있습니다. Microsoft.Office.Datacenter.ActiveMonitoring.OverallConsecutiveSampleValueAboveThresholdMonitor 또는 Microsoft.Office.Datacenter.ActiveMonitoring.OverallConsecutiveSampleValueBelowThresholdMonitor 형식의 모니터는 조사 중인 프로브가 검사 프로브임을 의미합니다.

모니터는 프로브에 수집된 데이터를 쿼리하여 미리 정의된 규칙 집합에 따라 조치를 취해야 하는지를 결정합니다. 규칙이나 문제의 특성에 따라, 모니터는 응답자를 시작하거나 이벤트 로그 항목을 통해 담당자에게 문제를 에스컬레이션할 수 있습니다. 또한 모니터는 실패 후 응답자가 실행되는 시간과 복구 작업의 워크플로를 정의합니다. 모니터는 다양한 상태를 갖습니다. 시스템 상태 관점에서 모니터는 다음 두 가지 상태로 존재합니다.

  • 정상: 모니터가 제대로 작동하고 수집된 모든 메트릭이 정상 작동 매개 변수 내에 있습니다.
  • 비정상: 모니터가 정상이 아니고 응답자를 통해 복구를 시작했거나 에스컬레이션을 통해 관리자에게 알렸습니다.

관리 관점에서 모니터에는 셸에 표시되는 더 많은 상태가 있습니다.

  • 저하됨: 모니터가 0초에서 60초까지 비정상 상태인 경우 성능 저하로 간주됩니다. 모니터가 60초를 넘게 비정상 상태이면 비정상 상태로 간주됩니다.
  • 사용 안 함: 관리자가 모니터를 명시적으로 사용하지 않도록 설정했습니다.
  • 사용할 수 없음: Microsoft Exchange Health 서비스는 각 모니터의 상태를 주기적으로 쿼리합니다. 쿼리에 응답하지 못하면 모니터 상태는 사용할 수 없음이 됩니다.
  • 복구: 관리자가 복구 상태를 설정하여 수정 작업이 인간에 의해 처리 중임을 시스템에 나타내며, 이를 통해 시스템과 사람이 동시에 발생할 수 있는 다른 오류(예: 데이터베이스 복사 다시 저장 작업)를 구분할 수 있습니다.

모든 모니터에는 해당 정의에 SampleMask 속성이 있습니다. 모니터가 실행되면 ProbeResult 채널에서 모니터의 SampleMask와 일치하는 ResultName이 있는 이벤트를 찾습니다. 이러한 이벤트는 되풀이 프로브, 알림 또는 검사에서 발생할 수 있습니다. 모니터의 임계값이 달성되면 비정상 상태가 됩니다. 모니터의 관점에서 세 가지 프로브 유형은 각각 ProbeResult 채널에 로그하는 것과 동일합니다.

단일 프로브 오류가 서버에 문제가 있음을 반드시 나타내는 것은 아닙니다. 수정이 필요한 실제 문제가 있는 경우를 올바르게 식별하는 것은 모니터의 디자인입니다. 따라서 많은 모니터에는 비정상 상태가 되기 전에 여러 프로브 오류의 임계값이 있습니다. 그럼에도 불구하고 이러한 문제의 대부분은 응답자가 자동으로 해결할 수 있으므로 수동 개입이 필요한 문제를 찾는 가장 좋은 곳은 Microsoft.Exchange.ManagedAvailability\모니터링 진홍색 채널에 있습니다. 이 채널에는 가장 최근의 프로브 오류가 포함됩니다.

이름에서 알 수 있듯이 응답자는 모니터에서 생성된 경고에 대한 일종의 응답을 실행합니다. 응답자는 애플리케이션 작업자 풀을 다시 시작하여 서버를 다시 시작하는 등 다양한 복구 작업을 수행합니다. 다음과 같은 여러 유형의 응답자가 있습니다.

  • 응답기 다시 시작: 서비스를 종료하고 다시 시작합니다.
  • AppPool 응답기 다시 설정: IIS(인터넷 정보 서비스)에서 애플리케이션 풀을 중지하고 다시 시작합니다.
  • 장애 조치(failover) 응답기: 데이터베이스 또는 서버 장애 조치(failover)를 시작합니다.
  • 버그 검사 응답자: 서버의 버그 검사를 시작하여 서버를 다시 부팅합니다.
  • 오프라인 응답기: 서버의 프로토콜을 서비스 외부로 전환합니다(클라이언트 요청 거부).
  • 온라인 응답기: 서버에 프로토콜을 프로덕션으로 다시 배치합니다(클라이언트 요청 수락).
  • 응답자 에스컬레이션: 이벤트 로깅을 통해 관리자에게 문제를 에스컬레이션합니다.

일부 구성 요소에는 위에 나와 있는 응답자 외에도 구성 요소별로 고유한 특수 응답자가 있습니다.

모든 응답자에는 응답기 작업을 제어하기 위한 기본 제공 시퀀싱 메커니즘을 제공하는 제한 동작이 포함됩니다. 제한 동작은 응답자 복구 작업으로 인해 시스템이 손상되거나 성능이 저하되지 않도록 하기 위한 것입니다. 모든 응답자는 특정 방식으로 제한됩니다. 제한이 수행되면 응답자 작업에 따라 응답자 복구 작업이 지연되거나 작업 자체를 건너뛸 수 있습니다. 예를 들어 버그 확인 응답자가 제한되면 해당 작업은 지연되지 않고 작업 자체를 건너뜁니다.

상태 집합

보고 측면에서 볼 때 관리되는 가용성에는 두 가지 상태 보기(내부/외부)가 있습니다. 내부 보기는 상태 집합을 사용합니다. Outlook Web App, Exchange ActiveSync, 정보 저장소 서비스, 콘텐츠 인덱싱, 전송 서비스 등 Exchange 2013의 각 구성 요소는 프로브, 모니터 및 응답자를 사용하여 관리되는 가용성을 통해 모니터링됩니다. 지정된 구성 요소에 대한 프로브, 모니터 및 응답자 그룹을 상태 집합이라고 합니다. 즉, 상태 집합은 해당 구성 요소가 정상 상태인지를 확인하는 프로브, 모니터 및 응답자의 그룹입니다. 상태 집합의 현재 상태(예: 정상 상태인지 비정상 상태인지 여부)는 상태 집합의 모니터 상태를 사용하여 결정됩니다. 상태 집합의 모든 모니터가 정상 상태이면 해당 상태 집합도 정상 상태입니다. 모니터 중 하나라도 정상 상태가 아니면 상태 집합의 상태는 상태가 가장 좋지 않은 모니터에 의해 결정됩니다.

서버 상태 또는 상태 집합 상태를 보는 자세한 단계는 상태 집합 및 서버 상태 관리를 참조하세요.

상태 그룹

관리되는 가용성의 외부 보기는 상태 그룹으로 구성됩니다. 상태 그룹은 System Center Operations Manager 2007 R2 및 System Center Operations Manager 2012를 통해 표시됩니다.

기본 상태 그룹은 다음의 4가지입니다.

  • 고객 터치 포인트: 프로토콜 또는 정보 저장소와 같은 실시간 사용자 상호 작용에 영향을 주는 구성 요소
  • 서비스 구성 요소: Microsoft Exchange 사서함 복제 서비스 또는 OABGen(오프라인 주소록 생성 프로세스)과 같은 직접적이고 실시간 사용자 상호 작용이 없는 구성 요소
  • 서버 구성 요소: 디스크 공간, 메모리 및 네트워킹과 같은 서버의 물리적 리소스
  • 종속성 가용성: Active Directory, DNS 등과 같은 필요한 종속성에 액세스하는 서버의 기능입니다.

Exchange 관리 팩이 설치되면 SCOM(System Center Operations Manager)은 Exchange 환경과 관련된 정보를 보기 위한 상태 포털 역할을 합니다. SCOM 대시보드에는 Exchange 서버 상태의 3개 보기가 포함되어 있습니다.

  • 활성 경고: 에스컬레이션 응답자는 SCOM 내에서 모니터에서 사용하는 Windows 이벤트 로그에 이벤트를 씁니다. 이러한 이벤트는 활성 경고 보기에서 경고로 표시됩니다.
  • 조직 상태: Exchange 조직 상태의 전반적인 상태에 대한 롤업 요약이 이 보기에 표시됩니다. 이러한 롤업에는 개별 데이터베이스 가용성 그룹의 상태와 특정 Active Directory 사이트 내의 상태가 표시됩니다.
  • 서버 상태: 관련 상태 집합이 상태 그룹으로 결합되고 이 보기에 요약되어 있습니다.

재정의

관리자는 재정의 기능을 사용하여 관리되는 가용성 프로브, 모니터 및 응답자의 일부 측면을 구성할 수 있습니다. 재정의를 통해 관리되는 가용성에서 사용되는 일부 임계값을 미세 조정할 수 있습니다. 또한 기본 제공되는 기본값과는 다른 구성 설정을 사용해야 할 수도 있는 예기치 않은 이벤트에 대해 긴급 작업을 수행하도록 설정할 수도 있습니다.

재정의를 만들어 단일 서버(이 프로세스를 서버 재정의라고 함)에 적용하거나 서버 그룹에 적용할 수 있습니다(이 프로세스를 전역 재정의라고 함). 서버 재정의 구성 데이터는 재정의가 적용되는 서버의 Windows 레지스트리에 저장됩니다. 전역 재정의 구성 데이터는 Active Directory에 저장됩니다.

재정의는 무기한으로 적용되도록 구성할 수도 있고 특정 기간에만 적용되도록 구성할 수도 있습니다. 또한 전역 재정의가 모든 서버에 적용되거나 특정 Exchange 버전을 실행 중인 서버에만 적용되도록 구성할 수도 있습니다.

재정의를 구성해도 즉시 적용되지는 않습니다. Microsoft Exchange Health Manager Service는 10분마다 업데이트된 구성 데이터를 확인합니다. 또한 전역 재정의는 Active Directory 목제 대기 시간에 따라서도 달라집니다.

서버 또는 전역 재정의를 보거나 구성하는 자세한 단계는 관리되는 가용성 재정의 구성을 참조하세요.

관리 작업 및 cmdlet

관리자는 관리되는 가용성과 관련하여 대개 다음의 세 가지 기본 운영 작업을 수행합니다.

  • 시스템 상태 추출 또는 보기
  • 상태 집합 및 프로브/모니터/응답자 세부 정보 보기
  • 재정의 관리

관리되는 가용성에 기본적으로 사용되는 두 가지 관리 도구는 Windows 이벤트 로그 및 셸입니다. 관리되는 가용성은 Exchange ActiveMonitoring 및 ManagedAvailability 크림슨 채널 이벤트 로그에 다음과 같은 많은 정보를 기록합니다.

  • 각 *정의 이벤트 로그에 기록되는 프로브, 모니터 및 응답기 정의입니다.
  • 프로브, 모니터 및 응답기 결과이며, 각 *결과 이벤트 로그에 기록됩니다.
  • 복구 작업 시작 시간과 작업이 완료된 것으로 간주된 시간(성공 여부는 관계없음)을 포함하는, RecoveryActionResults 이벤트 로그에 기록되는 응답자 복구 작업 관련 세부 정보

다음 표에서는 관리되는 가용성에 사용되는 12개 cmdlet에 대해 설명합니다.

Cmdlet 설명
Get-ServerHealth 상태 집합 및 현재 상태(정상 또는 비정상), 상태 집합 모니터, 서버 구성 요소, 프로브의 대상 리소스, 프로브 또는 모니터 시작 또는 중지 시간과 관련된 타임스탬프, 상태 전환 시간과 같은 원시 서버 상태 정보를 가져오는 데 사용됩니다.
Get-HealthReport 상태 집합 및 현재 상태를 포함하는 요약 상태 보기를 가져오는 데 사용됩니다.
Get-MonitoringItemIdentity 특정 상태 집합과 연결된 프로브, 모니터 및 응답자를 보는 데 사용됩니다.
Get-MonitoringItemHelp 프로브, 모니터 및 응답자의 일부 속성에 대한 설명을 보는 데 사용됩니다.
Add-ServerMonitoringOverride 프로브, 모니터 또는 응답자의 로컬 서버별 재정의를 만드는 데 사용됩니다.
Get-ServerMonitoringOverride 지정된 서버에서 로컬 재정의 목록을 보는 데 사용됩니다.
Remove-ServerMonitoringOverride 특정 서버에서 로컬 재정의를 제거하는 데 사용됩니다.
Add-GlobalMonitoringOverride 서버 그룹에 대한 전역 재정의를 만드는 데 사용됩니다.
Get-GlobalMonitoringOverride 조직에서 구성된 전역 재정의 목록을 보는 데 사용됩니다.
Remove-GlobalMonitoringOverride 전역 재정의를 제거하는 데 사용됩니다.
Set-ServerComponentState 하나 이상의 서버 구성 요소의 상태를 구성하는 데 사용됩니다.
Get-ServerComponentState 하나 이상의 서버 구성 요소의 상태를 보는 데 사용됩니다.