我们目前有多种系统(Linux、Solarix、*BSD、HP-UX ......),在这些系统上我们不允许将任何东西安装到 / 中(但我有 root 访问权限。我知道这很奇怪)。但我们想在所有这些系统上运行 Puppet。因此,显而易见的想法是将 Puppet 及其所有预建依赖项安装到某个隔离树中,例如“jail”,这将允许使用来自某些前缀的依赖项并访问主机系统。最大的优势是统一部署和更新。
我想到的一个解决方案是部署Gentoo 前缀,并使用包管理器在那里安装 Puppet。但是,这需要大量额外空间,并且需要为每个系统进行一些手动修补。
也许有一些更优雅和简单的解决方案?
答案1
Puppet Enterprise 将其所有库安装到 /opt/puppet 目录中,以避免与系统 Ruby 混淆。它会将缓存和日志添加到 /var 的部分,并将代理配置文件添加到 /etc,但您可以在 puppet.conf 中配置所有这些。
答案2
所以你不能安装东西,但你可以用 Puppet 修改系统配置设置?这似乎是一个非常武断的规则。
你实际上不会找到一种跨平台的方法来实现这一点,每个系统上都会有不同的设置。