归元

使用MS Web Deploy工具从IIS 6.0迁移大量应用到IIS 7.0

情人节,虽然一个人过,可是也不想加班,刚找到这篇文章就到点下班了,明天再测试行不行

这里给大家介绍一下Web Deploy这个IIS的迁移工具。


Windows server 2008 r2在web服务上做了很大的提升,Windows server 2008的IIS 7从核心层将被分割成了40多个不同功能的模块,用户可以根据Web服务器运行的需要来订制安装所需的模块,这样可以使IIS更为精简,减少不必要的组件可以减少受攻击表面,增加了IIS的安全性和可用性。而在Windows server 2008 r2的IIS 7.5上连Server Core模式下可以运行ASP.Net应用,还有新的PowerShell命令行、IIS Administration Pack等强大功能被加入。这些新的特性也给了大家十足的理由升级到Windows server 2008 r2的IIS 7.5。

在同版本的IIS之间迁移时,可以通过备份、还原配置,然后将web server目录copy到目标机器上这种传统的方式迁移。但是,这在IIS 6到IIS 7的迁移是肯定行的,如果是对于单个机器上运行了大量web应用的情况,手动的逐一迁移也不现实。Web Deploy正是微软提供的专门用于web部署、迁移的工具,他可以让复杂的操作变的非常简单,可以只要使用几行命令就能完全解决。

Web Deploy的迁移过程其实可以看成是一个同步的过程,将源服务器上的websites同步到目标服务器;或者由源服务器上的websites同步到一个package,再由这个package同步到目标服务器,在这个过程中,就只要2-3行命令和一次copy。

Web Deploy对应于x86和amd64有2个版本,在源、目标服务器上都安装对应的版本即可。下载地址

这里假设一个场景:

源服务器:IIS6_server,这是一台IIS6的源服务器,上面跑了50个web站点。

目标服务器:IIS7_server,这是一台IIS7(IIS7.5)的源服务器,要把站点从IIS6_server上迁移过来。源、目标服务器都安装了对应版本的Web Deploy(Web Deploy的安装也需要.net framework支持)。

迁移步骤:

1.在IIS6_server上运行msdeploy –verb:getDependencies –source:webserver60,查看出源机器安装的组件情况,在目标机器IIS7_server上安装相关组件。

2.在IIS6_server上运行msdeploy -verb:sync -source:webserver60 -dest:package=d:\site_archive.zip,encryptPassword=123,把站点同步到d:\site_archive.zip中。

3.把d:\site_archive.zip拷贝到目标服务器IIS7_server,然后在IIS7_server上运行msdeploy -verb:sync -source:package=d:\site_archive.zip,encryptPassword=123 -dest:webserver60,把d:\site_archive.zip的内容同步到IIS7中,迁移完毕。

注意:

1.确保源服务器和目标服务器上msdeploy的权限是够的,Windows server 2003上,启动时会默认限制权限,如果要操作要把启动时限制权限的勾点掉。Windows server 2008/2008r2上要以管理员身份运行程序。

2.详细参数可以用msdeploy -?查询。

3.参考资料:http://learn.iis.net/page.aspx/346/web-deploy/

评论

© 归元 | Powered by LOFTER