[url=http://xiazai.jb51.net/200903/books/WebDeploy.rar]WebDeploy同步IIS6文档下载[/url]
[h1]简介[/h1]WebDeploy 是微软开发的用于IIS管理的简单应用程序。WebDeploy通过简单的命令行脚本实现部署在IIS6上应用程序向IIS7应用服务器转移、IIS6应用服务器之间的同步,以及IIS7应用服务器之间的同步等。WebDeploy同步包含了IIS配置和部署的应用程序的同步。值得注意的是,在对IIS进行任何操作之前请进行备份。
[h1]应用环境[/h1]
[list]
[*].Net Framework 2.0 SP1 或更高版本
[/*][*]Web Deployment Tool 1.0 [/*][/list]
[h1]同步方式[/h1]
[list]
[*]Push 推方式,同步本地服务器推送给远程服务器
[/*][*]Pull 拉方式,同步远程服务器到目标服务器
[/*][*]Independent Sync
[/*][*]手工同步,打包站点复制到远程服务器。 [/*][/list]
[h1]下载地址[/h1][url=http://www.iis.net/expand/WebDeploy]
http://www.iis.net/expand/WebDeploy[/url]
[h1]安装WebDeploy[/h1]安装WebDeploy 会在服务器安装[b]Remote Agent Service [/b][b]服务[/b],负责监听管理操作的HTTP请求。WebDeploy默认监听[url=http://+/MSDEPLOYAGENTSERVICE/%E3%80%82%20%0d%E5%9B%A0%E4%B8%BAWeb%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E4%B8%80%E8%88%AC%E9%83%BD%E6%98%AF%E7%9B%91%E5%90%AC80]
http://+/MSDEPLOYAGENTSERVICE/。%20%0d因为Web应用程序一般都是监听80[/url]因为Web应用程序一般都是监听80端口的,因此我们需要修改默认配置。创建bat文件并执行:
msiexec /i <msi_filename> /passive ADDLOCAL=ALL LISTENURL=http://ServerName:9999/MSDEPLOYAGENTSERVICE/
[list]
[*]
[i]msi_filename:[/i][i]安装程序名称[/i]
[/*][*]
[i]ServerName:[/i][i]对应机器名称或IP[/i][i]地址[/i]
[/*][*]9999:表示监听端口 [/*][/list]
[h1]测试安装[/h1]
[list=1]
[*]启动服务:Net start msdepsvc
[/*][*]在浏览器中输入监听地址例如[url=http://servername:9999/MSDEPLOYAGENTSERVICE/]
http://ServerName:9999/MSDEPLOYAGENTSERVICE/[/url]
[/*][*]正确的页面响应结果为500错误 [/*][/list]
[url=http://www.1sucai.cn/upload/2010-3/20100309220401334.JPG][img]http://files.jb51.net/upload/2010-3/20100309220401334.JPG[/img]
[/url][url=http://www.1sucai.cn/upload/2010-3/20100309220401334.JPG][/url]
图:测试WebDeploy安装
[h1]步骤1 – 查看站点依赖[/h1]命令:msdeploy -verb:getDependencies -source:metakey=lm/w3svc/1 查看IIS站点配置环境依赖,并在目标服务器进行相应的设置。例如:权限、依赖项等。
[list]
[*]IIS6中使用metakey=lm/w3svc/1,其中“1”为网站标识。可以通过IIS管理器,点击站点查看。
[/*][*]IIS7中使用apphostconfig="[b]Default Web Site[/b]",为站点名称。 [/*][/list]
[h1]步骤2 – 查看IIS同步[/h1]命令:
[list]
[*]
Push:在本地服务器执行
[/*][/list]
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/1,computername=Server1:9999 -whatif > msdeploysync.log
[list]
[*]
Pull:在远程服务器执行
[/*][/list]
msdeploy -verb:sync -source:metakey=lm/w3svc/1,computername=Server1 -dest:metakey=lm/w3svc/1 -whatif > msdeploysync.log
若没有访问权限,需要提供用户名和密码,参数:userName,password。IIS同步更新信息写入msdeploysync.log日志文件中。目录地址:Program Files\IIS\Microsoft Web Deploy下。
[h1]步骤3-执行IIS同步[/h1]检查完成后,去除命令中的-whatif标签
[list]
[*]
Push:在本地服务器执行
[/*][/list]
msdeploy -verb:sync -source:metakey=lm/w3svc/1 -dest:metakey=lm/w3svc/1,computername=Server1:9999 > msdeploysync.log
[list]
[*]
Pull:在远程服务器执行
[/*][/list]
msdeploy -verb:sync -source:metakey=lm/w3svc/1,computername=Server1 -dest:metakey=lm/w3svc/1 > msdeploysync.log
[h1]其他[/h1]
[h2]IIS配置备份[/h2]
[list]
[*]备份:iisback /backup /b <filename>
[/*][*]查看备份列表:iisback /list
[/*][*]恢复:iisback /resotre /b <filename> [/*][/list]
[h2]IIS APP POOL[/h2]
[list]
[*]
保存App Pool配置:
[/*][/list]
msdeploy -verb:sync -source:metakey=lm/w3svc/AppPools -dest:archivedir=c:\AppPoolConfig,encryptPassword=testIIS
[list]
[*]
还原App Pool配置:
[/*][/list]
msdeploy -verb:sync -source:archivedir=c:\AppPoolConfig,encryptPassword=testIIS -dest:metakey=lm/w3svc/AppPools
[h1]其他资源[/h1]
[list=1]
[*]使用 Iisback.vbs 备份 IIS 配置 [url=http://technet.microsoft.com/zh-cn/library/cc775682(WS.10).aspx]
http://technet.microsoft.com/zh-cn/library/cc775682(WS.10).aspx[/url]
[/*][*]WebDeploy功能预览[url=http://learn.iis.net/page.aspx/346/web-deploy/]
http://learn.iis.net/page.aspx/346/web-deploy/[/url]
[/*][*]合并IIS6[url=http://blogs.msdn.com/rakkimk/archive/2010/03/02/msdeploy-can-i-use-it-to-migrate-my-iis6-to-another-iis6-oh-yes.aspx]
http://blogs.msdn.com/rakkimk/archive/2010/03/02/msdeploy-can-i-use-it-to-migrate-my-iis6-to-another-iis6-oh-yes.aspx[/url]
[/*][/list]