57
Exchange Server 2013 Architecture, Part 1 Speaker Name Title Microsoft Corporation Presentation available @ http://ignite.office.com Updated: Oct. 15, 2013

Part 2 Transport Unified Messaging Managed Availability

Embed Size (px)

Citation preview

Page 1: Part 2 Transport Unified Messaging Managed Availability

Exchange Server 2013 Architecture, Part 1

Speaker NameTitleMicrosoft Corporation

Presentation available @http://ignite.office.comUpdated: Oct. 15, 2013

Page 2: Part 2 Transport Unified Messaging Managed Availability

Agenda

Part 1Evolution of Server RolesClient Access ServerMailbox Server

Part 2TransportUnified MessagingManaged Availability

Page 3: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

Page 4: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

C C C H H H

L7 LB

2010

• Separate HA solution per role

• Support for Hybrid• Complex load

balancing

CAS HT

MBX MBX

2007

• Server roles introduced for deployment and scalability

• Support for simplified storage introduced

Ex Ex

SAN

Ex Ex

2000/2003

• Role differentiation through manual configuration

• Backups and hardware solutions for DR

Page 5: Part 2 Transport Unified Messaging Managed Availability

Exchange deployments can be complicatedServer roles tightly-coupled in terms of versioning, functionality, user partitioning, geo-affinityLoad balancing can be difficult and expensive

Hardware can go unutilized or under-utilized

Many namespaces required in multi-site deployments

Challenges with Previous Model

Page 6: Part 2 Transport Unified Messaging Managed Availability

“Our primary design goals were simplicity of scale, hardware efficiency, and failure isolation.”

- Microsoft Exchange Team

Page 7: Part 2 Transport Unified Messaging Managed Availability

Use Building Blocks to facilitate deployments at all scales

Server role evolutionNetwork layer improvementsVersioning and inter-op principles

Numerous BenefitsHardware efficiencyDeployment simplicityCross-version inter-opFailure isolation

Architecture Theme and Benefits

Page 8: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

E C H U M

Exchange 2010 SP3Exchange 2007 SP3

RU10

C

Page 9: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

AuthN, Proxy, Re-direct

Protocols, API, Biz-logic

Assistants, Store, CI

Exchange 2010Architecture

AuthN, Proxy, Re-direct

Store, CI

Protocols, Assistants, API,

Biz-logic

Exchange 2013Architecture

Client Access

Mailbox

Client AccessHub Transport,

Unified Messaging

Mailbox

L4 or L7 LB

L7 LB

Page 10: Part 2 Transport Unified Messaging Managed Availability

Thin, stateless (protocol session) server that includes:Client Access Front End (protocol proxy for HTTP, POP, IMAP)Front End Transport service (SMTP proxy)UM call router (SIP redirection)

Exchange-aware proxy serverPerforms lookups and proxies request to Mailbox server hosting active databaseSupports proxy and redirection logic for clients, including legacy mailboxes

Client Access Server Role

Page 11: Part 2 Transport Unified Messaging Managed Availability

Server that processes, renders and stores Exchange data

Includes components previously found in CAS, Hub Transport, and UM server roles

Includes client access protocol stack that provides connectivity to mailboxApplication session is maintained on the Mailbox server that hosts the active copy of the user’s mailbox

Mailbox Server Role

Page 12: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

12

E M

Exchange 2010 SP3Exchange 2007 SP3 RU10

C MC

MC

Database Availability Group

(DAG)

Client Access Server Array

Load B

ala

nce

r

Page 13: Part 2 Transport Unified Messaging Managed Availability

Evolution of Server Roles

13

E M/C

Exchange 2010 SP3Exchange 2007 SP3 RU10

M/C

M/C

Database Availability Group

(DAG)

Client Access Server Array

Load B

ala

nce

r

Page 14: Part 2 Transport Unified Messaging Managed Availability

E2010Banned

Server1 (Vn) Server2 (Vn+1)

Protocols, Server Agents

