企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## Puppet 基础设施 > Computers in the future may have as few as 1,000 vacuum tubes and weigh only 1.5 tons. > > — Popular Mechanics (1949) 在本章中,我们将学习如下内容: * 使用版本控制 * 使用提交钩子 * 使用 Rake 部署变更 * 配置 Puppet 的文件服务器 * 从 cron 运行 Puppet * 使用自动签名 * 预签名证书 * 从 Puppet 的 filebucket 检索文件 * 使用 Passenger 扩展 Puppet 的部署规模 * 创建去中心化的分布式 Puppet 架构 本书中的一些处方体现了 Puppet 社区约定的最佳实践。 其他的一些处方是一些技巧和窍门,这些技巧使你使用 Puppet 工作变得更容易, 或向你介绍一些先前还不知道的功能。 其中的一些处方仅仅是轻量级的捷径方法,我不建议你将其作为生产环境的标准操作过程, 但在紧急情况下可能还是有用的。 最后,这里还提供了一些实验性的处方,你可能想尝试一下, 但这些处方仅适用于大型基础设施或其他不寻常的场合。 我希望你通过阅读和学习这里提供的处方,能获得有关 Puppet 如何工作以及你该如何使用 Puppet 的更深入、更广泛的理解, 从而帮助你建立更完善的基础设施。 只有你自己才能决定一个特定的处方对你或你的组织是否适用, 但我希望这里提供的处方能激励你进行实验,找出更多更重要的处方?—?从中获得使用 Puppet 的乐趣! > ![提示](https://box.kancloud.cn/2016-05-12_5733eec6d55e1.png) > 纵观这本书的所有例子,你会看到大多数的命令以 root 用户运行。 如果你更愿意使用一个普通用户账号和 sudo 管理系统, 请使用这种方式替代 root 用户的操作。 因为不同 Linux 发行版(例如:Ubuntu、Red Hat、CentOS)在具体细节上会有不同,比如: 软件包名、配置文件的路径,等等。为了节省篇幅和提高清晰度的原因, 我决定为本书挑选一种发行版(Ubuntu 10.04 Lucid)并坚持使用它。 然而,Puppet 几乎可以在所有 Linux 发行版上运行,所以在你偏爱的操作系统和发行版上应该很少遇到麻烦, 仅需要对处方做适当调整即可。 在这本书写作时,Puppet 2.7 是最新的稳定版本,因此我选择了它作为本书使用的 Puppet 的参考版本。 然而,Puppet 命令的语法每隔一段时间可能就会改变, 所以要注意,旧版本的 Puppet 仍然是非常有用的, 旧版本的 Puppet 可能不支持这本书中所描述的所有功能和语法。