模块未被 puppet-agent 处理

模块未被 puppet-agent 处理

在我们的 puppet 框(在 puppet/modules 文件夹下)上,我添加了一个用于安装包的模块。然后,我将资源所需的类添加到 init.pp(和其他派生类文件)的 manifests 文件夹中。我在 puppet 仪表板中配置了这些类以及与它们关联的相应节点。

当我使用环境标志运行 puppet-agent 时,我发现 puppet 并未运行我的模块。它正在运行与我的模块一起在框中定义的其他几个模块,但不是我的模块。

需要什么配置才能让 puppet-agent 拾取模块并运行其定义的清单?为简单起见,我想先在一个盒子上执行此操作。

答案1

因此,模块是创建可重用类的绝佳方式。但是,要部署模块,必须调用/定义模块,而默认情况下不会这样做。

您可以通过以下两种方式之一执行此操作 - 如果这是一次性的事情,您可以简单地做一个;在代理上执行 puppet apply -e 'module',这样应该会应用该模块(或给您一个错误;)!)

然而,如果您想永久改变某些事情......我会做这样的事情。

在 nodes.pp 中创建名为 nodes.pp @ /etc/puppet/manifests 的文件;

节点'test.domain.com'{包含模块名称}

然后在 site.pp @ /etc/puppet/manifests 中,您只需确保顶部有;

导入‘nodes.pp’

然后您可以像 puppet agent -t 一样运行,您会看到它尝试获取模块。

答案2

您应该在 init.pp 或依赖模块中包含模块,以便在依赖性检查期间可见它。

相关内容