我帮助管理一些托管的商业应用程序,在将新客户实例部署到共享(多租户)环境中时,我们需要进行大量手动流程。请允许我描述最相关的功能,然后我们可以讨论工具。
我们在 AIX 上有一个应用程序,需要对配置文件进行数十次更改(一些是纯文本,一些是 XML),还需要在多台服务器上运行大量命令 - 一些用于启动新实例,一些用于重新启动我们的共享身份验证和报告引擎等。当然,配置更改遵循模板。所涉及的服务器还将取决于实施者/部署者指定的初始条件 - 我们可以选择将特定客户部署到我们位于欧洲的服务器,或者一组服务器可能是主动-主动的,而另一组服务器是主动-被动的 - 简而言之,有很多复杂情况。
我们还有另一个在 IIS 6 和 SQL 上运行的应用程序。DBA 不希望 SQL 组件实现任何自动化,这对我来说没问题,但自动化 IIS 部分会很棒。对于新客户实例,我们制作以新客户命名的模板虚拟目录目标的文件系统副本,制作与之匹配的新 AppPool,编辑 VirDir 模板 .xml 文件以将文件路径和 AppPool 名称替换为新名称,然后从修改后的模板 XML 创建新的 VirDir 以指向新的文件系统文件夹和应用程序池。
对于第一种情况,ControlTier 或 Chef 之类的东西可能不错。对于第二种情况,MS 推出的较新的 Web Deploy 可能就很不错了。
有没有人用过这些工具或其他工具来为应用程序做类似的事情?更多的是锦上添花,而不是固定要求 - 有没有人使用过可以在两个平台上运行的东西?我正在寻找免费的东西,因为官方消息称,一年之内,我们将拥有 HP 重新命名的 OpsWare 套件,它应该能够做这样的事情。
编辑 - 根据某人的建议,查看 AIX 应用程序的 CFengine,它似乎并没有解决我的痛点。问题不在于保持给定配置在数十台服务器之间同步,我们有 rsync 可以解决这个问题。问题是,加入一个新的客户实例会涉及数十个文件,将相同或相似的信息放入其中 - 一些是现有文件中的新节,一些是新文件,一些是新目录。这是一个长达数小时的过程,而且由于大部分是手工完成的,所以也容易出错。我想我正在寻找配置文件的生成和管理。我已经构建了一个小型 Perl 脚本来为更小的案例做类似的事情 - 它将 CSV 文件绑定到变量中,然后从一组模板配置文件中执行复制、搜索和替换。我可能在这里可以做同样的事情。
答案1
您好,HP 的软件将是 Operation Orchestration 或 Server Automation,它们将能够处理您描述的用例。
有什么理由不在 1 年之前开始使用 HP 软件?