EWS

RPC CA

Transport

Assistants

MRS MRSProx

y

Transport

Assistants

EWS

RPC CA

MRS MRSProx

y

Business LogicXSO

Mail ItemOther API

CTS

XSOMail ItemOther API

CTS

StorageStore

Content index

File system

ESE

StoreContent index

File system

ESE

SMTP

MRS proxy protocol

EWS protocol

Every server is an island

Page 15: Part 2 Transport Unified Messaging Managed Availability

Client Access Server

Page 16: Part 2 Transport Unified Messaging Managed Availability

Domain-joined machine in the internal Active Directory forestThin, stateless (protocol session) server

Comprised of three components:Client Access Front End (protocol proxy for HTTP, POP, IMAP)Front End Transport service (SMTP proxy)UM call router

Exchange-aware proxy serverPerforms lookups and proxies request to Mailbox server hosting active databaseSupports proxy and redirection logic for clients, including legacy mailboxes

Client Access Server

Page 17: Part 2 Transport Unified Messaging Managed Availability

A group of CAS organized in a load-balanced configurationDesigned to work with TCP affinity (layer 4 LB) and session affinity (layer 7 LB), but does not require layer 7 LB

Provides a unified namespace and authenticationSimilar to Exchange 2010 in terms of providing a unified endpoint for client connectivity and authentication

Client Access Server Array

Page 18: Part 2 Transport Unified Messaging Managed Availability

Load Balancer

MDB

HTTP Proxy

IISClient Acces

s

RPC CA

Mailbox

IIS

RPS OWA, EAS, EWS, ECP, OAB

POP, IMAP SMTP UM

POP IMAP

Transport UM

SMTPPOP, IMAPHTTP

MailQ

Client Protocol Architecture in Exchange 2013

RpcProxy

SMTP

SIP

Redirect

SIP + RTP

POP/IMAPOutlook Web App Outlook EAS EAC PowerShell

Page 19: Part 2 Transport Unified Messaging Managed Availability

Only RPC/HTTP (Outlook Anywhere)

No RPC/TCP

Numerous benefitsSimplifies the protocol stackProvides an extremely reliable and stable connectivity modelMaintains RPC session on Mailbox server hosting active copyEliminates need for RPC CAS Array and associated namespace(s)Eliminates end user interruptions like “The Exchange administrator has made a change that requires you to quit and restart Outlook” during mailbox moves or *overs

Outlook Connectivity in Exchange 2013

Page 20: Part 2 Transport Unified Messaging Managed Availability

Third-party MAPI products will need to use RPC/HTTP to connect

Exchange 2013 is the last release to support a MAPI/CDO downloadThird parties must move to Exchange Web Services in the future

Newest MAPI/CDO download supports RPC/HTTP connectivityWill require third-party application configuration; either by programmatically editing a dynamic MAPI profile, or by setting registry keysLegacy environments can continue to use RPC/TCP

Third-Party MAPI Products

20

Page 21: Part 2 Transport Unified Messaging Managed Availability

What you need to control connectivity flow Outlook only supports a single RPC Proxy endpointIf Outlook Anywhere is allowed on the Internet, this may have internal Outlook clients connect to the external firewall for connectivity

To ensure that internal Outlook clients follow the internal pathway, use split-brain DNSForces internal clients to use internal IPForces external clients to use external IP

Split DNS

21

Page 22: Part 2 Transport Unified Messaging Managed Availability

Exchange 2013 no longer requires multiple namespaces for site resilient solutions or site specific scenarios

Easy to setup a single, worldwide client access namespaceCan be used in coexistence with Exchange 2010

Namespace Simplification Options

Page 23: Part 2 Transport Unified Messaging Managed Availability

A Single Common Namespace ExampleGeographical DNS Solution

Sue (somewhere in

NA) DNS Resolution

DAG

VIP #1 VIP #2

Sue (traveling in APAC)DNS Resolution via Geo-

DNSRound-Robin between # of VIPs

