Deployment 特定于机器的工厂中的应用程序部署

Deployment 特定于机器的工厂中的应用程序部署,deployment,automation,wix,configuration-management,Deployment,Automation,Wix,Configuration Management,我负责将2.net应用程序(54k生产线)自动部署到位于两大洲3家工厂的大约50台计算机控制的精密切割机上。除了升级.net应用程序外,部署还必须能够更新运行每台计算机的低级专有软件,并管理/升级配置文件,这些文件是:特定于计算机、特定于流程、特定于形状和特定于运行的。必须跟踪这6个项目中每个项目的版本ID,以确保回滚功能。我假设我也需要跟踪这6个项目之间的依赖关系。现在,开发人员进行一次部署几乎需要一个小时,即使有他长达4页的详细说明,也没有人能够完成。他将文本从一个配置文件剪切粘贴到另一个配

我负责将2.net应用程序(54k生产线)自动部署到位于两大洲3家工厂的大约50台计算机控制的精密切割机上。除了升级.net应用程序外,部署还必须能够更新运行每台计算机的低级专有软件,并管理/升级配置文件,这些文件是:特定于计算机、特定于流程、特定于形状和特定于运行的。必须跟踪这6个项目中每个项目的版本ID,以确保回滚功能。我假设我也需要跟踪这6个项目之间的依赖关系。现在,开发人员进行一次部署几乎需要一个小时,即使有他长达4页的详细说明,也没有人能够完成。他将文本从一个配置文件剪切粘贴到另一个配置文件。到目前为止,我对Wix印象深刻,并希望使用它,但我担心可能我需要某种更广泛的配置管理软件,而不仅仅是添加到.net解决方案中的部署项目。我在维基百科上找到了一些选项,但对它们知之甚少。如果您有任何意见或想法,我们将不胜感激。

经过几天的研究,我发现我需要从4个流行的(开源)配置管理软件包中选择一个:Chef、Puppet、Ansible和Salt。在和中对它们进行了审查。一句话:厨师和木偶的存在时间更长,因此更为成熟,但Salt和Ansible提供了更优雅的解决方案。我之所以选择它,是因为它功能强大,易于学习/使用,不需要守护进程、代理、专用管理主机、PKI、额外数据库,也不需要客户端或开放端口,因为它使用SSH。Ansible是基于有状态配置的,这意味着您描述了希望系统看起来像什么,并且它将做任何需要的事情(从任何其他状态)来实现它。它还允许大规模执行同时发送到任意数量机器的特殊(命令行)指令。

只是触及表面(和一些细节)。。。你提出的许多问题都是以原则的形式讨论的。例如我用过WPKG,但不知道厨师会不会更好。要生成配置文件,请查看文本文件和.NET配置文件。