Exchange Server 2010 Architettura, High
Availability & Storage: le novità
Alessandro Appiani
Microsoft TechNet Speaker & Certified Trainer
email: [email protected]
Pulsar IT Founder & CEO
sip/im/email: [email protected]
L’eccellenza sulle tecnologie Microsoft
Pulsar IT è stata tra le prime società in Italia a certificarsi
sulle infrastrutture di rete Microsoft (1995) e sulle
soluzioni in area Server
Pulsar IT è specializzata sulle soluzioni per la
comunicazione, la collaborazione e la sicurezza
Le persone di Pulsar IT sono Speaker tecnici in
conferenze ed eventi Microsoft da oltre 15 anni
Pulsar IT è Microsoft Voice-Ready Partner specializzato
nell’integrazione delle tecnologie Microsoft Unified
Communications con i sistemi VoIP e legacy PBX
Agenda
Architettura di Exchange Server 2010
Ruoli e topologia
Client Access, Transport, Mailbox, ... le novità
Linee guida per il dimensionamento
Exchange Storage
Exchange 2010 Storage Design Goals
Exchange 2010 Storage Vision
Exchange DB novità architettura e prestazioni
Alta affidabilità (HA), Fault Tolerance (FT) e clustering
Scenari di HA/FT con Exchange 2003/2007/2010
Exchange 2010 Clustering: i concetti di base
Database Availability Group (DAG)
ARCHITETTURA DI EXCHANGE
SERVER 2010
Exchange 2010 Enterprise Topology
Enterprise Network
Edge Transport
Routing & AV/AS
Phone system
(PBX or VOIP)
Hub Transport
Routing & Policy
External
SMTP
servers
Mailbox
Storage of
mailbox items
Mobile
phone
Client Access
Client connectivity
Web services
Web
browser
Outlook
(remote user)
Unified Messaging
Voice mail &
voice access
Reverse Proxy
(es: Forefront
TMG/UAG)
Line of business
application
Outlook (local user)
Colocation dei ruoli e novità
L’architettura di clustering del ruolo Mailbox di Exchange
2010 non è più basata su Windows Cluster, anche se ne
richiede le tecnologie di base
può essere anche colocato con gli altri ruoli
E’ possibile implementare una soluzione in High
Availability/Fault Tolerance (“consolidata”)
soluzione in HA/FT completa con 2 soli server (oltre ad Edge)
se tutti i ruoli colocati è richiesto load balancer esterno
Unified Messaging supportato ma non consigliato
Edge è l’unico ruolo Exchange posizionato in DMZ
no colocation (come per Exchange 2007)
E’ richiesto un reverse proxy (tipicamente in DMZ) per
pubblicare su Internet il ruolo CAS
come per Exchange 2007
Forefront TMG e UAG hanno funzioni specifiche
La nuova architettura interna per
l’accesso allo store
Entourage
Exchange Components
Exchange Components
Outlook /
MAPI clients
Outlook /
MAPI clients
Exchange
Biz Logic
Entourage
Mailbox
Middle
Tier
Sync
UM
MAPI RPC
Store
Mailbox
Agents
DAV
Mailbox
OWA
Mailbox
Agents
Middle
Tier
WS
WS
Transport
Agents
OWA
Sync
MAPI,
Exchange
RFR &
Biz Logic
NSPI RPC
Exchange Core Biz Logic
MAPI RPC
Store
Transport
Agents
UM
RPC Client Access Service
Un nuovo servizio che risiede
nel ruolo CAS di Exchange
Server 2010
miglior switch in caso di mailbox
failover
architettura più pulita e minor codice
“client” nello store
Exchange Business logic uniforme tra
tutti i client
Outlook Clients
Exchange CAS Array
content/body format conversion, AD
Access (LDAP), ...
fornisce Address Book Services ai
client Outlook Anywhere gestendo
AD Query (LDAP)
supporto per un maggior numero di
connessioni per mailbox/server
MBX
GC
Client Access
Connessioni client RPC
Exchange Server 2007
Exchange Server 2010
Outlook / MAPI
clients
RpcProxy
MAPI RPC
DSProxy
NSPI
RPC Data Flow
Mailbox
AD
HTTP Data Flow
RPCProxy
NSPI,
RFR
RPC
Exchange Biz Logic
MAPI RPC
Store
Store
ESE
MAPI
RPC
ESE
Mailbox
CAS Array
CAS
Outlook / MAPI
clients
LDAP
Common Data Flow
AD
Client Access
Connessioni verso le mailbox
60K outbound
connections / CAS IP
(W2K8)
Outlook Anywhere
Clients
CAS
60K outbound
connections /
MBX server
MBX
GC
Exchange Server 2007
60K connections / MBX
server
MBX
Outlook Clients
Exchange Server 2007
Outlook Clients
# of CAS servers
x 100 connections / CAS RPCCA
service/process
MBX
Exchange CAS NLB
Exchange Server 2010
GC
LDAP
Transport Roles
Migliore affidabilità di trasporto
Shadow redundancy è una nuova caratteristica del ruolo
Transport
fornisce ridondanza dei messaggi durante le fasi di transito
rende stateless il transport
elimina l’esigenza di RAID (50% di write in meno) per mail.que
Transport Dumpster
ora sfrutta l’architettura di replica dei DB per ridurre
l’occupazione
se un messaggio è replicato in tutte le copie dei DB viene
automaticamente rimosso dal dumpster
la dimensione del dumpster è funzione della latenza di replica
dei log e della frequenza delle notifiche di replica (feedback)
Transport Roles
Come funziona Shadow redundancy
1. Hub (shadow) consegna il messaggio a
Edge1 (primary)
Verifica che Edge1 supporta Transport
redundancy tramite il verbo SMTP XSHADOW
Hub muove il messaggio nella coda shadow e
marca Edge1 come primary owner corrente
Hub
1
Edge1
Edge2
2
Foreig
n MTA
2. Edge1 (primary) riceve il messaggio
(e diventa “primary owner”)
Edge1 consegna il messaggio al next hop
Edge1 aggiorna lo stato del messaggio
evidenziando il completamento della consegna ad
un MTA esterno
Transport Roles
Come funziona Shadow redundancy
Hub
1
4
3
3. Success: Hub (shadow) interroga Edge1
(primary) per verificare lo stato di scadenza
Hub esegue il comando XQDISCARD (next SMTP
Session); Edge1 verifica lo status locale e
risponde con la lista di messaggi considerati
consegnati
 Hub cancella i messaggi dalla sua coda
