Thursday, November 15, 2012

Windows Server 2012 SMB 3.0 en Exchange databases

SMB 3.0 is een wat technische term voor het nieuwe storage transport protocol in Windows Server 2012. Achter deze technische term zit een forse verbetering in performance en bovendien een groot aantal nieuwe features. Bijvoorbeeld:

  • SMB Transparent failover
  • SMB Scaleout
  • SMB Multichannel
  • SMB Direct
  • SMB Encryption
  • VSS for SMB file shares
  • SMB Directory Leasing
  • SMB PowerShell

Met SMB 3.0 wordt het mogelijk om ook zeer I/O intensieve toepassingen tegen een fileshare te laten ‘praten’ in plaats van direct naar de disks. Zo is het voor SQL Server 2008 R2 en 2012 toegestaan om de databases op een fileshare te plaatsen:

image

De voordelen van zo’n opstelling zijn legio, bijvoorbeeld dat je IOPs gewoon over goedkoop ethernet kunnen lopen of dat je een database heel eenvoudig aan een andere server kunt toewijzen. Zo ontstaat vanzelf de vraag of dit ook ondersteund gaat worden voor Exchange. Tot nu toe is het niet supported om de databases op een NAS of fileserver te plaatsen, Exchange vereist namelijk block-level toegang tot de storage, daar mag niet nog een SMB of netwerklaag tussen zitten. En ook met Server 2012 en Exchange 2013 blijft dit het support standpunt, wat kan met SQL gaat dus niet op voor Exchange. De reden is dat veel optimalisaties in Exchange uitgaan van directe toegang tot de disks, voor SMB zouden allerlei routines herschreven moeten worden.

Er is een uitzondering… Wanneer je Exchange in een VM draait op Hyper-V in Server 2012 dan mogen de virtuele harddisk bestanden op een SMB 3.0 share op worden geslagen. Interessant detail is dat Exchange nog steeds block-level toegang krijgt tot de storage, maar dat de virtualisatielaag vervolgens SMB 3.0 gebruikt om de data daadwerkelijk naar disks te schrijven of er van te lezen.

Nu is het de vraag of hier verandering in gaat komen. Mijn ervaring is dat er voor Microsoft een duidelijke driver moet zijn om hier tijd (lees: programmeurs) voor vrij te maken, zo was bijvoorbeeld de aanstaande lancering van Hyper-V reden om het supportstandpunt mbt. virtualisatie te moderniseren. Op dit moment zien we dat de meeste ontwikkelingen in Exchange gedreven worden door de eigen ervaringen in de Office 365 datacenters. Neem bijvoorbeeld de Exchange 2013 architectuur die vooral voordelig is voor zeer grote omgevingen en geleidelijke upgrades makkelijker maakt.

Wat storage betreft richt Microsoft zich momenteel op het plaatsen van meerdere databases op een fysieke disk (zonder RAID) en het bijhouden van meerdere kopieën in een DAG. Voor Office 365 is het scenario met Exchange databases op een fileshare dus niet interessant. Verder ondersteunt Exchange sinds 2010 al een ruime variatie aan storage-oplossingen. Daarom verwacht ik niet dat Microsoft Exchange databases op een SMB 3.0 fileshare op korte termijn zal gaan ondersteunen.

No comments: