我发现自己花了很多时间来设置新服务器。我总是使用完全相同的软件堆栈:
nginx mysql php + php-fpm + xcache memcached munin
我从我的 github repo 中提取了所有配置和 init.d 脚本。
我的所有服务器都运行 Debian。我的第一步通常是 apt-get update 和 apt-get install vim(以及其他基本软件包)。
Capistrano 或 Puppet 能否实现此过程的自动化?如果两者都能,哪一个更适合这项工作?
PS:我更喜欢 Capistrano,因为我对 Ruby 比较熟悉。
答案1
答案2
Puppet 非常适合这种情况。Puppet 为您提供了一种声明性语言来描述每个服务器的配置,包括包、服务和配置文件。Puppet 提供了一个强大的框架来描述每个组件之间的依赖关系,这允许您构建模块化配置文件来描述如何获取基础图像并将其转变为可处理特定角色的服务器。
答案3
这听起来确实像是 Puppet 的完美应用。如果有帮助的话,我为完全初学者写了一系列关于 Puppet 的简短教程文章,涵盖了安装、启动和运行以及管理您的第一个 Puppet 资源: