生产部署工具


12

与构建软件类似,应使用工具来部署生产服务器更新(数据库,网站,路由器配置等)。使用工具可减少某些类型的人为错误(例如,遗漏的步骤)。

  • 哪些工具可用于软件/配置/等部署(免费或商业)?

  • 在每个帖子中列出一个工具
  • 它执行部署过程的哪一部分
  • 使用此工具的特殊优点或缺点(即,仅.NET,支持所有LAMP / WAMP平台等)

不要添加已经存在的工具-如果对给定答案有特定的看法要添加注释。

-亚当


由于从技术上讲这是一个“购物问题”,所以已关闭此问题,但是它提供的许多信息仍然有效,并且它是研究部署和配置管理工具的理想起点。
voretaq7'8

Answers:


10

Puppet是使用Ruby编写的,最近编写的工具,与cfengine相比正在获得发展。


1
此“答案”未按照发问者的要求回答问题。
jtimberman

我们对使用Puppet感到非常满意-它使我们能够执行自动化/部署工具最需要的整个映像到运行系统过程,包括迁移以前的手动和自定义部署方法。推荐不够。缺点是还不能处理窗口框,但是所有* nix变体都被很好地涵盖了。
Mike Pountney

4

cfengine是Unix世界中的典型示例。


2
它也是HP分布式​​系统管理实用程序(DSAU)的一部分,并且已预先配置为基本的HP-UX使用。

4

我真的很喜欢cfengine 3

有了正确的配置,它基本上可以完成部署过程的每个部分:从某个位置复制文件,自动使用打包系统(如apt,yum)安装/更新程序包,启动/停止服务,检查文件/页面内容。

我使用它来安装(或检查是否存在)软件包,并且由于我是一个Java专家,所以当需要部署某些东西时,我从中心位置下载了档案文件,停止了Tomcat服务,然后将档案文件复制到Tomcat中目录,启动服务,并检查是否可以在特定的服务页面上找到正确的值。是的,cfengine几乎可以自己完成所有操作。

优点 :

  • 它有效(这是一个重要功能)。
  • 同时存在于Linux / Unix和Windows(本机)上
  • 资源占用少

缺点:

  • 刚开始使用起来有点困难,示例有些过于完整,但是教程却突然出现。

3

尽管Capistrano主要是开发人员的工具,但它也是一个不错的选择。

我不确定它是否可以在Windows平台上得到很好的支持。完全支持Linux / OSX。

您可以使用它在部署服务器上执行几乎任何操作,从文件更新到数据库备份以及用户管理。

与git存储库搭配使用,您可以获得变更管理以及快速简便的部署。


2

工具:ChefOpscode于1月发布的新工具。它是用Ruby编写的,其配置语言是纯Ruby DSL。它是一个正在积极开发中的年轻工具,但已被多家公司用于生产。

Chef可以管理您的整个基础结构,从设置PXE引导和启动服务到部署应用程序和管理用户。它非常灵活,可扩展且功能强大。

具体的优势是纯Ruby DSL,RESTful API可搜索的节点数据以及大量可供使用的食谱。由于使用了Ruby DSL,因此可以在配方中使用复杂的数据结构和逻辑,并且与RESTful API一起使Chef成为用于对基础结构进行编程的强大工具。






1

我们使用Shavlik工具套件来处理补丁,配置和审核。

我想不出任何特别的利弊-它运作得很好,而且我们还没有任何真正的问题可以回想。(这是我能说的最好的话-它工作得很好,我不必考虑它:)


1

我想同时给Capistrano和Chef +1。两者都非常擅长通过ssh编写特定的部署和管理任务。木偶也很有趣,但是古老的格言通常是真实的“万事通,无精打采”。最好的选择是为要完成的工作找到最简单的工具并使用它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.