DAG를 사용할 때 허브 전송 및 사서함 서버 역할 동시 사용

 

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

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

Microsoft Exchange Server 2007은 SCC(단일 복사본 클러스터) 또는 CCR(클러스터 연속 복제) 등의 고가용성 기능을 사용할 경우 동일한 서버 하드웨어에서 허브 전송 역할과 사서함 서버 역할을 동시에 지원하지 않습니다. Exchange 2007의 최소 고가용성 배포에는 4개의 서버가 필요합니다. 두 개의 노드는 사서함 고가용성에 사용되고 두 개의 허브 전송 서버는 메시지 전송 중복에 사용됩니다.

고가용성 솔루션 제공에 필요한 서버의 수를 줄이기 위해 Exchange Server 2010은 DAG(데이터베이스 고가용성 그룹)를 사용할 때 동일한 서버 하드웨어에서 허브 전송 및 사서함 서버 역할을 지원합니다. Exchange 2010은 메시지 전송 중에 데이터 손실을 방지하는 섀도 중복성이라는 기능을 제공합니다. DAG와 섀도 중복성을 함께 사용하면 복원성이 매우 높은 메시징 인프라가 제공됩니다.

이 항목에서는 DAG에 참여하는 사서함 서버와 동일한 서버 하드웨어에 배포된 Exchange 2010 허브 전송 서버 역할의 작동 방식에 대해 중점적으로 다룹니다. DAG에 대한 자세한 내용은 데이터베이스 가용성 그룹 이해를 참조하십시오.

메시지 전송 및 배달

섀도 중복성은 메시지 경로를 따라 메시지의 복사본을 유지함으로써 메시지 전송 중에 데이터 손실을 방지합니다. 전송 중에 오류로 인해 메시지가 손실되면 전송 구성 요소에 의해 메시지의 섀도 복사본이 다시 전송됩니다. 섀도 중복성의 구현 방법에 대한 자세한 내용은 섀도 중복성 이해를 참조하십시오.

초기 메시지 전송 중에, 사용자가 보내기를 클릭할 때, 최종 배달 중에, 메시지가 받는 사람의 받은 편지함에 저장될 때 사서함 서버가 관련됩니다. 메시지를 허브 전송으로 보내면, 해당 메시지의 기본 복사본이 메시지가 전송된 허브 전송 서버의 큐에 들어갑니다. 해당 메시지의 섀도 복사본은 보낸 사람의 보낸 편지함 폴더에 저장된 항목입니다. 메시지가 배달되면 기본 복사본은 받는 사람의 받은 편지함에 들어가고 메시지의 섀도 복사본은 전송 휴지통에 저장됩니다.

동일한 서버 하드웨어에서 허브 전송 및 사서함 서버 역할이 공존하는 고가용성 시나리오에서는 메시지의 두 복사본을 동일한 서버에 두지 않는 것이 매우 중요합니다. 다음 그림과 같은 배포 시나리오를 생각해 볼 수 있습니다. 토폴로지는 허브 전송 서버 역할이 설치된 DAG에 참여하는 두 개의 Exchange 서버로 구성됩니다. DB1 및 DB2 데이터베이스는 DAG의 일부입니다. 활성 데이터베이스는 녹색으로 표시되고 수동 데이터베이스는 파랑으로 표시됩니다.

허브 전송 및 사서함 서버 역할이 있는 두 서버의 고가용성 토폴로지

허브 및 사서함 역할이 있는 두 서버 HA 토폴로지

이 토폴로지에서 DB1에 사서함이 있는 사용자가 메시지를 보낸다고 가정합니다. 그 메시지를 Server1에 있는 허브 전송 서버 역할로 전송하면 기본 메시지와 섀도 메시지가 모두 물리적으로 Server1에 저장됩니다. 다음 그림과 같이 기본 메시지는 허브 전송 서버 큐에 들어가고 섀도 메시지는 보낸 사람의 보낸 편지함 폴더에 들어갑니다.

바람직하지 않은 전송 경로

바람직하지 않은 전송 경로

마찬가지로 Server1에 있는 허브 전송 서버 역할에서 DB1의 사용자에게 가는 메시지를 받으면, 메시지는 직접 배달되며 기본 메시지와 섀도 메시지가 모두 물리적으로 Server1에 저장됩니다. 다음 그림과 같이 기본 메시지는 받는 사람의 받은 편지함에 들어가고 섀도 메시지는 전송 휴지통에 들어갑니다. 이러한 인스턴스 중 하나에서 서버 오류가 발생하면 메시지가 손실될 수 있습니다.

바람직하지 않은 배달 경로

바람직하지 않은 배달 경로

메시지 손실이 발생할 수 있는 이러한 시나리오를 방지하기 위해 Exchange는 메시지의 기본 복사본과 섀도 복사본이 서로 다른 물리적 서버에 저장되도록 보장하는 경로를 통해 메시지를 전송 또는 배달하려고 시도합니다. 수정된 메시지 전송 및 배달 동작에 대해서는 다음 섹션에서 다룹니다.

메시지 전송 동작

