传统上,系统管理员和工程师一次性部署虚拟机。但是,我对这种方法有一个问题,那就是部署和集成必要的层来托管整个应用程序(甚至是一个简单的应用程序)需要花费太长时间。
如果有一种方法可以连接,配置和部署应用程序体系结构的所有部分,该怎么办。那不是很好吗?好了,它直接集成到System Center Virtual Machine Manager(VMM)2012中。
现在,我知道您可能在想什么:“我没有VMM”或“我有VMware,我很好,谢谢”,我现在可以接受...
但是,想象一下只需单击几下即可部署复杂的多层应用程序体系结构。或者更好的是,允许您的开发或预生产团队在没有您干预的情况下进行部署。我也不只是在谈论Hyper-V。我也在谈论VMware和Citrix。
如果您熟悉部署虚拟机(VM),则很可能熟悉使用虚拟机模板部署VM。
虚拟机模板提供了配置/添加的功能:
·操作系统(OS)和功能
·硬件(例如,网络,处理器,内存,IDE / SCSI硬盘驱动器等)
·应用
·等
一旦创建了VM模板,便可以通过某种方式手动,通过脚本或通过自动化进行部署。
但是,并非所有模板都是一样的。 如果我们考虑使用System Center Virtual Machine Manager 2012模板,则可以做很多事情。 例如,安装操作系统的角色/功能,添加应用程序和设置(包括Web和SQL),如下所示:
我了解Vmware和Citrix也有它们的方法,您可能对它们的工具很满意。 但是,让我们超越虚拟机模板,在Virtual Machine Manager 2012中讨论“服务模板”。
服务模板
服务模板提供了构建虚拟机模板的能力,这些虚拟机模板可以一起配置和部署,并作为单个实体(例如,多层业务线应用程序)进行管理。
让我们看一下VMM 2012中服务模板的几个示例:
简单的服务模板示例
以下是Web服务器和SQL Server的简单,关联的部署。
与VM模板类似,当我修改每个层时,我可以配置:
·操作系统(OS)角色,功能,域等。
·硬件(例如,网络,处理器,内存,IDE / SCSI硬盘驱动器等)
·应用程序和应用程序配置(Web,脚本,登录信息,服务帐户凭据等)
·…还有更多
复杂的服务模板示例
您也可以进行非常复杂的部署。 以下示例可能更适用于您的环境。 StockTrader应用程序是一个多层应用程序,其中包括每一层中的设置自动化。
需要消耗很多,所以让我们分解一下:
订单处理层
订单处理层包含的是虚拟应用程序包(基本上是使用Server App-V打包的应用程序配置),以及模板配置的其余部分(硬件配置等)。 虚拟应用程序包的伟大之处在于,可以在不修改操作系统映像的情况下对其进行服务和重新部署(就像我们传统上已经做了很多年一样)。
在此处阅读有关虚拟应用程序的更多信息:http : //technet.microsoft.com/zh-cn/library/gg703262.aspx
SQL层
SQL层包含许多DACPAC和SQL设置。 哇,DACPAC到底是什么?
让我们从一个“ DAC”开始,然后在最后添加(图形和字面意义)“ PAC”。
数据层应用程序(DAC)是逻辑数据库管理实体,它定义与用户数据库关联的所有SQL Server对象(例如表,视图和实例对象,包括登录名)。DAC是SQL Server数据库部署的一个独立单元,它使数据层开发人员和数据库管理员可以将SQL Server对象打包到可移植构件中,该构件被称为DAC包(也称为DACPAC)。
在此处阅读更多信息:http : //technet.microsoft.com/en-us/library/ee210546.aspx
这是SQL层中的DACPAC:
考察DACPAC:
前端Web层
您猜对了,前端Web层包含该网站。 但是,我们通过所谓的Web Deploy软件包来部署网站。 Web Deploy软件包使打包网站信息和配置以及部署它变得容易。
正式定义
Web部署程序包是一个.zip文件,其中包含部署所需的所有信息。您可以从命令行或在Visual Studio中创建程序包,然后使用命令行或IIS管理器将其安装在目标服务器上。
此处的更多信息:http : //msdn.microsoft.com/en-us/library/dd394698.aspx
下图显示了两个Web Deploy软件包:
有关Web部署的更多信息:
使用Web部署:http : //www.iis.net/learn/publish/using-web-deploy
如何:在Visual Studio中创建Web部署程序包:http : //msdn.microsoft.com/zh-cn/library/dd465323.aspx
商业服务层
Business Services层包含一个类似于订单处理层的虚拟应用程序包,因此我不再赘述。 但是,如果深入研究该层的设置,我们会看到它使用ESX作为其VM平台。 您可能在想,“这可能吗? 我可以在服务模板中混合和匹配VM平台吗?” 是的,您可以! 这是关于服务模板的许多奇妙的事情之一。
无论您运行的是VMware,Citrix还是Hyper-V,服务模板都可以容纳这三个模板(VM模板也可以)。
如果您对在您的环境中部署和测试stocktrader服务模板感兴趣,可以在这里下载:http : //www.microsoft.com/zh-cn/download/details.aspx?id= 26553
以下是一些服务模板示例,可帮助您入门:
其他资源:
在VMM中创建和部署服务
http://technet.microsoft.com/zh-CN/library/gg675074.aspx
下载System Center Virtual Machine Manager 2012