使用操作系统包管理(deb、rpm)管理 Web 应用程序部署时,最佳实践或缺陷是什么?

使用操作系统包管理(deb、rpm)管理 Web 应用程序部署时,最佳实践或缺陷是什么?

我在周末的一次谈话中听说了这一点,这听起来是个好主意,原因如下:

  • 确保依赖关系得到满足且没有被破坏(例如,Web 应用程序需要特定版本的 imagemagick)
  • 帮助快速启动新服务器
  • 与操作系统包的一致性和易于部署
  • (可能)使配置与代码一起更新,以便对 apache、php 等配置的更改与代码依赖关系保持最新。我知道这是一个灰色区域,因为它进入了配置管理。

答案1

它没有任何问题。它肯定比默认的要好。太多人只是从每个服务器上的版本控制中签出。然而,它不如为 Web 部署制作的程序好。我个人喜欢使用 chef 和部署资源

部署资源会从 svn 或 git 签出到新目录,符号链接配置文件,然后更改您的网络服务器用于指向那里的符号链接。这意味着,如果您需要,回滚就像更改食谱一样简单。然后 chef 只​​需更改符号链接即可。

这确实完全是主观的。Chef 确实有一个学习曲线,但它简化了许多管理任务。它还使“启动服务器”、管理依赖项和保持配置文件更新变得容易。它允许您将包管理、配置管理和系统管理结合到一个地方。

编辑:添加了有关厨师的更多信息

相关内容