shadow
Edge2 4.
Edge1
2
Foreig
n MTA
Failure: Hub (shadow) interroga Edge1
(primary) per verificare lo stato di scadenza e
reinviare
Hub apre una sessione SMTP, esegue
XQDISCARD (heartbeat) — se Hub non riesce a
contattare Edge1 e va in timeout, reinvia i
messaggi nella coda shadow — reinvia i
messaggi a Edge2 (go to #1)
Transport Roles
Shadow redundancy: altri scenari
Con sistemi che non supportano shadow redundancy,
Exchange 2010 usa un processo di acknowledgement
ritardato
SMTP submission da Exchange 2003/2007, altri Message Transfer
Agent (MTA) e Mail User Agent (MUA - UM, POP and IMAP
clients)
250 response ritardato fino a 30 secondi (default)
se il transport server fallisce prima di ack, il client reinvia
Mailbox Submission redundancy si appoggia sulla copia
dei messaggi presente nella “Sent Items” del sender
Mail Submission Service reinvia la copia quando l’hub non
conferma con acknowledge la consegna del messaggio
I messaggi di sistema (Journal Report, NDR) sono
considerati “side effects” dell’invio originale e registrati
nello status del messaggio originale
Transport Roles
Altri miglioramenti in Exchange 2010
SMTP DataBase & I/O
ESE page size 32KB
ESE database page compression
DB cache size increased to 1GB
Checkpoint depth increased to 512MB
 riduzione di circa il 50% dell’I/O
 supporto per messaggi più grossi
Edge
Migliori prestazioni per EdgeSync grazie a Deltasync Mode
Mailbox
Considerazioni architetturali
Il supporto a Large mailbox (10 GB+) abilita differenti
scenari, incluso l’utilizzo del personal archive
usare Office/Outlook 2007 Service Pack 2 (SP2) o successivi
implementare le funzionalità di record management
Utilizzare soluzioni direct-attached storage (DAS) per
ridurre i costi in caso di large mailbox e continuous
replication
Exchange 2010 Mailbox Server Role Requirements Calculator
Alta affidabilità basata su Database Availability Group
(DAG) e replica
con 3 o più copie si possono considerare soluzioni RAID-less
con log e database sullo stesso volume
Streaming backup non è più supportato
{
}
EXCHANGE STORAGE
E-mail storage & design goals
Molte e-mail
circa 200 al gg
in/out
Large mailbox
(1-10GB+) è ormai
un’esigenza
300
Messages Sent/Received Per User/Day
(Radicati group 2008)
200
100
0
2008
2010
2012
produttività, search, storia pluriennale, ...
Disk storage trends
la capacità degli HD cresce costantemente (soprattutto SATA)
il costo per GB decresce continuamente (soprattutto SATA)
la massima velocità si ottiene in caso di Sequential I/O
Storage consolidation
eliminare/ridurre PST
eliminare/ridurre l’esigenza di soluzioni di archiving terze
Exchange 2010 Storage Vision
SATA/Tier 2
Disk
Optimization
IO Reduction
Sequential IO
Large, Fast, Lowcost Mailboxes
Storage Design
Flexibility
RAID’less
Storage (JBOD)
Riduzione dell’IOPS
Store Table Architecture
Per Database
E2007
Per Folder
Mailbox Table
Folders Table
Message Table
(Msg)
Attachments
Table
Message/Folder
Table (MFT)
Jeff’s Mbx
Jeff:Inbox
Joe:Msg10
Jeff:Excel.xls
Joe:Inbox:H3
Ann’s Mbx
Ann:Drafts
Jeff:Msg32
Ann:Pic.bmp
Joe:Inbox:H2
Joe’s Mbx
Joe:Unread
Ann:Msg180
Joe:Help.doc
Joe:Inbox:H1
Secondary Indexes used for Views
Per Mailbox
Per Database
E2010
Per View
Mailbox Table
Folders Table
Message
Header Table
Body
View Tables (e.g.
From)
Jeff’s Mbx
Joe:Inbox
Joe:H10
Joe:Msg10
Joe:H920
Ann’s Mbx
Joe:Drafts
Joe:H302
Joe:Help.doc
Joe:H302
Joe’s Mbx
Joe:Unread
Joe:H920
Joe:Msg302
Joe:H10
 non c’è più single instance storage 
Store Schema Changes
Lazy View Updates
All Unread or Flagged items (view)
E2007
M1
M2
M1
M3
M2
Nickel &
Dime
Approach
DB I/O
Many, random, IOs (1 per update)
M1 arrives
M2 arrives
M1 flagged
M3 arrives
M2 deleted
Time
User uses OWA/Outlook Online
and
switches to this view
E2010
Pay to Play
Approach
All Unread or Flagged items (view)
M1
M2
M1
M3
M2
Fewer, sequential, IOs (1 per view)
Riduzione dell’I/O ottenuta ritardando
l’aggiornamento delle viste e favorendo le scritture sequenziali
DB Page Size elevato a 32KB*
E2007 DB Read
20KB Message
DB
Cache
Page 1
Page 3
Page 5
Msg
Header
Msg
Body
Msg
Body
Disk
3 Read IO’s
8 KB
Pages
E2010 DB Read
20KB Message
* 8k in E2007
4k in E2003
DB
Cache
Page 1
Page 2
Page 3
Page 4
Page 5
Msg
Header
X
Msg
Body
X
Msg
Body
Page 1 (32KB)
Msg Header, Msg Body
1 Read IO
Disk
32 KB
Pages
Page 1 (32KB)
Page 2 (32KB)
Msg Header, Msg Body
X
~20KB Message
Exchange 2010 Storage
Mailbox I/O
Mailbox IO Characteristics: E2007 vs... E2010
DB IO
E2007
E2010
Log IO
E2007
E2010
IO Type
Random
“Sequentialish”
IO Type
Sequential
Sequential
Read:Write
1:1
3:2
Read:Write
0:1
0:1
Avg Read IO
Size (KB)
12
52
n/a
n/a
Avg Write IO
Size (KB)
8
Avg Read IO
Size (KB)
Avg Write IO
Size (KB)
10
10
60
consolidamento delle
scritture su DB: IO size
circa 5x rispetto a E007
Write size dei log
sostanzialmente inalterato...
3000 Mailboxes, 12 DB’s 4MB DBCache/Mailbox, Loagen Outlook 2007 Online Very Heavy Profile, 250MB Mailbox Size
E2010 rispetto a E2007
riduzione complessiva IOPS
500
oltre il 70% di
IO in meno
450
400
350
DB Read IO/Sec
DB Write IO/Sec
DB IO/Sec
300
250
200
150
100
50
0
E2007
E2010
3000 Mailboxes, 3MB DB Cache/user, Loadgen Outlook 2007 Online Very Heavy Profile, 250MB Mailbox Size, E2010 Beta
E2010 rispetto a E2003
riduzione complessiva IOPS
DB IOPS/Mailbox
90% !
1
0.8
Exchange 2003
Exchange 2007
Exchange 2010
0.6
0.4
0.2
0
Exchange
2003
Exchange
2007
Exchange
2010
Exhange 2010 HA Storage Design
SAN
• HA = Shared Storage
Clustering
• +1.0 IOPS/Mailbox
• 3.5” 15K 146GB FC Disks
• RAID10 for DB & Logs
• Dedicated Spindles
• Multi-path (HBA’s, FC
Switches, SAN array
controllers)
• Backup = Streaming off
active
• Fast Recovery = Hardware
VSS (Snapshots/Clones)
•
•
•
•
•
•
•
•
DAS (SAS)
DAS (SATA/Tier2)
HA = CCR
.33 IOPS/Mailbox
2.5” 146GB 10K SAS Disks
RAID5 for DB
RAID10 for Logs
SAS Array Controller (/w BBU)
Backup = VSS Snapshot
Fast Recovery = CCR
• HA = DAG (2+ DB copies)
• .11 IOPS/Mailbox
• 3.5” 1TB 7.2K SATA/Tier2
Disks
• RAID10 for DB & Logs
• SAS Array Controller (/w
BBU)
• Backup = VSS
Snapshot/Optional
• Fast Recovery = Database
Failover
più flessibilità per ridurre i costi
JBOD (SATA/Tier2)
• HA = DAG (3+ DB copies)
• .11 IOPS/Mailbox
• 3.5” 1TB 7.2K SATA/Tier2
Disks
• 1 DB = 1 Disk
• SAS Array Controller (/w
BBU)
• Backup = VSS
Snapshot/Optional
• Fast Recovery = Database
Failover
E2010 Storage Requirements
Storage Guidance
Stand Alone
E2010 HA(2 copies)
E2010 HA(3+ copies)
Storage Type
DAS, SAN (Fibre Channel, iSCSI)
Disk Type
SAS, Fibre Channel, SATA/Tier2 , SSD
RAID
RAID recommended
RAID optional
RAID Type
RAID-1/0, RAID-5, RAID-6
JBOD
DB/Log Isolation
Best Practice
Windows Disk Type
Basic (recommended), Dynamic (supported)
Partition Type
GPT (recommended), MBR (supported)
Partition Alignment
Windows 2008/R2 Default (1MB)
File System
NTFS
NTFS Allocation Unit Size
64KB for both database and log volumes
Encryption Support
Outlook Protection Rules, Bitlocker
Not required
{
}
ALTA AFFIDABILITÀ (HA), FAULT
TOLERANCE (FT) E CLUSTERING
Exchange Server 2003
Outlook
OWA, ActiveSync, or
Outlook Anywhere
San Jose
Front End
Server
NodeA
(active)
Complex site
resilience and
recovery
Clustered Mailbox
Server had to be
created manually
NodeB
(passive)
DB1
DB4
DB2
DB5
DB3
DB6
Failover at
Mailbox server
level
Dallas
DB1
DB2
Standby
Cluster
DB3
Third-party data
replication
needed for site
resilience
Clustering
knowledge
required
Exchange Server 2007
Outlook
OWA, ActiveSync, or
Outlook Anywhere
Client Access
Server
DB2
Standby
Cluster
DB3
No GUI to
manage
SCR
NodeB
(passive)
CCR
DB1
SCR
Clustered Mailbox
Server can’t coexist with other
roles
San Jose
NodeA
(active)
Dallas
Complex activation
for remote server /
datacenter
DB1
DB4
DB1
DB4
DB2
DB5
DB2
DB5
DB3
DB6
DB3
DB6
Clustering
knowledge
required
Failover at
Mailbox server
level
Exchange Server 2010
Dallas
All clients connect
via CAS servers
DB1
DB3
Mailbox
Server 6
San Jose
DB5
Easy to
extend across
sites
Client Access
Server
Failover managed
by/with Exchange
Mailbox
Server 1
Mailbox
Server 2
Mailbox
Server 3
Mailbox
Server 4
Mailbox
Server 5
DB1
DB4
DB2
DB5
DB3
DB2
DB5
DB3
DB1
DB4
DB3
DB1
DB4
DB2
DB5
Database
level
failover
Exchange 2010 High Availability
Concetti di base
E’ ottenuta attraverso il concetto di Mailbox Resiliency
che uniforma l’approccio al fault tolerance per dati e
servizi sia a livello locale che a livello geografico (site)
E’ granulare a livello di mailbox database, non più a
livello di server o Storage Group
In ogni istante possono esistere N copie di un Database
una sola delle quali è attiva
La copia attiva può essere cambiata sia manualmente
(switchover) che automaticamente in caso di failure
(failover)*
* il processo di cambiamento di Active mailbox database copy si abbrevia generalmente
*over così da comprendere le due modalità (switch/fail)
Exchange 2010 High Availability
Cosa cambia e cosa no
Non più basata su un Windows Cluster
usa comunque le tecnologie clustering di Windows Server
2008/2008 R2 Enterprise
nativa in Exchange (DAG), anche per setup e management
nessun limite geografico o di network
rimane il concetto di quorum, witness, heartbeat/monitoring
Storage Group: non ci sono più
fino a 100 Mailbox DB per ogni server
Il modello SCC non è più consentito
basata su replica, DB Seed, log shipping & reply
fino a 16 copie di ogni DB (erano 2 in E2007)
Deployment incrementale
dopo il setup, in ogni momento
Exchange 2010 HA
Schema logico dei componenti
Database Availability Group
Server
Database
Database Copy
Active Manager
RPC Client Access
DAG
Database Availability Group (DAG)
E’ un raggruppamento di server (fino a 16) in
grado di ospitare repliche di DB
Componente alla base dell’alta affidabilità sia
locale che geografica (site)
Racchiude di fatto un Windows Failover Cluster
gestisce il gruppo: DAG member = cluster node
rileva heartbeat dei server membri
Active Manager stores data in cluster database
La replica e l’HA può avvenire solo all’interno di
un DAG
Active Manager
E’ un processo in esecuzione su ogni server di un DAG
che ha il compito principale di determinare la copia
attiva di un DB nel DAG
Gestisce i dati e le informazioni proprie del DAG
Comunica e fornisce informazioni agli altri componenti
di Exchange (RPC Client Access, Hub Transport, ...)
Due differenti ruoli
Primary Active Manager (PAM)
è quello in esecuzione sul nodo attivo (owner) del cluster group
seleziona la copia di riferimento di un DB in caso di *over
Standby Active Manager (SAM)
è quello in esecuzione sugli altri nodi del cluster group
Esempio di Database Failover
Database failure
Failure viene segnalato
Active Manager riseleziona active database
Viene ripristinata una Database copy
Il processo è sostanzialmente uguale anche in caso di failure su nodi
remoti/tra datacenter
DAG
Mailbox
Server 1
Mailbox
Server 2
Mailbox
Server 3
Mailbox
Server 4
Mailbox
Server 5
DB1
DB4
DB2
DB5
DB3
DB2
DB5
DB3
DB1
DB4
DB3
DB1
DB4
DB2
DB5
Esempio di Server Failover
Database failure
Failure viene segnalato (cluster node down)
Active Manager riseleziona gli active database
Viene ripristinato il server
Segnalazione di cluster node up
Le copie dei database vengono risincronizzate con quelle attive
Il processo è lo stesso anche tra datacenter
DAG
Mailbox
Server 1
Mailbox
Server 2
Mailbox
Server 3
Mailbox
Server 4
Mailbox
Server 5
DB1
DB4
DB2
DB5
DB3
DB2
DB5
DB3
DB1
DB4
DB3
DB1
DB4
DB2
DB5
Un modello diverso di affidabilità
Con 3 o più copie dei database e l’applicazione delle nuove funzionalità è
possibile utilizzare la replica come alternativa ai backup tradizionali
Site/Server/Disk failure
Archiving/Compliance
Recover deleted items
Exchange 2010 HA
E-mail Archive
Hold Policy
Database Availability Group
Mailbox
Server 1
Mailbox
Server 2
Mailbox
Server 3
DB1
DB1
DB1
DB2
DB2
DB2
DB3
DB3
DB3
X
JBOD/RAID'less Storage
Single Page Restore (Active)
1.
Page corruption
detected on Active
Copy (e.g. -1018)
2.
Active DB places
marker in log stream to
notify passive copies to
ship up to date page
3.
Passive receives log
and replays up to
marker, retrieves good
page, invokes Replay
Service callback and
ships page
4.
5.
Active receives good
page, writes page to DB.
Page is restored.
Subsequent page repair
from additional copies
ignored
Database Availability Group (DAG)
Mailbox
Server Node 1
DB1-Active
Mailbox
Server Node 2
Mailbox
Server Node 3
DB1-CopyA
DB1-CopyB
Log
Log
Log
Page1
Page1
Page1
Page2
Page2
Page2
Page3
Page3
Page3
Database
Database
Database
{
}
IN SINTESI
Riepilogo
Exchange 2010: una versione importante
Architettura
Client connections tutte sul Client Access Server role
(attenzione al sizing)
Shadow redundancy irrobustisce il trasporto
Ottimizzato per large mailboxes (+10GB)
Storage
Riduzione dell’I/O del 70% rispetto a Exchange 2007 (del 90%
rispetto a Exchange 2003)
Consente l’uso di dischi SATA/Tier2 (large/slow/low-cost)
Favorisce retention e archiving
High Availability
nuovo modello nativo in architettura Exchange (DAG)
uniforma Data, Service, Site, Disaster Recovery
consente soluzioni JBOD/Raidless
Risorse (1)
Exchange 2010 Mailbox Server Role Requirements Calculator
http://msexchangeteam.com/archive/2009/11/09/453117.aspx
Mailbox Server Storage Design
http://technet.microsoft.com/en-us/library/dd346703.aspx
Understanding Storage Configuration
http://technet.microsoft.com/en-us/library/ee832792.aspx
Mailbox Server Processor Capacity Planning
http://technet.microsoft.com/en-us/library/ee712771.aspx
Planning for High Availability and Site Resilience
http://technet.microsoft.com/en-us/library/dd638104.aspx
Understanding Exchange Performance
http://technet.microsoft.com/en-us/library/dd351192.aspx
Capacity Planning Tools
Profiling (Exchange Profile Analyzer, Performance Monitor)
Sizing (Exchange 2010 Mailbox Server Role Requirements Calculator)
Validation (Jetstress 2010, Exchange Load Generator)
Risorse (2)
Microsoft Exchange Server TechCenter
http://technet.microsoft.com/en-us/exchange
Microsoft Exchange Team Blog
http://msexchangeteam.com
Microsoft Unified Communications Group Team Blog
http://blogs.technet.com/uc
Microsoft Unified Communications | TechNet Edge
http://edge.technet.com/unifiedcommunications
Microsoft Exchange Server Home
http://www.microsoft.com/exchange
Microsoft Unified Communications (UC) Home
http://www.microsoft.com/uc
Microsoft Exchange Server Italy Home
http://www.microsoft.com/italy/server/exchange
© 2009 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only.
MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Scarica

Exchange 2010 Webcasts