了解Puppet中的导出资源

为了理解Puppet中的导出资源,阅读了以下文档 。 在阅读文档后,理解是出口资源包括声明和收集。

尝试

基于对Puppet中导出资源的文档和理解,创build了以下代码:

class test { @@file { "/tmp/$hostname": } File <<| |>> } 

预期

期望是一个文件/ tmp / vm-one将被创build

当前

没有文件被创build

 [vagrant@vm-one modules]$ sudo puppet agent -t Info: Retrieving pluginfacts Info: Retrieving plugin Info: Loading facts Info: Caching catalog for vm-one.domain Info: Applying configuration version '1421499164' Notice: Finished catalog run in 0.10 seconds 

要使导出的资源正常工作,您需要设置PuppetDB。 没有PuppetDB,他们将无法工作。 此外,你经常需要两个木偶运行资源才能得到应用。

幕后发生的是:

  • puppet agent从master请求目录

  • 主编译目录(从PuppetDB获取导出的资源,并将新find的导出资源存储回PuppetDB)

  • 主人将目录提交给代理人

在清单中为单个节点导出资源的Offcourse并不真正有用。 他们的想法是,单个节点报告一些资源,这些资源稍后由您希望应用的节点收集。

例如,如果将Nagios检查插入到每个服务中,则不希望在服务所在的节点上应用和收集这些检查,但是您希望将这些检查全部收集到Nagios节点上。

希望这可以帮助。