Exchange 2010 SP2 RU3의 복구 가능한 항목 버전 관리 변경 내용


최초 문서 게시일: 2012년 6월 1일 금요일

지난 몇 개월 동안 복구 가능한 항목 폴더(대부분의 사용자는 휴지통이라고 하지만 해당 용어는 더 이상 사용되지 않음)가 너무 커진다는 보고를 여러 건 받았습니다. 이와 같은 과도한 크기 증가의 원인이 될 수 있는 주요 시나리오는 다음의 두 가지입니다.

  1. 단일 항목 복구 및 소송 보존 버전 관리
  2. 일정 버전 로깅

단일 항목 복구 및 소송 보존

단일 항목 복구 및 소송 보존을 통해 사서함 내의 데이터를 보존할 수 있습니다. 이러한 기능에 대해 잘 모르는 경우 저의 이전 게시물인 Exchange 2010의 단일 항목 복구(영문일 수 있음)에서 자세한 내용을 확인할 수 있습니다.

단일 항목 복구와 소송 보존을 사용하면 사서함 내의 데이터를 보존할 수 있을 뿐 아니라 버전도 관리할 수 있습니다. 기본적으로 항목이 변경되면 COW(기록 중 복사)가 수행되어 항목의 원본 버전을 보존합니다. 원본 항목은 복구 가능한 항목\버전 폴더에 저장됩니다. 이 폴더는 사용자에게 표시되지 않습니다.

Exchange 2010에서는 클라이언트가 사서함 관련 데이터에 연결 및 액세스하는 방법이 변경되어, 기록 중 복사 작업이 클라이언트 액세스 서버의 XSO(Exchange System Objects) 계층에서 수행됩니다.

기록 중 복사를 트리거하는 항목

  • 메시지 및 게시물(IPM.Note*IPM.Post*)에서는 기록 중 복사를 통해 제목, 본문, 첨부 파일, 보낸 사람/받는 사람 및 보낸 날짜/받은 날짜의 변경 내용을 캡처합니다.
  • 다른 유형의 항목에서는 기록 중 복사를 통해 폴더 간 이동을 제외한 모든 항목 변경 내용 및 읽음/읽지 않음 상태 변경 내용을 캡처합니다.
  • 초안은 자동 저장 시 복사본 수가 과도하게 많아지는 현상을 방지하기 위해 기록 중 복사에서 제외됩니다.

복구 가능한 항목 폴더의 크기를 과도하게 증가시킬 수 있는 원인

쓰레기가-넘치는-휴지통_축소판[1]기록 중 복사 동작으로 인해 복구 가능한 항목 폴더가 매우 커질 수 있습니다. 기록 중 복사가 과도하게 수행될 수 있는 가장 큰 원인으로는 Microsoft Outlook을 사용하는 다음과 같은 시나리오를 들 수 있습니다.

  1. 일정 약속을 만듭니다.
  2. 약속에 Office 문서를 첨부하여 저장합니다.
  3. 나중에 약속을 열어 Office 문서의 특정 내용을 참조하려고 문서를 엽니다.
  4. Outlook이 백그라운드에서 이 열린 약속 및 해당하는 열린 문서의 자동 저장을 시작합니다(기본 자동 저장 빈도: 3분).
  5. 각 자동 저장 이벤트가 기록 중 복사를 트리거합니다. 그러나 자동 저장이 수행되면 Office 문서와 약속이 모두 저장되므로 기록 중 복사 이벤트가 2개 생성됩니다. 또한 각각의 추가 첨부 파일에 대해 후속 기록 중 복사 버전이 만들어집니다.

기록 중 복사는 이러한 방식으로 진행됩니다.

첨부 파일은 메시지의 일부분이므로 항목의 모든 첨부 파일에 대해 복사본이 만들어지는 것은 아닙니다. 기본적으로 첨부 파일이 있는 항목을 저장하면 Outlook에서는 다음을 수행합니다.

  1. CreateAttachment
  2. SaveAttachment
  3. SaveMessage

위 시나리오에서 기록 중 복사는 SaveAttachmentSaveMessage에서 모두 수행됩니다. 코드를 살펴보면 SaveAttachment를 호출하는 경우 최종적으로는 첨부 파일이 저장된 후 첨부 파일이 연결된 메시지에 대해 Flush 메서드(클라이언트가 서버와 상태를 동기화하는 데 사용함)가 호출됨을 확인할 수 있습니다. 이 Flush 호출을 통해 기록 중 복사 코드가 작동합니다.

추가적인 분석 결과 기록 중 복사 논리는 ‘모든’ Flush 호출에서 트리거됨이 확인되었습니다. Flush는 다양한 시나리오에서 시작될 수 있으므로 이는 중요한 발견이라 할 수 있습니다. 많은 고객이 작업 환경에서 이미 경험한 것처럼, 이로 인해 매우 많은 기록 중 복사 이벤트가 생성될 수 있기 때문입니다.

Exchange 2010 SP2 RU3 이상에서는 기록 중 복사가 Flush와 Save 작업 간의 차이를 이해하여 Save 작업 수행 시에만 트리거됩니다.

일정 버전 로깅

일정 버전 로깅은 사서함 내에서 수행되는 일정 변경 내용이 기록 중 복사를 통해 저장되는 프로세스입니다. 일정 버전 로깅은 일정 안정성 문제를 해결 및 복구하기 위해 Exchange 2010에 도입되었습니다.

