implementing sharepoint on azure, lessons learnt from a real world project

37
Implementing SharePoint on Azure. Lessons Learnt from a Real World Project K Mohamad Faizal, Microsoft Azure MVP www.zquad.in @kmdfaizal 6 6 th th March 2015- March 2015- 11AM 11AM

Upload: kmohamed-faizal-mvp

Post on 13-Apr-2017

421 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Implementing SharePoint on Azure. Lessons Learnt from a Real World Project K Mohamad Faizal, Microsoft Azure MVP www.zquad.in @kmdfaizal

66thth March 2015- 11AM March 2015- 11AM

Page 2: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Implementing SharePoint on Azure. Lessons Learnt from a Real World Project K Mohamad Faizal, Microsoft Azure MVP www.zquad.in / @kmdfaizal

Page 3: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Azure architecture concepts for SharePoint IT Pros

11 Virtual Network22 Cloud Service

44

Reserve IP / Domain Name 55

Database Planning and Disk Performance

Load Balancer Configuration66

33 SharePoint Server Topology

Page 4: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Microsoft positioning for SharePoint in Microsoft Azure

Page 5: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Azure architecture concepts for SharePoint IT Pros

Page 6: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Example — Hybrid on-premises and Azure

Reference architecture for a Microsoft Azure-based environment to integrate an on-premises environment

Virtual NetworkWindows Azure

VPN Gateway

Gatewaysubnet

Active VPN

Cloud Service

Availability Set

Active Directory & DNS

Cloud Service Cloud Service

Active Directory

Windows Server 2012 RRAS

Availability Set

Front End

Availability Set

Distributed Cache

Availability Set

Search Front End

Availability Set

Search Backend

Availability Set

Backend

On-premises environment

Availability Set

Database

B

Microsoft Azure

Page 7: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Virtual network

A container where you define the IP address ranges your virtual machines will use. Microsoft Azure uses infinite-lease DHCP addresses and you can’t assign static IP addresses.

Virtual NetworkWindows Azure

Active Directory

Windows Server 2012 RRAS

On-premises environment

B

Microsoft Azure

Page 8: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Site-to-Site VPN gateway and subnet

When you setup a VPN connection, the VPN service resides in a separate subnet. Microsoft Azure manages the primary and secondary instances of this service for high availability. You will not see the secondary instance. You do not need to configure high availability for the VPN service.

Virtual NetworkWindows Azure

VPN Gateway

Gatewaysubnet

Active VPN

Active Directory

Windows Server 2012 RRAS

On-premises environment

Standby VPN

Not visible. Automatically configured and managed by Azure.

B

Microsoft Azure

Page 9: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Cloud services

Cloud services are typically used to group VMs by role based on functionality that takes place at the cloud service level

Virtual NetworkWindows Azure

VPN Gateway

Gatewaysubnet

Active VPN

Cloud Service Cloud Service Cloud Service

Active Directory

Windows Server 2012 RRAS

On-premises environment

Active Directory and DNS

SharePoint Server roles Database servers

Plan cloud services before creating VMs!

B

Microsoft Azure

Page 10: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

10

Cloud services

B

Page 11: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Availability sets and fault domains

Configure identical server roles to be part of an availability set. This ensures that the VMs are spread across multiple fault domains.

A fault domain is a grouping of hardware in which role instances run.

Cloud Service

Availability Set

Active Directory & DNS

Cloud Service Cloud Service

Availability Set

Front End

Availability Set

Distributed Cache

Availability Set

Search Front End

Availability Set

Search Backend

Availability Set

Backend

Availability Set

Database

B

Page 12: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

12

Virtual Machine Availability Sets Putting two or more VMs in availability sets

guarantees that your VMs are spread across multiple racks in the Azure Data Centers.

This means redundant power supply, switches and servers.

99.95% SLA

Page 13: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

SharePoint Server Topology

Page 14: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Use Larger Memory SKUsNumber of

Server Cores Server SKUApprox. Cost

$/Month US-WestRAM in GB

Local Disk Size in GB

4 Cores

A3 Basic $229 7 120 Std

A3 Standard $268 7 285 Std

A6 Standard $491 28 285 Std

D3 $509 14 200 SSD

D12 $600 28 200 SSD

8 Cores

A4 Basic $458 14 240 Std

A4 Standard $536 14 605 Std

A7 Standard $982 56 605 Std

D4 $1,018 28 400 SSD

D13 $1,080 56 400 SSD

Page 15: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Use Larger Memory SKUs

Page 16: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Web Front End Tier

Availability Set #1

Front End ServicesDistibuted Cache

Workflow Manager Query Processing

Front End ServicesDistibuted Cache

Workflow Manager Query Processing

Index Partion #0 Index Partion #0Replica

Front End ServicesDistibuted Cache

Workflow Manager Query Processing

ReplicaReplica

XL - 8 cores / 14GB

C: (System) 127GBD: (Page File, Blob Cache) 604GBE: (Log) 40GBF: (Index) 500GB

C: (System) 127GBD: (Page File, Blob Cache) 604GBE: (Log) 40GBF: (Index) 500GB

C: (System) 127GBD: (Page File, Blob Cache) 604GBE: (Log) 40GBF: (Index) 500GB

XL - 8 cores / 14GB XL - 8 cores / 14GB

Replica

Front End ServicesDistibuted Cache

Workflow Manager Query Processing

XL - 8 cores / 14GB

C: (System) 127GBD: (Page File, Blob Cache) 604GBE: (Log) 40GBF: (Index) 500GB

K

Page 17: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

App Server Tier

Availability Set #2

Content Processing

Admin

Crawl

Analytics Back End Services

Content Processing

