Deploying SharePoint @ Cloud

Preview:

DESCRIPTION

Implementando SharePoint en la Nube (Azure + Offie 365 + Ambientes Híbridos)

Citation preview

IT Professionals

Juan Andrés Valenzuela | Microsoft MVP SharePoint | BDM GTI Chile S.A.jvalenzuela@gtichile.cl | http://jandresval.wordpress.com

Implementando SharePoint en Azure

Agenda

CONTROL

CO

ST

-E

FFIC

IEN

CY

SharePoint (On-premise)

• SharePoint

Value Prop:• Full h/w control – size/scale

• Roll-your-own HA/DR/scale

Value Prop:• 100% of API surface area

• Easy migration of existing apps

• Roll-your-own HA/DR/scale

SharePoint (IaaS)

• Hosted SharePoint

Value Prop:• Auto HA, Fault-Tolerance

• Friction-free scale

• Self-provisioning, mgmt. @ scale

• SharePoint Service

Office 365 (SaaS)

SharePoint for Internet Sites (FIS)Public facing, anonymous access sites

Developer, Test and Staging Environments Quickly provision and un-provision entire environments

Hybrid ApplicationsApplications that span your data center and the cloud

Disaster RecoveryQuickly recover from a disaster, only pay for use

Product Support

FAST Support

SharePoint Online Feature Availability in O365http://technet.microsoft.com/library/jj819267.aspx

Forklift Migration

Hybrid Migration

IaaS to PaaS Migration

Migrating an Existing Virtual Machine

Build VMs in the Cloud

Cloud Svc

SP2013 WAC AD SQLSP2013 WAC AD SQL

Hyper-V Azure Virtual Machines

SP

2013.v

hd

WA

C.v

hd

AD

.vh

d

SQ

L.V

HD

SP

2013.v

hd

WA

C.v

hd

AD

.vh

d

SQ

L.V

HD

File System Azure Storage

Add-AzureDisk

Software Requirements

Licensing

Hardware Requirements

Web Tier

Application Tier

Database Tier

Load Balancer

Web Front End

Application Server

Central Admin

Database Server

Config and Content DB

IaaS

PaaS

SaaS

AD/DC/DNSLB WFE SQLAppSvr

80/443

2013

VPN Tunnel

Cloud Svc

Cloud Svc

Virtual NetworkOnPremNetwork

WAC

1

WFE

2

WFE

3

WFE

4

WFE

1WAC

2

APP

1

APP

2

SQL

2

SQL

1

AD

1

AD

2

AD

1

DATADATA

APPS

Internet

Client App Part (Trust)

Provider-hostedO365

Web Role

REST + OAuth and OData +

client object models

SQL Database

Worker Role

Popular open source appsLaunch a professional looking site with a few clicks using apps like WordPress, Joomla!, Drupal, DotNetNuke and Umbraco

Porting existing web sitesIf it runs on IIS 7, it will run on Windows Azure Web Sites

Simple web appsPerfect if your app consists of client side markup and scripting, server side scripting and a database

Apps that require advanced administrationCloud-based applications that require admin access, remote desktop access or elevated permissions

Multi-tier applicationsCloud-based applications that separate application logic into multiple tiers (i.e. caching middle tier, asynchronous background processes like order processing) using both Web and Worker Roles

Apps that require advanced networkingCloud-based applications that require network isolation for use with Windows Azure Connect or Windows Azure Virtual Network

http://www.windowsazure.com/manage/windows/

Get-AzureVM -ServiceName '<cloud service>' | foreach {

$path = 'c:\vms\' + $_.Name + '.xml'

Export-AzureVM -ServiceName '<cloud service>' -Name $_.Name -Path $path

}

# Faster way of removing all VMs while keeping the cloud service/DNS name

Remove-AzureDeployment -ServiceName '<cloud service>' -Slot Production -Force

Export

$vms = @()

Get-ChildItem 'c:\vms\' | foreach {

$path = 'c:\vms\' + $_

$vms += Import-AzureVM -Path $path

}

