简短的答案是“ OS部署管理”,“配置管理”和“软件打包”。接下来是很长的答案。
我想在丹尼尔·皮特曼(Daniel Pittman)的答复中补充一下系统管理中形成“系统”的细目。
一个系统或环境将包括:
封装这些将是如下过程:
- 操作系统部署或映像
- 配置管理
- 软件包管理
- 审核/记录
- 监控方式
- 后备
并且您希望将它们结合在一起以帮助您实现非功能性目标,例如:
- 重复性
- 可维护性
- 可测性
- 性能
- 可追踪性
- 可测性
- 可变性
这是一个快速的脑筋急转弯。我相信可以将更多内容添加到所有列表中。
您的问题涉及其中一些,而没有使用特定的词。例如,您希望能够轻松部署并还原,即需要可维护性;您想在测试环境中进行测试,直到通过,即可重复性,可测试性和可测量性;您正在考虑将虚拟机映像置于版本控制中,因为您希望OS和配置部署具有可重复性。
有很多工具可以帮助您完成此任务,但Daniel提到了其中的一些工具。其他一些是:
- Kickstarts(基于RedHat),Preseed(基于Debian),WDS(MS Windows),用于部署已知的OS环境
- Spacewalk / Satellite(基于RedHat),组策略(MS Windows),用于配置和包管理
- YUM和APT打包系统,用于生成,部署,升级和删除程序包(二进制集,数据和包含一套软件的配置)
- Nagios,OpenNMS和SCOM进行监视
- Amanda,Bacula和Windows Backup Server进行备份
- Munin,PCP和Hyperic用于性能监控
- CVS,SVN,GIT或Bazaar用于版本控制
- Hudson和Jenkins进行建筑管理
- 硒和机器人进行测试
- Bugzilla,Request Tracker和Jira用于记录,通信和跟踪
再说一次,这不是一个全面的清单,但是我一直在想着要指导我的东西,希望它也能对您有所帮助。