DAG

VIP #3 VIP #4

mail.contoso.com

Round-Robin between # of VIPs

Page 24: Part 2 Transport Unified Messaging Managed Availability

Mailbox Server

24

Page 25: Part 2 Transport Unified Messaging Managed Availability

Server that hosts the components that process, render and store Exchange dataIncludes components previously found in separate roles

Only Client Access servers and UM callers connect to the Mailbox serverClients connect to Client Access servers, and Client Access servers proxy/redirectConnectivity to a mailbox is always provided by the protocol instance local to the active database copy

Mailbox Server Role

Page 26: Part 2 Transport Unified Messaging Managed Availability

Collection of servers that form a unit of high availability

Boundary for replication and *over

DAG members can be in different sites

Can have a maximum of 16 Mailbox servers

Database Availability GroupMBX1

MBX2

MBX16

Page 27: Part 2 Transport Unified Messaging Managed Availability

Other Mailbox Server Changes

Managed Store

Modern Public Folders

Search Foundation

Workload Management

Page 28: Part 2 Transport Unified Messaging Managed Availability

Managed Store

Page 29: Part 2 Transport Unified Messaging Managed Availability

• Previously a single monolithic process• Unmanaged code• Very nested code that made it difficult to debug

Exchange Information Store

Page 30: Part 2 Transport Unified Messaging Managed Availability

• Store service/process (Microsoft.Exchange.Store.Service.exe) Microsoft Information Store service Manages worker process lifetime based on mount/dismount Logs failure item when store worker process problems detected Terminates store worker process in response to “dirty” dismount during

failover

• Store worker process (Microsoft.Exchange.Store.Worker.exe) One process per database, RPC endpoint instance is database GUID Responsible for block-mode replication for passive databases Fast transition to active when mounted Transition from passive to active increases ESE cache size 5X

Managed Store

Page 31: Part 2 Transport Unified Messaging Managed Availability

Store Worker Process Example

MountedOnServer: EXHV-1125.EXHV-44159dom.extest.microsoft.com

Name WorkerProcessId Mounted ActivationPreference EdbFilePath

---- --------------- ------- -------------------- -----------

MDB01C 11328 True {[EXHV-1125, 1], [EXHV-94234, 2], [EXHV-96496, 3]} C:\Databases\MDB01\MDB01C\MDB01C.edb

MDB02C 12504 True {[EXHV-1125, 1], [EXHV-94234, 2], [EXHV-96496, 3]} C:\Databases\MDB02\MDB02C\MDB02C.edb

MDB03C 11564 True {[EXHV-1125, 1], [EXHV-94234, 2], [EXHV-96496, 3]} C:\Databases\MDB03\MDB03C\MDB03C.edb

MountedOnServer: EXHV-94234.EXHV-44159dom.extest.microsoft.com

Name WorkerProcessId Mounted ActivationPreference EdbFilePath

---- --------------- ------- -------------------- -----------

MDB01A 2920 True {[EXHV-94234, 1], [EXHV-96496, 2], [EXHV-1125, 3]} C:\Databases\MDB01\MDB01A\MDB01A.edb

MDB02A 17480 True {[EXHV-94234, 1], [EXHV-96496, 2], [EXHV-1125, 3]} C:\Databases\MDB02\MDB02A\MDB02A.edb

MDB03A 22372 True {[EXHV-94234, 1], [EXHV-96496, 2], [EXHV-1125, 3]} C:\Databases\MDB03\MDB03A\MDB03A.edb

MountedOnServer: EXHV-96496.EXHV-44159dom.extest.microsoft.com

Name WorkerProcessId Mounted ActivationPreference EdbFilePath

---- --------------- ------- -------------------- -----------

MDB01B 16692 True {[EXHV-96496, 1], [EXHV-1125, 2], [EXHV-94234, 3]} C:\Databases\MDB01\MDB01B\MDB01B.edb