New-AzureVM -ServiceName '<cloud service>' -VMs $vms

Import

## Create SP WFE1

$spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe `

-ImageName $spimage -InstanceSize Medium |

$dns1 = New-AzureDns -Name 'dns1' -IPAddress '10.1.2.4'

New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname `

-DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1,

$spsql2

Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd `

-Domain $domain -DomainUserName $domuser -DomainPassword $dompwd `

-MachineObjectOU $advmou -JoinDomain $joindom |

Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' `

-LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 `

-ProbePath '/healthcheck/iisstart.htm' |

Set-AzureSubnet $spsubnet

. . .

## Create SP WFE1

$spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe `

-ImageName $spimage -InstanceSize Medium |

$dns1 = New-AzureDns -Name 'dns1' -IPAddress '10.1.2.4'

New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname `

-DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1,

$spsql2

Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd `

-Domain $domain -DomainUserName $domuser -DomainPassword $dompwd `

-MachineObjectOU $advmou -JoinDomain $joindom |

Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' `

-LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 `

-ProbePath '/healthcheck/iisstart.htm' |

Set-AzureSubnet $spsubnet

. . .

## Create SP WFE1

$spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe `

-ImageName $spimage -InstanceSize Medium |

$dns1 = New-AzureDns -Name 'dns1' -IPAddress '10.1.2.4'

New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname `

-DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1,

$spsql2

Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd `

-Domain $domain -DomainUserName $domuser -DomainPassword $dompwd `

-MachineObjectOU $advmou -JoinDomain $joindom |

Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' `

-LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 `

-ProbePath '/healthcheck/iisstart.htm' |

Set-AzureSubnet $spsubnet

. . .

## Create SP WFE1

$spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe `

-ImageName $spimage -InstanceSize Medium |

$dns1 = New-AzureDns -Name 'dns1' -IPAddress '10.1.2.4'

New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname `

-DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1,

$spsql2

Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd `

-Domain $domain -DomainUserName $domuser -DomainPassword $dompwd `

-MachineObjectOU $advmou -JoinDomain $joindom |

Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' `

-LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 `

-ProbePath '/healthcheck/iisstart.htm' |

Set-AzureSubnet $spsubnet

. . .

## Create SP WFE1

$spwfe1 = New-AzureVMConfig -Name 'SP-WFE1' -AvailabilitySetName $avsetwfe `

-ImageName $spimage -InstanceSize Medium |

$dns1 = New-AzureDns -Name 'dns1' -IPAddress '10.1.2.4'

New-AzureVM -ServiceName $cloudsvc -AffinityGroup $ag -VNetName $vnetname `

-DnsSettings $dns1 -VMs $spwfe1, $spwfe2, $spwfe3, $spwfe4, $spapp1, $spapp2, $spsql1,

$spsql2

Add-AzureProvisioningConfig -WindowsDomain -Password $dompwd `

-Domain $domain -DomainUserName $domuser -DomainPassword $dompwd `

-MachineObjectOU $advmou -JoinDomain $joindom |

Add-AzureInputEndpoint -Name 'http' -LBSetName 'lbhttp' `

-LocalPort 80 -PublicPort 80 -Protocol tcp -ProbeProtocol http -ProbePort 80 `

-ProbePath '/healthcheck/iisstart.htm' |

Set-AzureSubnet $spsubnet

. . .

Deployment Considerations for SharePoint 2013 on Windows Azure VMshttp://gallery.technet.microsoft.com/Technical-Deployment-db645804

SharePoint Deployment on Windows Azure VMshttp://www.microsoft.com/en-us/download/details.aspx?id=34598

SharePoint Deployment on Windows Azure Virtual Machineshttp://www.windowsazure.com/en-us/manage/windows/other-resources/sharepoint-on-azure/

Building a SharePoint Farm on Windows Azure with PowerShellhttp://blogs.msdn.com/b/pstubbs/archive/2012/09/03/building-a-sharepoint-2010-farm-on-windows-

azure-with-powershell.aspx