我发现自己花了很多时间设置新服务器。我总是有相同的软件堆栈:
nginx mysql php + php-fpm + xcache memcached munin
我从我的 github 存储库中提取所有配置和 init.d 脚本。
我所有的服务器都运行 Debian。我的第一步通常是 apt-get update 和 apt-get install vim (和其他基本包)。
Capistrano 或 Puppet 能否实现这一过程的自动化?如果两者都是,哪一个更适合这份工作?
PS:我更喜欢 Capistrano,因为我对 Ruby 很满意。
据我所知,他们可以。请注意,木偶也是红宝石。厨师也是。
我想这是个人口味的问题,看看定义“食谱”的方式,然后决定哪种更适合你。
您还可以查看这些其他 问题。
这个答案说明了一切:)。如果你已经有一个 git 存储库,也许 capistrano 是一个更好的选择。
查看这些 文章,了解 puppet 和 capistrano 在目标和功能上的差异以及如何在两者之间做出决定。
Puppet 将是理想的选择。Puppet 为您提供了一种声明性语言来描述每个服务器的配置,包括包、服务和配置文件。Puppet 提供了一个强大的框架来描述每个组件之间的依赖关系,它允许您构建模块化配置文件,描述如何获取基本映像并将其转变为准备好处理特定角色的服务器。
这听起来确实是 Puppet 的完美应用。如果有帮助,我已经为完全初学者编写了一系列关于 Puppet 的简短教程文章,其中包括安装、启动和运行以及管理您的第一个 Puppet 资源:
木偶教程