自动化Solaris 10上的静默软件部署

从本质上讲,我想问的问题与Solaris 10上软件包部署自动化有关。

具体来说,我在tar文件中有一组软件组件,它们在主机环境中提取和configuration后作为后台进程运行。 非常像任何服务器端软件包,我需要确保在提取和运行软件之前满足先决条件列表。 例如:

显然,手动操作多个框(有问题的目标)可能会很慢且容易出错。

我相信一个更好的select是以某种方式自动化这个过程。 到目前为止,我已经考虑了以下选项,并由于某种原因而丢弃它们。

1)传统的shell脚本。 我以前只解决了这些问题,而且我也没有太多的经验。 这将是我最后的手段。

2)使用pexpect库来分析系统命令输出的Python脚本。 这是我的最初select,因为目标Solaris环境已经安装了它。 不过,我想确保我不再重新发明轮子:P。

3)Ant或Gradle脚本。 他们可能是一个选项,因为盒子也启用了Java 1.5,文件集抽象可以是非常有用的。 但是,在处理用户和文件夹权限检查/设置时可能会失败。

在我看来很明显,我不是这种情况下的第一人,但我似乎没有find适合这个目的的实用框架。 请让我知道是否有更好的方法来实现这一点。

我感谢你的时间和帮助。

你可能想要使用这个变化自动化。 例如木偶,厨师,cfengine,bcm2,或其他。

就我个人而言,过去三年我在Solaris上使用过Puppet,对这个决定感到非常满意。 我们用它来pipe理我们的系统pipe理的各个方面:用户,文件,cron作业,ZFS文件系统,NFS挂载,区域,服务(通过SMF)等等。 这非常有用。

Puppet SRV4软件包提供者的工作,但它缺乏拉远程文件(例如,通过HTTP)的能力。 你可以通过编写一个为你安装你的包的函数来解决这个问题。 如果软件包是本地可用的(通过NFS),提供者应该正常工作。

除了Solaris 10之外,我们还使用相同的Puppet库来pipe理我们的Solaris Express和Debian Linux系统。

我写了这篇文章了一段时间,可能会有所帮助: http : //mirrorshades.net/post/196593566