MDB02B 3336 True {[EXHV-96496, 1], [EXHV-1125, 2], [EXHV-94234, 3]} C:\Databases\MDB02\MDB02B\MDB02B.edb

MDB03B 17912 True {[EXHV-96496, 1], [EXHV-1125, 2], [EXHV-94234, 3]} C:\Databases\MDB03\MDB03B\MDB03B.edb

Page 32: Part 2 Transport Unified Messaging Managed Availability

• Replication service process (MSExchangeRepl.exe) Detecting unexpected database failures Issues mount/dismount operations to Store Provides administrative interface for management tasks Initiates failovers on failures reported by ESE, Store, and Responders

Microsoft Exchange Replication service

Page 33: Part 2 Transport Unified Messaging Managed Availability

• Allocates 25% of RAM for worker process ESE cache This is referred to as the max cache target Amount allocated to each store worker process based on number of

hosted database copies and value of MaximumActiveDatabases Static amount of cache allocated to passive and active copies

• Store worker process will only use max cache target when copy is active Passive database copies allocate 20% of max cache target

• Max cache target computed at service startup Restart Store service process when adding/removing copies or changing

value of MaximumActiveDatabases

New ESE Cache Management Algorithm

Page 34: Part 2 Transport Unified Messaging Managed Availability

Scheduled maintenance is gone in Exchange 2013Recurring maintenance now part of time-based assistant (TBA) infrastructureStoreMaintenance: lazy index maintenance, isintegStoreDirectoryServiceMaintenance: disconnected mailbox expiration

Workload Management monitors CPU, RPC latency, and replication health Task execution throttled/deferred when resource pressure existsBackground ESE database scanning further throttledBased on datacenter disk failure analysis, target to complete background database scan within 4 weeks (using multiple databases on 8 TB disks)

Recurring Maintenance

Page 35: Part 2 Transport Unified Messaging Managed Availability

Reduction in overhead to generate over-quota notificationAt logon time, system evaluates mailbox quota against policySends over-quota notification message once per notification interval, notifications are NOT sent to inactive mailboxes

Mailbox size calculation is more accurate measurement of mailbox database storage usedIncludes both internal and end-user items/properties

Reported size will increase when moved to Exchange 2013Search metadata stored on items increases overall mailbox sizeNo increase in database footprintShould plan to increase quota per mailbox

Mailbox Quota Management

Page 36: Part 2 Transport Unified Messaging Managed Availability

Modern Public Folders

Page 37: Part 2 Transport Unified Messaging Managed Availability

Public folders based on the mailbox architecture

Single-master modelWritable hierarchy is stored in one PF mailbox (all others have read-only)Content can be broken up and placed in multiple mailboxesHierarchy folder points to the target content mailbox

Because it’s in a mailbox database…High availability achieved through continuous replicationNo separate replication mechanism

Similar administrative features to current PFsMinimal end-user changes

Modern Public Folders

Page 38: Part 2 Transport Unified Messaging Managed Availability

Public Folder architecture

Architectural Public folders are based on the mailbox architecture

Details•Hierarchy is stored in all public folder mailboxes•Content can be broken up and placed across multiple mailboxes•Similar administrative features•Minimal end-user changes

Red FolderGreen Folder

CAS 2013

Blue FolderPink Folder Yellow Folder

Publiclogon

Publiclogon

Public Logon

Hierarchy Hierarchy Hierarchy

Content Mailbox

Hierarchy Mailbox

Content Mailbox

Page 39: Part 2 Transport Unified Messaging Managed Availability

Users connect to home Public Folder mailbox firstShould be located near their primary mailbox

Folder contents live in one mailboxAll content operations are redirected to the mailbox for that folderWhen a Public Folder mailbox gets full, move some folders to a new mailbox

Folder hierarchy changes are intercepted and written to writeable copy of Public Folder hierarchyAll Public Folder mailboxes listen for hierarchy changes and update similar to Outlook clients

Modern Public Folders

Page 40: Part 2 Transport Unified Messaging Managed Availability