DAG 구성원인 데이터베이스에 사서함이 있는 사용자가 메시지를 보낼 때, 허브 전송 서버 역시 로컬 서버에 설치되어 있으면 메일 전송 서비스는 원격 허브 전송 서버에 우선권을 줍니다. "허브 전송 및 사서함 서버 역할이 있는 두 서버의 고가용성 토폴로지" 그림에 표시된 것과 같이, DB1에 사서함이 있는 사용자가 메시지를 보내면 메일 전송 서비스는 Server2에 설치된 허브 전송 서버를 사용하여 메시지를 전송하려 시도합니다. 다음 그림에서는 이러한 선호되는 메시지 전송 경로를 보여줍니다.

선호되는 전송 경로

선호되는 전송 경로

사이트에서 다른 허브 전송 서버를 사용할 수 없는 경우(예: 예약된 유지 관리로 인해 Server2를 사용할 수 없는 경우) 메시지 전송 서비스는 메시지를 대신 로컬 허브 전송 서버로 전송합니다. 중복성 면에서는 바람직하지 않은 전송 경로이지만 Exchange는 메시지 배달이 지연되지 않는 방식을 택합니다. 가용성 및 배달 대기 시간 단축 면에서는 대체 전송 경로가 바람직합니다.

메시지 배달 동작

대부분의 경우 메시지 라우팅 및 배달 동작은 변경되지 않습니다. 예를 들어 "허브 전송 및 사서함 서버 역할이 있는 두 서버의 고가용성 토폴로지" 그림의 Server1에서 DB2에 있는 사용자의 메시지를 받는 경우, 데이터베이스가 다른 서버에서 활성 상태이기 때문에 메시지는 정상적으로 배달됩니다. 대상 사서함이 DAG의 일부인 데이터베이스에 있고 로컬 서버에서 활성 상태인 경우에만 허브 전송 서버에서 들어오는 메시지를 다르게 처리합니다. 이 경우 직접 배달을 하면 배달된 메시지와 전송 휴지통의 복사본이 동일한 서버에 있게 되므로 허브 전송 서버는 대신 이 메시지를 같은 사이트의 다른 허브 전송 서버로 다시 라우팅합니다. 다음 그림에서는 이 시나리오의 메시지 배달 경로를 보여줍니다.

선호되는 배달 경로

선호되는 배달 경로

사이트에서 다른 허브 전송 서버를 사용할 수 없는 경우 허브 전송 서버는 중복성 면에서 바람직하지 않은 배달 경로라도 로컬 배달 경로를 대체 경로로 사용합니다. 역시 가용성 및 배달 대기 시간 단축 면에서는 대체 배달 경로가 바람직합니다.

메시지 흐름 시나리오

이 섹션에서는 허브 전송 및 사서함 서버 역할이 동일한 서버에 공존하는 경우 다양한 메시지 흐름 시나리오에서 발생하는 내용을 자세히 설명합니다. 다음 그림에 표시된 토폴로지는 여러 가능한 메시지 흐름 시나리오를 나타냅니다.

메시지 흐름 시나리오에 대한 샘플 토폴로지

메시지 흐름 시나리오에 대한 샘플 토폴로지

다음 표에서는 Server1에 있는 허브 전송 서버 역할이 다양한 시나리오에서 메시지를 처리하는 방법을 보여줍니다. 이러한 경우에서는 모두 Server1이 진입점으로 간주됩니다.

보낸 사람 위치 받는 사람 위치 일반 메시지 경로 고가용성 시나리오

DB1, Server1에서 활성

DB1, Server1에서 활성

  1. Server1의 전송 서비스가 Server2의 허브 전송 서버 역할로 메시지를 전송합니다.

  2. Server2의 허브 전송 서버 역할이 Server1에 있는 DB1로 메시지를 배달하고 메시지를 Server2의 전송 휴지통에 추가합니다.

  • 메시지 전송이 완료되기 전에 Server1에서 오류가 발생하면 보낸 사람의 보낼 편지함에 있는 메시지가 손실될 수 있습니다.

  • 메시지 전송이 완료되기 전에 Server2에서 오류가 발생하면 메시지는 Server1에 있는 허브 전송 서버 역할로 전송됩니다.

  • Server2의 허브 전송 서버 역할로 메시지 전송을 완료한 후에 Server1에서 오류가 발생하면 Server2에서 DB1이 활성화됩니다. DB1이 탑재된 Server2의 큐에 메시지가 들어가면 허브 전송 서버 역할이 로컬로 메시지를 배달합니다.

  • Server2의 허브 전송 서버 역할로 메시지 전송을 완료한 후에 Server2에서 오류가 발생하면 DB1에 있는 섀도 메시지가 Server1의 허브 전송 서버 역할로 다시 전송되고 Server1이 메시지를 로컬로 배달합니다.

  • 메시지 배달을 완료한 후에 Server1에서 오류가 발생하면 Server2에서 DB1이 활성화됩니다. 배달된 메시지가 데이터베이스에 커밋되지 않은 경우에는 Server2의 전송 휴지통에서 다시 배달됩니다.

DB1, Server1에서 활성

