Sr. Solution Architect , Microsoft Most Valuable Professional, Microsoft Technical 
Community Leader, Microsoft Certified Trained ,MCPD ,MCTS , MCTIP. For SharePoint and 
.NET /Azure 
Vice -President, Technology Middle east and Europe (DAVIGOLD LLC)
Windows Azure 
$
pay only for what you use 

no upfront costs
per minute billing
no charge for 
$ stopped VMs
Global 
Footprint
Pay for what you use
Cloud Computing
Virtual Machines 
 
 

VM with VM with p eprseisrtseinstt ednrivt edrive
VM with VM with p eprseisrtseinstt ednrivt edrive
VM with VM with p eprseisrtseinstt ednrivt edrive
VM with persistent drive
Load Balancing and High Availability
Windows Azure Virtual Networks 
Build virtual networks that scale 
• Traditional, familiar approach to build extension to datacenter 
• Scalable approach to building virtual networks 
Control over network configuration 
• Define your own IP address ranges 
• Be compliant with corporate IT security policy 
Enables rich hybrid scenarios 
• Hybrid apps can reach all or portion of the on-premise network 
• Works with both Windows and non-Windows systems
10.1.2.0/24 10.1.3.0/24 
10.2.2.0/24 10.2.3.0/24
SQL Database 
 
 

Web Sites 
 Build with ASP.NET, Node.js or PHP 
 Deploy in seconds with FTP, Git or TFS 
 Easily scale up as demand grows
Windows Azure Web Site Service 
Load Balancer 
(1 of n) 
Reserved Instance 
Virtual Machine with 
IIS already setup 
(1 of n…) 
Load Balancer 
(2 of n) 
Server Failure…. 
(2 of n…) 
Deployment 
Service 
(FTP, WebDeploy, 
GIT, TFS, etc) 
Dev tool or 
Automation 
Script 
(1 of 2) 
Reserved Instance 
Virtual Machine with 
IIS already setup 
(2 of 2) 
Reserved Instance 
Virtual Machine with 
IIS already setup 
(2 of 2)
AutoScale – Built-into Windows Azure 
• AutoScale based on real usage 
• CPU % thresholds 
• Queue Depth 
• Supports schedule times
Storage 
 
 
 

Active Directory 
 Active Directory in the Cloud 
 Integrate with on-premises Active Directory 
 Enable single sign-on within your apps 
 Supports SAML, WS-Fed, and OAuth 2.0
