Upload
kenny-abdiel-maita
View
250
Download
0
Embed Size (px)
Citation preview
Microsoft Confidential – Internal Use Only
IIS Web Eco-System
Kenny Abdiel Maita Premier Field Engineer 27th February 2013
Customer Service and Support
2Microsoft Confidential – Internal Use Only
1 MS Web Eco-system2 Web Platform Installer 3 Web Deploy4 Web App Gallery
Agenda.IIS Web Eco-System
4Microsoft Confidential – Internal Use Only
IIS Web Eco-system
Set of Servers, Databases, Frameworks, Tools, Applications, Hosting partners and training partners looking to help you succeed on the web.
6Microsoft Confidential – Internal Use Only
Web PI 4.5
Makes it easy for you to download, install, and keep up to date on the latest software components of the Microsoft® Web Platform for development and application hosting on the Windows® operating system.
• What it provides• Installation • How it works
7Microsoft Confidential – Internal Use Only
Web PI 4.5: What it provides
WPI allows for easier management, download and install of:
• IIS Components• SQL Server
Express/Compact• .Net Framework/PHP• IDE Tools and SDK• Apps from Gallery and
dependencies.
IIS Manager integration allows for usage simplicity
WebPICMD.exe:Used to script, installs and automate deployment of servers.3 Operation modes:• List products• Install products • Offline cache
8Microsoft Confidential – Internal Use Only
Web PI 4.5: Installation
http://www.microsoft.com/web/downloads/platform.aspx
12Microsoft Confidential – Internal Use Only
Web PI 4.5: Issues
If WebPI itself is failing to install – Check or Post the log file here: %temp%\webpi_launcher.txt
If WebPI is installed, but an application or product fails to install: Check or Post the latest WebPIx.txt file from here:
Win7/Vista/Win2k8 and above: %localappdata%\microsoft\web platform installer\logs\webpi
XP/Win2k3: %userprofile%\local settings\application data\microsoft\web platform installer\logs\webpi
WebPI is installed and you know specifically which product is failing: You can look for the installer log file from the component that failed.
Win7/Vista/Win2k8 and above: %localappdata%\microsoft\web platform installer\logs\install\<datetimestamp>
XP/Win2k3: %userprofile%\local settings\application data\microsoft\web platform installer\logs\install\<datetimestamp
http://forums.iis.net/1155.aspx
15Microsoft Confidential – Internal Use Only
Web Deploy V3.0
Web Deploy (msdeploy) simplifies deployment of Web sites, Web applications and Virtual directories to IIS servers. Administrators can use Web Deploy to synchronize content and configurations between IIS servers or migrate to newer versions of IIS. Additionally, Web Deploy tool enables administrators and delegated users to use IIS Manager to deploy ASP.NET and PHP applications to an IIS server.
• Main features • How it works• Usage scenarios
16Microsoft Confidential – Internal Use Only
Web Deploy: Main features
It simplifies the management and deployment of IIS on multiple servers (Win2003 and Higher)
www.iis.net/download/WebDeploy
Three primary tasks:• Sync• Package• Deploy
17Microsoft Confidential – Internal Use Only
Web Deploy: Main features
Sync
• Synchronize or migrate the entire Web server, a Web site or application.
• Synchronizes only the data that has changed
• Ability to detect missing dependencies during synchronization
• Automatically gathers content, IIS configuration, SSL certificates and ASP.NET configuration when you sync a Web site
Package• Package a Web
application or an entire site, including the associated databases.
• Package ACLs, COM, GAC and registry settings.
• Support both live servers and zipped packages as a source or destination.
Deploy
• Operations can be performed and can delegate tasks to non-administrators.
• Ability to add powerful parameters to change text in files when they are deployed.
18Microsoft Confidential – Internal Use Only
Web Deploy: How it works
Windows Service (Listening)
Hosting Escenarios
Win 2003-IIS RMWin VistaWin 7Win 2008Win 2008R2Win 8 (V3)Win 2012(V3)
Win 2003-IIS RMWin VistaWin 7Win 2008Win 2008R2Win 8 (V3)Win 2012(V3)
MsDepSvc.exe
8172
19Microsoft Confidential – Internal Use Only
Web Deploy: Verbs
VERBS
• Verbs are used to determine the operation that is being performed.
Dump
Sync – you will most commonly use this verb
Delete
getDependencies
getParameters
getSystemInfo
20Microsoft Confidential – Internal Use Only
Web Deploy: Providers
Providers
• Provide a scope for the tool to work on (Source and Destination).
•About 32 available.
21Microsoft Confidential – Internal Use Only
Web Deploy: Providers Setting
Providers Setting(Common Settings)
Customize the Providers chosen:
source:webserver, computerName=<servername>
22Microsoft Confidential – Internal Use Only
Web Deploy: Link Extensions
Link Extensions
Just Five
Provide supplementary data not called out explicitly by the Provider.
23Microsoft Confidential – Internal Use Only
Web Deploy: Rules
Rules
• 35 built in rules
• Apply when a Sync operation is being attempted
• Custom rules are present in msdeploy.exe.configsettings file
• Examples : skipUNC,
DependencyCheckAppPoolExists etc.
24Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
1. Synchronization Operations•Migrate settings from an IIS 6.0 server to an IIS 7.x and IIS8 servers•Synchronize settings between IIS 8.0 servers•Synchronize settings between IIS 7.0 servers•Synchronize settings between IIS 6.0 servers
2. Package and Deploy Operations•Create a Package•Import / Install a Package
25Microsoft Confidential – Internal Use Only
Web Deploy: Samples
Sync (Live)
msdeploy -verb:getDependencies -source:apphostconfig="Default Web Site“
msdeploy -verb:sync -source:apphostconfig="Default Web Site" -dest:apphostconfig="Default Web Site“, computername=Server2 > msdeploysync.log
msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=Server1 -dest:apphostconfig="Default Web Site" > msdeploysync.log
Migration (Offline)
msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:package=c:\Site1.zip > WebDeployPackage.log
msdeploy -verb:sync -source:package=c:\Site1.zip -dest:metakey=lm/w3svc/2 > PackageSyncFinal.log
PUSH from source
PULL from Destination
26Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
1.Sync IIS objects between two IIS 7 machines
msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=sourceserver -dest:apphostconfig="Default Web Site" -enableLink:AppPoolExtension
msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=sourceserver -dest:apphostconfig="Default Web Site" -enableLink:AppPoolExtension -disableLink:ContentExtension
msdeploy -verb:sync -source:iisApp=EntPortal\Intranet,computerName=sourceServer -dest:iisApp=EntPortal\Intranet
27Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
2. Migrate a website from IIS 6.0 to IIS 7.0msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/2
msdeploy -verb:sync -source:metaKey=lm/w3svc/1,metaDataGetInherited=true -dest:metaKey=lm/w3svc/2
28Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
3. Using manifests to sync multiple providers
<site> <appHostConfig path="Default Web Site" /> <contentPath path="c:\source" /> <appPoolConfig path="mySitePool" /> <gacAssembly path="Test.Assembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2eds8d236nhbbf786k" /> <dirPath path="C:\MyExtraFiles" /> <regKey path="HKLM\Software\ODBC" /> <comObject32 path="Microsoft.ApplicationHost.AdminManager" /></site>
msdeploy.exe -verb:sync -source:manifest=custom.xml -dest:manifest=custom.xml,computername=Server1
29Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
4. Modifying sync behavior using rules (Msdeploy.exe.configsetting.example)
msdeploy -verb:sync -source:webServer -dest:webServer,computerName=Server2 -disableRule:SkipUNC
msdeploy -verb:sync -source:apphostconfig="Default Web Site",computername=sourceserver -dest:apphostconfig="Default Web Site" -enableLink:AppPoolExtension -skip:objectName=filepath, absolutePath=.*folder\\subfolder\\.*\.gif$msdeploy -verb:sync -source:apphostConfig=”Default Web Site -dest:auto,computername=Destination -replace:objectName=virtualDirectory,match="c:\\content",replace="c:\content2"
Msdeploy.exe -verb:sync -source:iisApp=mySite -dest:auto,computername=<publishUrl> -enableRule:AppOffline
30Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
5. Offline syncing of servers
msdeploy -verb:sync -source:apphostconfig="Default Web Site" -dest:archivedir=C:\archive
msdeploy -verb:sync -source:archivedir=c:\archive -dest:appHostConfig="Default Web Site"
31Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
6. Syncing databases with Web Deploy
msdeploy.exe -verb:sync -source:dbFullSql="Data Source=.\SQLEXPRESS;Initial Catalog=SourceDatabase;Integrated Security=true" -dest:dbFullSql="Data Source=.\SQLEXPRESS;Initial Catalog=DestDatabase;Integrated Security=true"
msdeploy.exe -verb:sync -source:dbFullSql="Data Source=.\SQLEXPRESS;Initial Catalog=SourceDatabase;Integrated Security=true" -dest:package="c:\package.zip"
32Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
7. Web Deploy to compare two websites
msdeploy -verb:sync -source:apphostConfig="Site1" -dest:archivedir=C:\Site1Archive
msdeploy -verb:sync -source:archiveDir=C:\Site1Archive -dest:apphostconfig="Site1" -whatif -verboseLevel:Informational > log.txt
msdeploy -verb:sync -source:archiveDir=C:\Site1Archive -dest:apphostconfig="Site1" -whatif -verboseLevel:Informational -disableRule:Dependency*> log.txt
33Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
8. Transform Web.config with Web Deploy <configuration> <configSections> <sectionGroup name="myGroup"> <section name="data" type="MyApp.DataConfigurationSection, MyApp.Data" /> </sectionGroup> </configSections> <myGroup> <data interval="3" useCache="true" /> </myGroup></configuration>
msdeploy -verb:sync -source:apphostconfig="Default Web Site" -dest:package=sitepackage.zip -declareParam:name=UseCache, kind=XmlFile,scope=web.config,match="/configuration/myGroup/data/@useCache"
msdeploy -verb:sync -source:package=sitepackage.zip -dest:auto -setParam:name=UseCache, value="false"
1
2
3
34Microsoft Confidential – Internal Use Only
Web Deploy: Usage scenarios
9. Running tasks before and after a sync with Web Deploy
From source:
msdeploy –verb:sync –source:appHostConfig=Econo, computerName=Producction –dest:auto –preSync:runCommand=”Appcmd stop site MySite & Appcmd set site MySite /serverAutoStart:false” -postSync:runCommand=”Appcmd start site MySite & Appcmd set site MySite /serverAutoStart:true
37Microsoft Confidential – Internal Use Only
Web App Gallery
The Windows® Web Application Gallery gives Web site builders an easy way to discover, learn about, and install freely available and community applications on Internet Information Services (IIS) Web servers.• What it is• Windows Web Application Gallery for
Developers • Process for an App to be on the gallery.
38Microsoft Confidential – Internal Use Only
Web App Gallery: What is it
http://www.microsoft.com/web/gallery/categories.aspx
41Microsoft Confidential – Internal Use Only
Web App Gallery: Principles
Windows Web Application Gallery PrinciplesThe application to which you provide a link Must:• Be Current• Be Free of Charge• Be Compatible• Be Deployable • Be Supported• Be Hostable• Be Platform Independent• Be Inclusive• Be Safe• Be a Web App
42Microsoft Confidential – Internal Use Only
Links
IIS Web EcoSystemhttp://www.microsoft.com/web
Web Platform Installer http://www.iis.net/learn/install/web-platform-installer/using-the-microsoft-web-platform-installerhttp://www.iis.net/learn/troubleshoot/web-platform-installer-issues/troubleshooting-problems-with-microsoft-web-platform-installerhttp://forums.iis.net/1155.aspx.
Microsoft Web Deploy http://www.iis.net/downloads/microsoft/web-deployhttp://blogs.iis.net/msdeploy/http://technet.microsoft.com/en-us/library/dd569040(WS.10).aspx Providers
Microsoft Web App Galleryhttp://www.microsoft.com/web/gallery/http://forums.iis.net/1158.aspx
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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
Microsoft Confidential – Internal Use Only
Kenny Abdiel MaitaPremier Field Engineer+58 (424)[email protected]
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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
Customer Service and Support