如何使用 Puppet 保持新安装的软件包从主服务器到节点同步?

如何使用 Puppet 保持新安装的软件包从主服务器到节点同步?

我设置了一组机器(Ubuntu 服务器),它们在地理上是分开的,用于开发相同的代码库。有时我需要从我的站点在机器上安装软件包,然后通过 ssh 连接到所有其他机器并在那里安装软件包。我想自动执行此操作,如果我在我的机器(主机器)上安装了新软件包,它将自动安装到其他机器上。这个过程不需要立即完成,可以在一夜之间完成。

为此,我尝试使用 puppet 和“package”资源,但这意味着我需要为每个新安装的包添加另一个条目。有没有其他方法(比如检查已安装的包,然后为新包插入一个新条目)?

我也查看了 puppet 的 apt 模块,但找不到与此直接相关的任何内容。

答案1

据我所知没有办法做到这一点。

我可能认为你处理此事的态度有些错误。

Puppet 背后的想法是不是在单个服务器上完成大量手动工作,然后将该配置复制到其他服务器。

这个想法是宣布您希望您的服务器使用 Puppet 来呈现什么样子,然后 Puppet 会全部服务器看起来就是这样的。

我建议完全停止手动安装软件包,因为可以避免这种情况。当您想要安装新软件包时,只需更新您的 Puppet 清单即可。

除此之外,请确保您的清单存储在 Git 等版本控制中,以便您可以跟踪所做的更改。

相关内容