Analyze existing Public Folders Tool available to analyze existing Public Folder hierarchy to determine how many Exchange 2013 Public Folder mailboxes are recommended

Copy Public Folder dataUsers access existing Public Folder deployment while data is copiedData migration happens in the background

Switch clients to Exchange 2013 Public Folders There will be a short downtime while the migration is finalizedOnce migration completes, everyone switches at the same timeCan switch back, but any post migration Public Folder changes are lost

Public Folder Migration

Page 41: Part 2 Transport Unified Messaging Managed Availability

Search Foundation

Page 42: Part 2 Transport Unified Messaging Managed Availability

Search Foundation

Significantly improved query performance

Significantly improved indexing performance

Page 43: Part 2 Transport Unified Messaging Managed Availability

With a single content indexing engine, no additional resources are used to crawl and index mailbox databases for In-Place eDiscoveryIn-Place eDiscovery uses Keyword Query Language (KQL)

Exchange 2013 allows SharePoint 2013 to search Exchange mailboxes using Federated search API

Search Foundation

Page 44: Part 2 Transport Unified Messaging Managed Availability

Supports many file formats natively (Office, TXT, PDF)No need to install Office Filter Packs on Exchange servers

Can leverage iFilters

Includes robust error handling

Search Foundation

44

Page 45: Part 2 Transport Unified Messaging Managed Availability

Search Foundation Primer

Core

Catalog

CTS

Incoming Documents

FilterWord Break

Content

XForm

MARS Write

r

Incoming Queries

“CTS Flow”

IMSContent XForm

Query

Parse

“IMS Flow”

Res

ults

Page 46: Part 2 Transport Unified Messaging Managed Availability

Mailbox

DB

Idx

Passive

Exchange Search Infrastructure

TransportTransport CTS

MailboxStore

DB

Index Node

Idx

ExSearch

Loca

l Del

iver

y

Reliable

Event

CTS

Read Content

MBX2013

Log

MBX2013

Log

Page 47: Part 2 Transport Unified Messaging Managed Availability

Workload Management

Page 48: Part 2 Transport Unified Messaging Managed Availability

Workload refers to an Exchange server feature, protocol, or service that has been explicitly defined for the purposes of Exchange system resource management

Each workload uses system resources such as CPU, mailbox database operations, or Active Directory requests to execute user requests or run background workExamples of Exchange workloads include Outlook Web App, Exchange ActiveSync, mailbox migration, and mailbox assistants.

Workload Management

Page 49: Part 2 Transport Unified Messaging Managed Availability

Control how resources are consumed by individual usersControlling how resources are consumed by individual users was possible in Exchange 2010, and this capability has been expanded for Exchange 2013

Monitor the health of system resourcesManaging workloads based on the health of system resources is new in Exchange 2013

Workload Management

Page 50: Part 2 Transport Unified Messaging Managed Availability

Exchange monitors the health of the following key resources to determine when to throttle workloads: Active Directory replication latencyLocal server CPU usageMailbox database RPC latencyMailbox database replication healthContent indexing age of last notificationContent indexing retry queue size

Workload Management

Page 51: Part 2 Transport Unified Messaging Managed Availability

Summary

Page 52: Part 2 Transport Unified Messaging Managed Availability

Numerous and significant architectural changesServer roles evolved and consolidatedNew Managed Store, Search Foundation and Managed AvailabilityTransport architecture changes and enhancementsIncreased service availability throughoutModern Public FoldersSupport for larger mailboxes

Summary

Page 53: Part 2 Transport Unified Messaging Managed Availability

Questions?

Page 54: Part 2 Transport Unified Messaging Managed Availability

Documentation – http://aka.ms/Ex2013Docs

Blog – http://aka.ms/EHLO

For More Information

Page 55: Part 2 Transport Unified Messaging Managed Availability
Page 56: Part 2 Transport Unified Messaging Managed Availability
Page 57: Part 2 Transport Unified Messaging Managed Availability

© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.