问题标签 [facter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1721 浏览

puppet - 我想执行我在 facter 中实现的自定义事实

我想执行它,当我给facter --puppet. 此信息不会出现在事实日志中。告诉我如何从事实中获取信息

0 投票
0 回答
190 浏览

puppet - Puppet 将 Consul 令牌作为事实传递给 Hiera

我正在将我的一个无主模块转换为使用 Consul。如何使用外部事实传入 Consul 主机和 Consul 令牌?这些在每个环境中都会发生变化,并且不受 Puppet 管理。我正在使用 Puppet 模块“lynxman-hiera_consul”、“0.1.2”。请注意,我必须将 hiera.yaml 降级到版本 3 才能与此模块一起使用。

在我的 Puppet masterless 运行之前,我导出了一些事实

export FACTER_CONSULHOST=consul-randomid..us-west-2.elb.amazonaws.com

导出 FACTER_MYTOKEN=一些令牌

我可以测试这是否适用

事实mytoken;傀儡事实--debug|grep mytoken

facter consulhost;puppet 事实 --debug|grep consulhost

我的 hiera.yaml 看起来像这样Hiera.yaml Gist。如果我用字符串替换事实插值,这很好用。

基本问题是第 15 行的事实插值

:token: "%{facts.mytoken}"

这是我测试这个Consul.pp Gist的示例清单

0 投票
2 回答
2774 浏览

yaml - Puppet facter,如何从 yaml 文件中设置自定义事实?

我希望能够为 puppet 设置许多不同的自定义事实。看起来有一种方法可以在 yaml 文件中列出所有这些,然后将它们加载进去,但是文档没有确切的命令来做到这一点。

如何从 yml 文件中设置自定义事实?如果我不能这样做,是否有任何其他方法可以设置事实而无需构建所有通过Facter.add函数运行的自定义 ruby​​ 脚本?

0 投票
1 回答
374 浏览

puppet - 在所有 puppet 节点上执行命令

我想在我的所有节点中执行下面的简单命令,该命令返回我是否可以使用 puppet factor 使用符号链接。

'ls -l | grep lrw | grep 数据'

如何运行此命令并从一个客户端收集结果?

我没有 puppet master,只在我的所有客户端机器上安装了 puppet 节点。

0 投票
1 回答
551 浏览

scripting - 未能将论据传递给木偶适用于事实

我正在尝试将 facter 参数传递给puppet apply. 这是我尝试过的:

在我的代码中,我有:

...

我收到此消息错误:

有人对此有任何想法吗?

更新

我得到这个错误

0 投票
1 回答
314 浏览

puppet - 将配置应用于 puppet + hiera 中的服务器组

需要一些帮助思考。

我有 200 台服务器,必须将特定配置应用于 100 台。

它们唯一的共同点是名称前缀:它们都以zmb-

hiera.yaml

我应该改变:hierarchy:什么?


木偶版:4.10.10


我们在这里需要更多信息,以了解您要发送到 100 个节点的数据是什么,以及为什么您认为这是一个数据问题,即需要在 Hiera 而不是 Puppet 清单中解决的问题。-亚历克斯哈维

一个非常简单的例子来让事情顺利进行:

直到昨天所有节点都拥有相同的 NTP 服务器,10.1.1.1
这是由类设置的ntp,它从common

common.yaml

ntp/init.pp

现在,今天,我想将 IP 更改10.1.1.99为 100 台服务器,它们的主机名都以zmb-

我的问题是:如何?

0 投票
0 回答
109 浏览

rspec - 测试事实事实时出现 rspec/mocha 错误

我写了一个非常简单的事实。它看起来像这样:

我现在想测试这个事实,所以我为它写了一个规范测试

当我运行测试时,我得到一个非常奇怪的错误:

我在这里做错了什么?

顺便说一句,此代码在这里:https ://github.com/jaxxstorm/puppet-kubeadm/blob/version_facts/spec/unit/facter/kubectl_spec.rb

0 投票
1 回答
504 浏览

puppet - 将因子注入文件内容 - 没有将哈希隐式转换为字符串

我想从facter <prop>文件内容中注入一些值。

它适用于$fqdn因为facter fqdn返回字符串

但是,它不适用于哈希对象 ( facter os):

并在运行时收到此错误消息puppet agent -t

错误:无法应用目录:文件[/tmp/README.md]上的参数内容失败:值{“architecture”=>“x86_64”,“family”=>“RedHat”,“hardware”=>”的Munging失败x86_64", "name"=>"CentOS", "release"=>{"full"=>"7.4.1708", "major"=>"7", "minor"=>"4"}, "selinux "=>{"config_mode"=>"enforcing", "config_policy"=>"targeted", "current_mode"=>"enforcing", "enabled"=>true, "enforced"=>true, "policy_version"=>类内容中的“28”}}:没有将哈希隐式转换为字符串(文件:/etc/puppetlabs/code/environments/production/manifests/site.pp,行:2)

如何将哈希转换为pp文件内的字符串?

0 投票
2 回答
1891 浏览

ruby - Puppet - 创建嵌套的自定义事实

我已经成功创建了一个 .rb 自定义事实,它解析一个内置事实以创建一个新值,但是我现在正尝试将它用作Puppet 的嵌套自定义事实。

我要创建的层次结构类似于内置事实,例如运行 Facter(或 Facter -p)将显示:

木偶清单中的用法是:

到目前为止,我已经尝试过领先的语法,例如:

...然而,许多其他变体无法创建嵌套的自定义事实数组。我已经用谷歌搜索了一段时间,如果有人知道是否有可能,我将不胜感激。

我确实发现可以使用 /etc/puppetlabs/facter/facts.d/ 目录中的 .yaml 文件中的数组来创建嵌套事实,如下所示,但是这会设置 FIXED 值并且不会处理我在自定义中需要的逻辑事实。

提前致谢。

0 投票
2 回答
1293 浏览

ruby - 将字符串数组从 Facter 获取到 Puppet

在我正在处理的模块中,我需要检查机器上是否存在特定用户。这个想法是创建一个包含所有用户数组的自定义事实。在模块中,它应该遍历数组并检查特定用户是否是数组的一部分。

我的自定义事实:

事实的输出是这样的字符串: ["user1", "user2", "user3"]

因为它只是一个字符串而不是数组,所以我无法在我的 puppet 模块中遍历它。

然后我尝试了

但是现在,每个用户的用户名后面都包含一个逗号。

您有一个可行且更好的解决方案的想法吗?