일정 버전 로깅은 일정 항목을 변경할 때마다 로그를 만들도록 설계되었습니다. 이러한 로그에서는 모임의 기록을 제공합니다. Get-CalendarDiagnosticLog cmdlet을 사용하여 기록을 검토하고 삭제 작업을 수행한 클라이언트를 확인할 수 있습니다. 또한 일정 복구 도우미에서도 일정 버전 로깅이 사용됩니다. 일정 복구 도우미는 불일치 검색을 위해 지정된 일정 항목 기록을 확인할 때 로그를 사용합니다.

Exchange 2010에서는 사서함에 대해 일정 버전 로깅이 기본적으로 사용하도록 설정됩니다. CalendarVersionStoreDisabled 속성을 통해 사서함에 대해 일정 버전 로깅을 사용하거나 사용하지 않도록 설정할 수 있습니다. 보시다시피 이 속성의 이름은 CalendarVersionStoreDisabled이므로 기본값인 $false를 사용하는 경우 일정 버전 로깅이 기본적으로 사용하도록 설정됩니다. 사서함 구성에 따라서는 다음과 같이 다른 프로세스를 수행하여 일정 항목의 복사본을 저장합니다.

  1. 사서함이 단일 항목 복구 또는 소송 보존용으로 사용하도록 설정되어 있지 않은 경우에는 일정 항목의 스트립된 버전이 복구 가능한 항목 폴더 루트에 120일 동안 보관됩니다. 기록 중 복사를 통해 스트립된 버전(본문과 첫 번째 수준 또는 포함된 메시지 유형이 아닌 첨부 파일이 제거된 버전)이 작성됩니다.
  2. 사서함이 단일 항목 복구 또는 소송 보존용으로 사용하도록 설정된 경우에는 일정 항목의 전체 복사본이 복구 가능한 항목\삭제 또는 복구 가능한 항목\버전 폴더에 보관됩니다. 복구 가능한 항목\삭제 또는 복구 가능한 항목\버전 폴더에 있는 일정 항목에 대해 영구 삭제 작업을 수행할 때마다 기록 중 복사 인프라를 통해 스트립된 버전이 작성됩니다. 이 스트립된 버전이 복구 가능한 항목 폴더 루트에 저장되어 120일 동안 보관됩니다. 스트립된 버전이 작성되지 않는 경우는 복구 가능한 항목\삭제 또는 복구 가능한 항목\버전 폴더에 있는 항목의 수명이 134일(120+14)보다 오래된 경우뿐입니다. 보존 기간을 변경하거나, 사서함 폴더 도우미를 실행하지 않았거나, 소송 보존이 사용하지 않도록 설정된 것과 같은 경우에 이러한 현상이 발생할 수 있습니다.

앞서 설명한 기록 중 복사 논리가 Flush 작업과 Save 작업을 구분하지 못했던 문제로 인해, 일정 버전 로깅이 복구 가능한 항목 폴더 할당량의 대부분을 사용하는 경우가 있습니다. 참고로 경고 임계값은 20GB이고 하드 할당량은 30GB입니다.

SP2 RU3에서는 기록 중 복사 문제가 해결되어 일정 버전 로깅이 복구 가능한 항목 폴더의 할당량을 모두 사용하는 문제는 발생하지 않지만, SP2 RU2에서도 아키텍처가 변경되어 이제는 일정 버전 로깅이 기록 중 복사를 시작하기 전에 복구 가능한 항목 폴더의 크기를 고려합니다.

폴더 크기가 RecoverableItemsWarningQuota보다 크면 사서함에 대해 일정 버전 로깅이 사용하지 않도록 설정됩니다. 사용되는 RecoverableItemsWarningQuota 값은 사서함의 설정에 따라 다릅니다.

  1. 사서함의 UseDatabaseQuotaDefaults$true로 설정되어 있으면 사서함 데이터베이스의 RecoverableItemsWarningQuota가 사용됩니다.
  2. 사서함의 UseDatabaseQuotaDefaults$false로 설정되어 있으면 사서함의 RecoverableItemsWarningQuota가 사용됩니다.

일정 버전 로깅을 사용하지 않도록 설정하면 클라이언트 액세스 서버의 응용 프로그램 이벤트 로그에 다음 이벤트가 생성됩니다.

이벤트 ID: 5003
원본: MSExchange 중간 계층 저장소
작업 범주: CopyOnWrite
수준: 정보
설명: 사용자 사서함 <legacyExchangeDN>이(가) 휴지통 경고 할당량을 초과했습니다. 사서함에 대해 일정 로깅이 사용하지 않도록 설정되었습니다.

현재는 개발 초기 단계이므로 아직은 이러한 이벤트와 관련된 자세한 내용을 설명하지 않습니다. 그러나 앞으로도 일정 버전 로깅을 개선하여 이 기능이 배포에 주는 영향을 최소화하기 위해 노력할 것입니다. 추가 정보가 있으면 이 블로그에서 알려 드리겠습니다.

Ross Smith IV
주임 프로그램 관리자
Exchange Customer Experience

이 문서는 번역된 블로그 게시물입니다. 원본 문서는 Holy COW! Changes to Recoverable Items versioning in Exchange 2010 SP2 RU3을 참조하십시오.


Comments (0)