Admin

Crawl

Analytics Back End Services

C: (System) 127GBD: (Page File) 604GBE: (Log) 40GBF: (Analytics) 300GB

C: (System) 127GBD: (Page File) 604GBE: (Log) 40GBF: (Analytics) 300GB

XL - 8 cores / 14GB XL - 8 cores / 14GB

Content Processing

Admin

Crawl

Analytics Back End Services

C: (System) 127GBD: (Page File) 604GBE: (Log) 40GBF: (Analytics) 300GB

XL - 8 cores / 14GB

K

Page 18: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Data Server Tier

Availability Set #3

Availability Group #1

Availability Group #2

Availability Group #3

Search

Content

Content

Configuration

Service Applications

C: (System) 127GBD: (Page File) 604GBE:, F:, G:, H: (TempDB Files) 500GBI: (TempDB Logs) 500GBL: (Transaction Logs) 500GBJ:, K:, M:, N: (Content Data) 1024GBO: (Search Databases) 1024GB

XL - 8 cores / 14GB XL - 8 cores / 14GB

C: (System) 127GBD: (Page File) 604GBE:, F:, G:, H: (TempDB Files) 500GBI: (TempDB Logs) 500GBL: (Transaction Logs) 500GBJ:, K:, M:, N: (Content Data) 1024GBO: (Search Databases) 1024GB

Content

Content

Configuration

Service Applications

C: (System) 127GBD: (Page File) 604GBE:, F:, G:, H: (TempDB Files) 500GBI: (TempDB Logs) 500GBL: (Transaction Logs) 500GBJ:, K:, M:, N: (Content Data) 1024GBO: (Search Databases) 1024GB

XL - 8 cores / 14GB

K

Page 19: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Database Planning and Disk Performance

Page 20: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Improve SQL Performance

Page 21: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Improve SQL Performance

Page 22: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

New Azure Capabilities

Page 23: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Database Planning

Page 24: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

25

Database Planning

Set Minimum and Maximum Server Memory

Max Degree ofParallelism = 1

Page 25: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Database Planning

Page 26: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Audit Log Planning

Page 27: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Resaved IP and Load Balancer Configuration

Page 28: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Reserved IP Addresses• Incase virtual machines are shut down, your IP release and you will another

IP when u restart you VM, Reserved IP help persistent the external IP• Reserved IP Addresses for Cloud Service Ips• Persistent external IP address even if all virtual machines are stopped or

deleted.• The first 5 reserved IPs IN USE is free. If they are left unused you have to pay for them. • The pricing is cheap at $0.005 per hour per IP (~$4/month per IP).• EA subscriber your subscription is limited to at most 5 IPs.

Set via the Azure PowerShell CmdletsNew-AzureReservedIP -ReservedIPName "myIP" `-Location "West US"New-AzureVM -ReservedIPName "myIP" ...

Page 29: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Port Forwarding Input Endpoints• Cloud service has only one external IP address, port

forwarding is used to direct various access requirements to the right location

Port 3389

Port 3389

Port 53591

Port 6237

Remote Desktop connection

Cloud Service

Page 30: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Configure External Load Balancer• Azure Load Balancer to distribute a specific type of

traffic between multiple virtual machines or services• Azure provides random distribution of the incoming

traffic.

Port 80

Port 80

Port 80

Cloud Service

Cloud Service VIP

Page 31: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

TCP Health Probe• The default load balancer probe settings are set to TCP• Load Balancer Probes Every 15 seconds• Looks for ACK on socket connect• Traffic stops until ACK received (two failures) • LB consider the node offline and will stop directing traffic to it• Continues Polling

Port 80

Port 80

Port 80

Cloud Service

Cloud Service VIP

Probe

Page 32: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

HTTP Health Probe• HTTP gives you a bit more flexibility and power on what actions you can take• Health probe every 15 seconds• ProbePath is essentially a relative HTTP URL on your web servers that will respond

with an HTTP 200 if the server is fine and ANY other response if the node will be taken out of rotation

• Continues polling until healthy

Port 80

Port 80

Port 80

Cloud Service

Cloud Service VIP

Probe

Page 33: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Internet sites — lessons learned

Page 34: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Global Azure Bootcamp in Singapore• 25th April 2015• http://globalazurebootcampsg.azurewebsites.net• http://azuresgbootcamp.eventbrite.sg• http://www.meetup.com/mssgug/

Page 35: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Related ContentIntroduction to SharePoint and Windows Azure IaaS, By Kirk EvansIntroduction to SharePoint and Windows Azure IaaS, By Kirk EvansArchitect, Azure Modern Apps COEArchitect, Azure Modern Apps COE

SPC3992- SharePoint Solutions and Architectures on Windows Azure, By Kirk EvansSPC3992- SharePoint Solutions and Architectures on Windows Azure, By Kirk EvansArchitect, Azure Modern Apps COE Architect, Azure Modern Apps COE

Architecting SharePoint for the Cloud, Jared Shockley, Sr. IT Service Engineer, Microsoft Architecting SharePoint for the Cloud, Jared Shockley, Sr. IT Service Engineer, Microsoft ITIT

Michael Washam, Michael Washam, CEO – Opsgility – Microsoft Azure and DevOps Training CEO – Opsgility – Microsoft Azure and DevOps Training

Page 36: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

38

FILL IN YOUR EVALS

FEEDBACK TO USFEEDBACK TO US++

LUCKY DRAW PRIZES LUCKY DRAW PRIZES FOR YOU! FOR YOU!

=

Page 37: Implementing SharePoint on Azure, Lessons Learnt from a Real World Project

Thank You www.systemcenteruniverse.asia

…for updated content and NEWS