首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Puppetdb作为ENC变量?

使用Puppetdb作为ENC变量?
EN

Server Fault用户
提问于 2017-04-29 23:27:00
回答 2查看 478关注 0票数 0

我正在通过关于添加自定义事实的傀儡文档阅读。大多数信息似乎与在代理上运行的模块有关。

在我的例子中,我只想要一个简单的环境变量,可以从主节点中为每个节点设置这个变量。然后,我的ENC会进行一个PuppetDb查询,看看它应该提供什么样的环境。

我可以这么做吗,还是所有的事实都是从代理人那里来的?

EN

回答 2

Server Fault用户

回答已采纳

发布于 2017-05-05 08:05:50

我能这么做吗

是的,那是可能的。您可以在一个傀儡模块中创建一个定制的事实,例如运行一些ruby代码以获得已安装软件的版本:

module_name/lib/facter/customfact.rb

代码语言:javascript
复制
Facter.add("customfact") do
  setcode do
    123
  end
end

上面的代码驻留在Puppetmaster上,当运行puppet时,例如10个不同的代理,结果(即123和每个节点的主机名)将在PuppetDB中注册,并可以在Puppetboard中查看。

还是所有的事实都来源于代理人?

不,自定义事实驻留在Puppetmaster上。

票数 1
EN

Server Fault用户

发布于 2017-05-04 15:13:42

傀儡facts总是由代理发送给主人的信息。因此,你不能把一个事实放在木偶大师的一边。

但是,您可以选择使用傀儡收据配置代理环境(例如,使用木偶_配置_提供者)。

代码语言:javascript
复制
puppet_config { 'agent/environment':
  value => $::puppet_environment,
}

然而,只有在下一次傀儡演出时才会考虑到这一变化。

1

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/847401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档