Ahmed ElSayed ahmelsayed SDE Azure Websites DEVB329 I Development and Deployment II Debugging and Investigations III Management and Administration This Session Deploying from Visual Studio ID: 327349
Download Presentation The PPT/PDF document "Deep Dive for Microsoft Azure Websites" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1Slide2
Deep Dive for Microsoft Azure Websites
Ahmed ElSayed (@ahmelsayed)SDE – Azure Websites
DEV-B329Slide3
I- Development and Deployment
II- Debugging and InvestigationsIII- Management and AdministrationThis SessionSlide4
Deploying from Visual StudioDeploying from Source Control
Continuous deployment (Visual Studio Online, Github, Bitbucket etc…)I- Development and DeploymentSlide5
Staged Publishing
I- Development and Deployment
Staging
Production
swap
Developer
Production
Developer
traffic
trafficSlide6
Demo
continuous deployment with staged publishingSlide7
Deploying from Visual StudioDeploying from Source Control
Continuous deployment (Github, Bitbucket, etc…)Custom deployment scriptsAnything from small deployment tweaks to complex workflowsE.g.: can be used to run tests (sample
here
)
I- Development and DeploymentSlide8
Demo
Custom deployment scriptsSlide9
WebJobs with Visual Studio
I- Development and DeploymentSlide10
Demo
Creating and deploying a WebJob using Visual StudioSlide11
VS Online “Monaco”
I- Development and Deployment
GitHub
swap
Developer 1
Developer 2
Staging
Production
VS Online “Monaco”
Developer 3Slide12
Demo
MonacoSlide13
Testing in Production
I- Development and Deployment
Staging
Production
swap
Developer
100% production.comSlide14
Testing in Production
I- Development and Deployment
Staging
Production
swap
Developer
80% production.com
2
0% production.comSlide15
Demo
Testing in ProductionSlide16
Visual Studio Tools
II- Debugging and InvestigationsSlide17
Demo
Remote debugging, log streaming, and accessing files from Visual StudioSlide18
Demo
Remote debugging Java Applications using Eclipsehttps://github.com/Azure/azure-websites-java-remote-debugging Slide19
Demo
Remote debugging NodeJs Applications using Node InspectorSlide20
Kuduhttp
s://<mySite>.scm.azurewebsites.net/AuthenticatedRuns in the same security context as the main site
Can access the site files and environment variables
Great for admin and debugging tools
II- Debugging and InvestigationsSlide21
Demo
Kudu Console, Process Explorer, and APIsSlide22
More on Kudu
Open Source: https://github.com/projectkudu/kuduWe accept contributions!Git, Mercurial, logging, WebJobs, admin tools, etc…Post deployment hooksNotification fires after deployment completion
Payload contains details about the deployment
It’s a “Site Extension”. More on this later
II- Debugging and
InvestigationsSlide23
Support site
https://<mySite>.scm.azurewebsites.net/SupportLive view of number of requests
Ability to analyze and get memory dumps per request
II- Debugging and InvestigationsSlide24
Demo
Support siteSlide25
III- Management and Administration
Azure Portal(s)
IIS Manager
PowerShell
xplat
CLI
Visual Studio
Azure API
Azure Web SiteSlide26
Azure Resource Manager (ARM) Templates
Templates that describe a collection of Azure resourcesIdempotent template, so you can apply multiple times for the same result.III- Management and AdministrationSlide27
Simplified ARM template
"resources": [
{
"type"
:
"
Microsoft.Web
/
serverfarms
"
...
},
{
"type": "Microsoft.Web/sites"
...
}
]Slide28
Demo
Azure PowerShell and ARM TemplatesSlide29
Demo
IIS ManagerSlide30
Role Based Authentication Control (RBAC)
OwnerContributorReaderIII- Management and AdministrationSlide31
Demo
RBACSlide32
Site Extensions
Only the site Owners or Contributors can access them.Runs in the same security context as the site.Have access to the files and environmentKudu is a Site ExtensionVS Online “Monaco”
is a Site Extension
You can write and share your own!
http://azure.microsoft.com/blog/2014/09/09/writing-a-site-extension-for-azure-websites
/
III-
Management and AdministrationSlide33
Site Extensions
Azure Web Site
User Site
Pre-installed
Site Extensions
“Kudu”
“Monaco”
WebJobs
WebDeploy
“Bring your own”
Site Extensions
Upload to site
Install from gallery
foo.azurewebsites.net
foo.
scm
.azurewebsites.netSlide34
Ahmed ElSayed
Email: ahmels@microsoft.comGithub: @ahmelsayedMore questions?Slide35
http://www.visualstudio.com
http://blogs.msdn.com/b/developer-tools/
http://msdn.microsoft.com/vstudio
DEV Track Resources
visualstudio
@
visualstudio
visualstudioSlide36
Resources
Learning
Microsoft Certification & Training Resources
www.microsoft.com/learning
Developer Network
http
://developer.microsoft.com
TechNet
Resources for IT Professionals
http://microsoft.com/technet
Sessions on Demand
http://channel9.msdn.com/Events/TechEdSlide37
Please Complete An Evaluation FormYour input is important!
TechEd Schedule Builder
CommNet
station
or PC
TechEd Mobile
app
Phone or Tablet
QR codeSlide38
Evaluate this sessionSlide39
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.