在开发、测试和部署期间,我需要完全自动化 Windows 2003 服务器设置。
我正在尝试找到自动删除服务器的最佳方法,该服务器安装操作系统、我拥有的软件依赖项(例如 SQL 服务器、.net 框架 + 我自己的应用程序代码)。
根据我的发现,有两种方法可以解决这个问题:
- 磁盘克隆(也称为磁盘映像)。使用 Ghost、Acronis 等工具。
- 无人值守安装 OS + SW。使用 RIS(现在称为 WDS)或Unattended,基本上运行无人值守的操作系统安装,然后无人值守安装首次启动所需的所有软件(使用 Windows 安装管理器的各种命令行标志,如 MSI、InstallSheld.
无人值守安装专家:
- 在创建无人值守安装的脚本/配置中自行记录整个安装和配置的优势
- 这些脚本/配置可以位于修订控制系统中。
- 使用DriverPacks可以灵活地安装在几乎任何硬件上。
无人值守安装缺点:
- 完全部署需要更长的时间。
- 比只需要安装、手动配置服务器然后克隆它的磁盘克隆需要完成更多的工作。
磁盘克隆优点:
- 创建克隆的工作更少。
- 快速部署。
磁盘克隆缺点:
- 很难跟踪克隆之前发生的配置/安装更改,因为它们都不是脚本化的。
- 生成的部署不像临时安装那样“干净”,需要他使用 SysPrep 或类似的东西。
- 将磁盘克隆还原到新硬件时,可能会出现硬件/驱动程序问题。
我知道这不是严格意义上的编程问题(尽管编写无人值守的 Windows + S/W 安装确实需要一些编码),但这是我们所有人都必须不时做的事情,我们不妨想出最好的方法来做到这一点。
编辑:有关情况的更多信息:虚拟化是开发的不错选择,但对于测试,尤其是压力测试,必须使用具有快速磁盘的真实硬件。
需要开发 Windows Server 2003 和 SQL Server 2005 服务器设备和内部应用程序。因此,这将在内部部署以进行开发和测试,并最终出售给客户。
所以基本上我要问的是:安装开发、测试和生产服务器的推荐方法是什么?磁盘克隆?自动安装?两者的结合?