application 
building blocks 
Cloud services
Agenda
Test. 
Please browse to this 
url and verify no web 
site is there 
http://SpAzureService.CloudApp.Net
Script is already running! 
Why? 
• It’s a long script 
• 2 hours to run in prior tests 
• Started running it at least an hour before this talk began 
• Timing should let the script finalize about 30 – 45mn into this talk 
K
Virtual Machines on Azure
Cloud Models 
Applications
MSDN Azure Benefits 
Subscription Levels 
Subscription 
Level 
Visual Studio 
Professional 
with MSDN 
Visual Studio Test 
Professional with 
MSDN 
MSDN Platforms 
Visual Studio 
Premium with 
MSDN 
Visual Studio 
Ultimate with 
MSDN 
Azure Credits 
included per 
month 
$50 $50 $100 $100 $150 
Spending Limit 
No Production Work
Other ways 
Pay as you go 
Pricing Calculator: 
http://azure.microsoft.com/en-us/pricing/calculator/ 
Free Trial 
http://azure.microsoft.com/en-us/pricing/free-trial/
Modern Development 
Get hip
Dev / Test 
SP DR3 
(Large) 
Cloud Service 
Virtual Network 
Windows Azure 
SQL DR1 
(A6) 
SP DR1 
(Large) 
AD1 
(X-Small) 
SQL DR2 
(A6) 
SP DR2 
(Large) 
SP DR4 
(Large) 
SP DR5 
(Large) 
Visual Studio Online 
Test Agents
Extranet and Public-Facing Internet 
Windows Azure On Premises 
Cloud Service 
Virtual Network 
Active 
Directory 
Site developers and 
authors 
VPN Tunnel 
Internet Zone 
Anonymous 
Extranet Zone Default Zone 
Windows Windows 
SAML 
FBA 
Visitors 
Partners and 
Customers
Affinity 
Group 
K
K
K
K
K
Azure Account 
80
SharePoint 2013 Automation Scripts 
PowerShell Scripts 
• Automated deployment of Active Directory, SQL Server and SharePoint 2013. 
• AD, SQL, SharePoint, in that order 
• Uses various technologies to configure VM’s, AD DS, Disks, SharePoint. 
Two Sample Configurations Available 
• HighlyAvailable and SingleVMs 
Download from GitHub 
• https://github.com/Azure/azure-sdk-tools-samples 
• Script as run today. Customized, debugged 
• https://github.com/mabranda/SPAzurePoSh 
K
Single Virtual Machines Template 
LB WEB/APP SQL AD/DC/DNS 
80 
20000 
Cloud Service 
Virtual Network 
Windows Azure 
Web/App Tier 
1 x Large 
(4 Cores & 7 GB) 
Data Tier 
1 x A6 
(4 Cores & 28 GB) 
Identity Tier 
1 Small 
(1 Core & 1.75 GB) 
K
My Environment Setup 
Available via Web Platform Installer 
Source code managed in GitHub 
Visual Studio 2013 
…or your favorite PowerShell Script Editor (ISE, PowerGUI) 
PowerShell Tools for Visual Studio 2013 
Available on Visual Studio Gallery. 
Can install directly from Visual Studio 
Used only to run PoSh within Visual Studio. 
All debugging, etc can be done in PowerShell ISE.
Technologies used in VM Connectivity 
Credential Security Service Provider 
Enables a client program to delegate credentials from the client computer to the target server. 
Used by RDP 
An open-standard management protocol. 
Simple Object Access Protocol (SOAP)-based, firewall-friendly protocol 
Remotely exchange management data with any computer device that implements the protocol. 
Microsoft’s implementation of WS-Management
Script Templates 
MS Official on GitHub 
https://github.com/Azure/azure-sdk-tools-samples 
Script as run today. 
Customized, debugged 
Updates in Azure PowerShell causes some of the commands to fail 
https://github.com/mabranda/SPAzurePoSh
Preparation 
Set-ExecutionPolicy ByPass 
Suppresses all confirmation, warnings, lets you run unsigned code 
Enable-PSRemoting 
Enables PowerShell Remoting. Win 7 or later. 
Will fail if a network connection is listed as “Public” 
Enable-WSManCredSSP -role client -delegatecomputer "*.cloudapp.net“ 
Enable CredSSP for delegation of credentials 
$regKey = "HKLM:SYSTEMCurrentControlSetControlLsaCredsspPolicyDefaultsAllowFreshCredentialsDomain" 
Set-ItemProperty $regKey -Name WSMan -Value "WSMAN/*.cloudapp.net“ 
Enable CredSSP
Preparation 
Start > Run > gpedit.msc 
Navigate to Computer Configuration > Administrative Templates > System > Credentials Delegation 
Allow Delegating Fresh Credentials 
Enable 
Add Servers > wsman/*.cloudapp.net 
Allow Delegating Fresh Credentials with NTLM-only server authentication 
Enable 
Add Servers > wsman/*.cloudapp.net 
May need to gpupdate for changes to take effect
Check your subscription 
Depending on prior installations, subscription level, you may not have enough cores / storage, etc to 
successfully run the script. 
Check Cores 
Get-AzureSubscription -Current -ExtendedDetails
Running the script 
Will call all other scripts 
Fill out all parameters in the call to Autoconfigure 
Fill out the values in the XML configuration files
Outdated Cmdlets 
Rapid Release means we update the Azure module often enough so that old paths and cmdlets may be outdated. 
Web Platform Installer has latest version 
Verify your version using 
(Get-Module).Version 
Current version as of 7/10/2014 is 0.8.4
DisableLoopBackCheck!
Storage Accounts Gotcha 
Storage Account can only contain numbers and lowercase characters. 
Will cause an error when calling Create-AzureStorageAccount. 
Must be between 3 and 24 characters. 
I was using SpAzureStorage, which won't work. Changed to spazurestorage.
Other issues 
$store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadOnly) 
$store.Certificates | ?{$_.Subject -like "*SpAzure*"} | select DNSNameList 
$store.Close() 
Had to use “STS#0” 
Noted in the SpAzurePoSh project on GitHub
Connecting 
Visible on the Virtual Machines management node on Azure 
Add the RDP endpoint to an mstsc command to connect.
Resources 
Windows Azure Training Kit 
Kirk Evans Presentation from SPC14
SharePoint 2013 Automation Scripts 
https://github.com/windowsazure/azure-sdk-tools-samples
start now. 
http://WindowsAzure.com
Deep technical content and 
free product evaluations 
TechNet Virtual Labs 
Hands-on deep technical labs Free, online, 
technical courses 
Download Microsoft software 
trials today. 
Find Hand On Labs. Take a free online course. 
Technet.microsoft.com/evalcenter Technet.microsoft.com/virtuallabs microsoftvirtualacademy.com
Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros

Windows azure overview for SharePoint Pros

  • 2.
    Sr. Solution Architect, Microsoft Most Valuable Professional, Microsoft Technical Community Leader, Microsoft Certified Trained ,MCPD ,MCTS , MCTIP. For SharePoint and .NET /Azure Vice -President, Technology Middle east and Europe (DAVIGOLD LLC)
  • 3.
  • 4.
    pay only forwhat you use 
  • 5.
  • 6.
  • 7.
    no charge for $ stopped VMs
  • 8.
  • 9.
    Pay for whatyou use
  • 10.
  • 12.
  • 14.
    VM with VMwith p eprseisrtseinstt ednrivt edrive
  • 15.
    VM with VMwith p eprseisrtseinstt ednrivt edrive
  • 16.
    VM with VMwith p eprseisrtseinstt ednrivt edrive
  • 17.
  • 18.
    Load Balancing andHigh Availability
  • 19.
    Windows Azure VirtualNetworks Build virtual networks that scale • Traditional, familiar approach to build extension to datacenter • Scalable approach to building virtual networks Control over network configuration • Define your own IP address ranges • Be compliant with corporate IT security policy Enables rich hybrid scenarios • Hybrid apps can reach all or portion of the on-premise network • Works with both Windows and non-Windows systems
  • 20.
  • 25.
  • 28.
    Web Sites Build with ASP.NET, Node.js or PHP  Deploy in seconds with FTP, Git or TFS  Easily scale up as demand grows
  • 29.
    Windows Azure WebSite Service Load Balancer (1 of n) Reserved Instance Virtual Machine with IIS already setup (1 of n…) Load Balancer (2 of n) Server Failure…. (2 of n…) Deployment Service (FTP, WebDeploy, GIT, TFS, etc) Dev tool or Automation Script (1 of 2) Reserved Instance Virtual Machine with IIS already setup (2 of 2) Reserved Instance Virtual Machine with IIS already setup (2 of 2)
  • 30.
    AutoScale – Built-intoWindows Azure • AutoScale based on real usage • CPU % thresholds • Queue Depth • Supports schedule times
  • 31.
  • 32.
    Active Directory Active Directory in the Cloud  Integrate with on-premises Active Directory  Enable single sign-on within your apps  Supports SAML, WS-Fed, and OAuth 2.0
  • 34.
  • 36.
  • 38.
    Test. Please browseto this url and verify no web site is there http://SpAzureService.CloudApp.Net
  • 39.
    Script is alreadyrunning! Why? • It’s a long script • 2 hours to run in prior tests • Started running it at least an hour before this talk began • Timing should let the script finalize about 30 – 45mn into this talk K
  • 41.
  • 42.
  • 44.
    MSDN Azure Benefits Subscription Levels Subscription Level Visual Studio Professional with MSDN Visual Studio Test Professional with MSDN MSDN Platforms Visual Studio Premium with MSDN Visual Studio Ultimate with MSDN Azure Credits included per month $50 $50 $100 $100 $150 Spending Limit No Production Work
  • 45.
    Other ways Payas you go Pricing Calculator: http://azure.microsoft.com/en-us/pricing/calculator/ Free Trial http://azure.microsoft.com/en-us/pricing/free-trial/
  • 47.
  • 48.
    Dev / Test SP DR3 (Large) Cloud Service Virtual Network Windows Azure SQL DR1 (A6) SP DR1 (Large) AD1 (X-Small) SQL DR2 (A6) SP DR2 (Large) SP DR4 (Large) SP DR5 (Large) Visual Studio Online Test Agents
  • 49.
    Extranet and Public-FacingInternet Windows Azure On Premises Cloud Service Virtual Network Active Directory Site developers and authors VPN Tunnel Internet Zone Anonymous Extranet Zone Default Zone Windows Windows SAML FBA Visitors Partners and Customers
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 58.
    SharePoint 2013 AutomationScripts PowerShell Scripts • Automated deployment of Active Directory, SQL Server and SharePoint 2013. • AD, SQL, SharePoint, in that order • Uses various technologies to configure VM’s, AD DS, Disks, SharePoint. Two Sample Configurations Available • HighlyAvailable and SingleVMs Download from GitHub • https://github.com/Azure/azure-sdk-tools-samples • Script as run today. Customized, debugged • https://github.com/mabranda/SPAzurePoSh K
  • 59.
    Single Virtual MachinesTemplate LB WEB/APP SQL AD/DC/DNS 80 20000 Cloud Service Virtual Network Windows Azure Web/App Tier 1 x Large (4 Cores & 7 GB) Data Tier 1 x A6 (4 Cores & 28 GB) Identity Tier 1 Small (1 Core & 1.75 GB) K
  • 61.
    My Environment Setup Available via Web Platform Installer Source code managed in GitHub Visual Studio 2013 …or your favorite PowerShell Script Editor (ISE, PowerGUI) PowerShell Tools for Visual Studio 2013 Available on Visual Studio Gallery. Can install directly from Visual Studio Used only to run PoSh within Visual Studio. All debugging, etc can be done in PowerShell ISE.
  • 62.
    Technologies used inVM Connectivity Credential Security Service Provider Enables a client program to delegate credentials from the client computer to the target server. Used by RDP An open-standard management protocol. Simple Object Access Protocol (SOAP)-based, firewall-friendly protocol Remotely exchange management data with any computer device that implements the protocol. Microsoft’s implementation of WS-Management
  • 63.
    Script Templates MSOfficial on GitHub https://github.com/Azure/azure-sdk-tools-samples Script as run today. Customized, debugged Updates in Azure PowerShell causes some of the commands to fail https://github.com/mabranda/SPAzurePoSh
  • 64.
    Preparation Set-ExecutionPolicy ByPass Suppresses all confirmation, warnings, lets you run unsigned code Enable-PSRemoting Enables PowerShell Remoting. Win 7 or later. Will fail if a network connection is listed as “Public” Enable-WSManCredSSP -role client -delegatecomputer "*.cloudapp.net“ Enable CredSSP for delegation of credentials $regKey = "HKLM:SYSTEMCurrentControlSetControlLsaCredsspPolicyDefaultsAllowFreshCredentialsDomain" Set-ItemProperty $regKey -Name WSMan -Value "WSMAN/*.cloudapp.net“ Enable CredSSP
  • 65.
    Preparation Start >Run > gpedit.msc Navigate to Computer Configuration > Administrative Templates > System > Credentials Delegation Allow Delegating Fresh Credentials Enable Add Servers > wsman/*.cloudapp.net Allow Delegating Fresh Credentials with NTLM-only server authentication Enable Add Servers > wsman/*.cloudapp.net May need to gpupdate for changes to take effect
  • 66.
    Check your subscription Depending on prior installations, subscription level, you may not have enough cores / storage, etc to successfully run the script. Check Cores Get-AzureSubscription -Current -ExtendedDetails
  • 68.
    Running the script Will call all other scripts Fill out all parameters in the call to Autoconfigure Fill out the values in the XML configuration files
  • 69.
    Outdated Cmdlets RapidRelease means we update the Azure module often enough so that old paths and cmdlets may be outdated. Web Platform Installer has latest version Verify your version using (Get-Module).Version Current version as of 7/10/2014 is 0.8.4
  • 70.
  • 71.
    Storage Accounts Gotcha Storage Account can only contain numbers and lowercase characters. Will cause an error when calling Create-AzureStorageAccount. Must be between 3 and 24 characters. I was using SpAzureStorage, which won't work. Changed to spazurestorage.
  • 72.
    Other issues $store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadOnly) $store.Certificates | ?{$_.Subject -like "*SpAzure*"} | select DNSNameList $store.Close() Had to use “STS#0” Noted in the SpAzurePoSh project on GitHub
  • 73.
    Connecting Visible onthe Virtual Machines management node on Azure Add the RDP endpoint to an mstsc command to connect.
  • 75.
    Resources Windows AzureTraining Kit Kirk Evans Presentation from SPC14
  • 76.
    SharePoint 2013 AutomationScripts https://github.com/windowsazure/azure-sdk-tools-samples
  • 77.
  • 78.
    Deep technical contentand free product evaluations TechNet Virtual Labs Hands-on deep technical labs Free, online, technical courses Download Microsoft software trials today. Find Hand On Labs. Take a free online course. Technet.microsoft.com/evalcenter Technet.microsoft.com/virtuallabs microsoftvirtualacademy.com

Editor's Notes

  • #9 Speaking Points: Microsoft Azure itself is deployed around the world With Microsoft Azure, we have a concept of regions, which is where you choose to place your code and run. In each of the regions, we have a Microsoft datacenter. These datacenters are massive facilities that host 10s or in some cases hundreds of thousands of servers We have currently four regions in North America, two regions in Europe, and two in Aisa As you can see on this slide we also have a number of CDN edge points, which we can use to cache your content and deliver it even faster for customers. % What you’re going to see in the next couple months and years is that we will rapidly expand our datacenter footprint around the world, so you will have more options for running your applications. Once you build an application, you can choose where you want to run in the world and you can move your workloads from region to region. You can also run your application in multiple regions simultaneously and just direct traffic and customers to whichever version of the app is closest to them. That gives you a global footprint and a chance to reach a bigger customer base or audience in new markets Notes: Microsoft Azure services such as compute and storage are now available in 8 worldwide datacenters with an additional 24 Content Delivery Network endpoints. You can’t have a real cloud without a data center.
  • #10 Speaking Points: The final thing I’ll mention about Microsoft Azure, before we dive into the tour of services is the approach we’re taking with paying for services. This maybe different for many of you who are familiar with hosting providers and on-premises systems. With Microsoft Azure you pay only for what you use. There are no upfront cost There is no need to buy any up front server licenses, that’s just included in the price Likewise if you use a SQL database, through our SQL Database feature in Microsoft Azure, you don’t have to buy a SQL Server license, that’s also included in the price. For compute services such as Virtual Machines and Web Sites you only pay by the hour. This gives you the flexibility to run your applications very cost effectively. You can scale up and scale down your solutions or even turn them on and off as necessary. This also opens up a ton of possibilities in terms of the new types of apps you can build
  • #11 Slide Objectives: Explain the three established industry terms for cloud services Speaker Notes: There is a lot of talk in the industry about different terms like Platform as a Service, Infrastructure as a Service, and Software as a Service. Since PDC08 when we first announced the Azure our focus has been on delivering a platform as a service offering where you can build applications. Where the platform abstracts you from the complexities of building and running applications. We fundamentally believe that the future path forward for development is by providing a platform. In fact, as you’ll see in a few minutes, we believe that there are a number of new capabilities that should be delivered as services to the platform. Notes: There is a lot of confusion in the industry when it comes to the cloud. It’s important that you understand both what is happening in the industry and how we think about the cloud. This is the most commonly used taxonomy for differentiating between types of cloud services. The industry has defined three categories of services: IaaS – a set of infrastructure level capabilities such as an operating system, network connectivity, etc. that are delivered as pay for use services and can be used to host applications. PaaS – higher level sets of functionality that are delivered as consumable services for developers who are building applications. PaaS is about abstracting developers from the underlying infrastructure to enable applications to quickly be composed. SaaS – applications that are delivered using a service delivery model where organizations can simply consume and use the application. Typically an organization would pay for the use of the application or the application could be monetized through ad revenue. It is important to note that these 3 types of services may exist independently of one another or combined with one another.
  • #14 Slide Objectives: Explain Virtual Machine Portability with the VHD file format Speaking Points: There are a few aspects of the Microsoft Azure Virtual machines feature that are important to understand. The first, is the support for Virtual Machine Portability When you create a virtual machine in the cloud, as I just did, you are creating a VHD file It is encapsulating your OS instance as well as your data The VHD file format is that it is compatible across Microsoft Azure, Windows Server, and even Windows client. VHD is an open specification that we’ve released.
  • #15 Speaking Points: The second thing that I want to help you understand… neat thing that we’re doing with Microsoft Azure now is making it possible for you to mount durable drives to your virtual machine. We’re trying to do it in way that it is very reliable, consistent, and delivers a high performance. One of the things that’s different about how we enabled it is that when you mount a drive either in the portal or in the command line we are backing the disk with the Microsoft Azure Storage system that we’re running in the cloud today There are a couple nice characteristics about the storage system. Replication One is that we triple replicate the content within the data center. If a disk ever goes bad that you data is on then we have two other copies of the data that we can work with and we do not have any interruption of service We can then spin up a new replica once we detect a disk is bad From your VMs perspective you never know that an issue actually occurred [Transit to next slide] So you get much more reliability and an always on experience even when hardware fails One of the things that we provide which is a little different with Microsoft Azure is a really powerful storage architecture When we booted up our Virtual Machine and you saw all of the disks attached to it, the disks were not actually disks. They were virtual disks on top of our Microsoft Azure Storage system. We have redundancy built in for you. We can also load balance our reads and writes to the drives, so we can provide more predictable performance. On top of these physical drives that we use for blob storage we also have a set of SSD cache of drives. The benefit is that you are reading and writing through an SSD drive and then back to the physical disk.
  • #18 Speaking Points: This is designed to give you very reliable performance and hopefully it ensures that it is always on
  • #27 Speaking Points: We’ve talked about Virtual Machines and we’ve talked about Web Sites, now let’s talk about Cloud Services Cloud Services is another model we support for building applications. Cloud Services enable a broader set of workloads then Microsoft Azure Web Sites, while providing more automated management then Microsoft Azure Virtual Machines. Enables you to build what we sometimes refer to as infinitely scalable applications. They can support 1 to hundreds or thousands of course Support not only web based deployments, but also multi-tier architectures where you might have a combination of front ends, middle tiers, as well as virtual machines running as part of your solution. Supports automated application management, so it is really easy to deploy, scale out, isolate, and recover from any type of hardware failure. As well as support for automated updates.
  • #28 Speaking Points: Transition: So we’ve seen three ways to run your code in Microsoft Azure - Virtual machines, Web Sites, and Cloud Services Now let’s look at the fourth compute service called Microsoft Azure Mobile Services. Definition Mobile Services is an exciting new service that we introduced about three months ago and we’ve rapidly been updating with new features and services. I’m sure that many of you today are building device applications that need connectivity to services and data. Mobile Services are designed specifically to make it really simply for you to build cloud back-ends that power mobile device applications by providing common functionality you need as configurable services. Features: Mobile Services provides the ability to easily store and retrieve data, manage users with several different identify providers including Microsoft Account, Twitter, Facebook, and Google accounts, and the ability to send push notifications to devices. Today Mobile Services has native SDKs for Windows 8 Store applications, Windows Phone apps, and iOS applications. We’re also adding Android and HTML5 support in the near future.
  • #54 You can
  • #55 Avail set not used in this example because it’s just dev.
  • #56 Avail set not used in this example because it’s just dev.