DB2, Server2에서 활성

  1. Server1의 전송 서비스가 Server2의 허브 전송 서버 역할로 메시지를 전송합니다.

  2. Server2의 허브 전송 서버 역할이 Server1의 허브 전송 서버 역할로 메시지를 다시 라우팅합니다.

  3. Server1의 허브 전송 서버 역할이 Server2에 있는 DB2로 메시지를 배달하고 메시지를 Server1의 전송 휴지통에 추가합니다.

  • 메시지 전송이 완료되기 전에 발생하는 모든 서버 오류는 이전 행에서 설명한 것과 같은 방식으로 처리됩니다.

  • Server2의 허브 전송 서버 역할로 메시지 전송을 완료한 후에 Server1에서 오류가 발생하면 Server2의 허브 전송 서버 역할이 로컬로 메시지를 배달합니다.

  • Server2의 허브 전송 서버 역할로 메시지 전송을 완료한 후에 Server2에서 오류가 발생하면 Server1에서 DB2가 활성화됩니다. Server1의 허브 전송 서버 역할은 Server2의 허브 전송 서버 역할을 사용할 수 없음을 감지하면 섀도 메시지를 다시 전송합니다. Server1에 DB2가 탑재된 후에는 메시지가 로컬로 배달됩니다.

  • 배달을 위해 Server1로 메시지를 다시 라우팅한 후에 Server1에서 오류가 발생하면, Server2의 허브 전송 서버 역할은 Server1의 허브 전송 서버 역할을 사용할 수 없음을 감지한 후 섀도 메시지를 다시 전송합니다. 그런 다음 메시지를 로컬로 배달합니다.

  • 배달을 위해 메시지를 Server1로 다시 라우팅한 후에 Server2에서 오류가 발생하면 Server1에서 DB2가 활성화됩니다. 메시지는 DB2가 Server1에 탑재될 때까지 Server1의 큐에 남아 있다가 로컬로 배달됩니다.

  • 메시지 배달을 완료한 후에 Server2에서 오류가 발생하면 Server1에서 DB2가 활성화됩니다. 배달된 메시지가 데이터베이스에 커밋되지 않은 경우에는 Server1의 전송 휴지통에서 다시 배달됩니다.

외부

DB1, Server1에서 활성

  1. Server1의 허브 전송 서버 역할이 Server2의 허브 전송 서버 역할로 메시지를 다시 라우팅합니다.

  2. Server2의 허브 전송 서버 역할이 Server1에 있는 DB1로 메시지를 배달하고 메시지를 Server2의 전송 휴지통에 추가합니다.

  • Edge1로부터 메시지 수신을 완료하기 전에 Server1에서 오류가 발생하면 Edge1은 Server2의 허브 전송 서버 역할로 배달을 시도합니다.

  • Edge1로부터 메시지 수신을 완료한 후에 Server1에서 오류가 발생하면, Edge1은 Server1의 허브 전송 서버 역할을 사용할 수 없음을 감지한 후 Server2의 허브 전송 서버 역할로 메시지를 다시 전송합니다. 그러면 DB1이 Server2에 탑재된 후 Server2의 허브 전송 서버 역할이 메시지를 로컬로 배달합니다.

  • 다른 모든 오류 시나리오는 첫 행에서 설명한 것과 같은 방식으로 처리됩니다.

외부

DB2, Server2에서 활성

  1. Server1의 허브 전송 서버 역할이 Server2에 있는 DB2로 메시지를 배달하고 메시지를 Server1의 전송 휴지통에 추가합니다.

  • Edge1로부터 메시지 수신을 완료하기 전에 Server1에서 오류가 발생하면 Edge1은 Server2의 허브 전송 서버 역할로 배달을 시도합니다.

  • Edge1로부터 메시지 수신을 완료한 후 Server2의 DB2로 배달하기 전에 Server1에서 오류가 발생하면 Edge1은 Server2의 허브 전송 서버 역할로 섀도 메시지를 다시 전송합니다. DB2에 성공적으로 메시지를 배달할 때까지 Server1이 Edge1로 승인을 보내기 않기 때문입니다. Edge1은 승인을 받지 않았으므로 Server1을 사용할 수 없음을 감지한 후 메시지를 다시 전송합니다.

  • 메시지 배달을 완료한 후에 Server2에서 오류가 발생하면 Server1에서 DB2가 활성화됩니다. 배달된 메시지가 데이터베이스에 커밋되지 않은 경우에는 Server1의 전송 휴지통에서 다시 배달됩니다.

위의 표에서는 사이트에 허브 전송 서버가 두 개만 있고 두 서버 모두가 DAG에 참여하는 사서함 서버 역할과 공존하는 최소 시나리오를 중심으로 설명했습니다. 추가 전용 허브 전송 서버를 사용할 수 있는 더 복잡한 배포에서는 라우팅을 결정할 때에도 해당 서버가 사용됩니다. 하지만 전용 허브 전송 서버를 사용할 수 있을 정도로 배포 환경이 큰 경우에는 DAG에 참여하는 사서함 서버에 허브 전송 서버 역할을 설치하지 않는 것이 좋습니다.

 © 2010 Microsoft Corporation. 모든 권리 보유.