问题标签 [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 回答
141 浏览

ruby - 为什么升级到 Puppet4 后,自定义事实再也找不到 rb_sysopen 了?

以下自定义事实

使用 puppet 工作3.6.2,但由于升级到4.5.2以下问题

分析

  • 似乎由于rb_sysopen某种原因再也找不到了(No such file or directory @ rb_sysopen自从升级到 Puppet 4 以来
  • Puppet4 似乎使用嵌入式 ruby​​ 版本,而不是安装在主机上的版本(Puppet3):

Puppet 4,Facter 2.4 和 CFacter 0.4,最新的 Hiera 和 Mcollective,以及 Ruby 2.1.5、OpenSSL 1.0.0r 和我们的 gem 依赖项。

  • Ruby 2.1.5 中不rb_sysopen存在?没有找到任何证据。
  • 也许发生了与事实相关的变化,可能导致问题?在发行说明中没有发现任何相关内容。

问题

为什么rb_sysopen升级到 Puppet4 后,自定义事实再也找不到了?

0 投票
1 回答
253 浏览

puppet - 如何检索事实并使用它将自定义值存储在 Puppet 的变量中?

我有一个脚本,我从机器中检索 IP 地址,然后执行一些逻辑操作来决定赋予变量什么值。然后,我使用这个值来对机器工作的环境做出一些决定。

我正在尝试将其翻译为 Puppet,但我不确定如何进行。我知道我可以使用事实检索 IP 地址,但我应该在清单还是模板中执行此操作?另外,我应该在哪里执行逻辑操作。请记住,我将进行字符串操作。

总而言之,这些是我需要的步骤。

  1. 从机器获取 IP 地址。

  2. 执行逻辑运算。

  3. 将带有结果的变量传递给 Puppet 清单。

要点是:如何将事实作为变量检索,我应该将代码放在哪里与该变量一起使用?

提前致谢。

0 投票
1 回答
54 浏览

vagrant - 仅在 vagrant puppet 中使用我的 module_path 中的某些模块

没有玩偶和流浪汉的经验。我们曾经在一个大型 puppet 存储库中拥有所有 puppet 设置,并且我们的 vagrant 实例运行良好。最近,为了让事情更好地隔离,以免意外推出,我们有一条从大 puppet 存储库分离到新 puppet 存储库的路径。但是我仍然需要旧的大仓库中的所有因素,而新仓库中的服务器特定设置。不幸的是,我不能只将大的旧存储库指定为模块路径,因为我的服务器特定设置将来自旧存储库中的旧目录,但如果我只是将新存储库指定为模块路径,那么我会错过所有事实。而且我一直在疯狂地谷歌搜索以找到一种方法来指定 vagrant 的事实路径是徒劳的:(

谁能给我一些提示?非常感谢

0 投票
1 回答
1848 浏览

ruby - 如何为 Puppet 中的角色添加自定义或外部事实?

我正在为我的 puppet master 配置文件/角色使用 control-repo。

我正在使用 Hiera,我想在层次结构中添加角色

我的hiera.yaml看起来像:

网站.pp

例如,我应该为节点 xx01 和 xx03 添加角色事实。因此,将来为每个新节点添加事实是没有用的。所以我希望为每个新节点添加这个事实。

因此,最好的方法是添加代码以在控件存储库中添加角色的事实。不在模块中。

傀儡代理似乎本质上没有角色事实,所以我在中添加了角色事实/etc/puppetlabs/facter/facts.d

如果主机名反映了角色,我认为与主机名进行比较以添加角色的事实是没有用的。所以我可以使用带有主机名而不是角色的层次结构。

0 投票
0 回答
303 浏览

puppet - Puppet:根据主机名复制事实文件

是否有可能根据机器的主机名/IP 地址部署自定义事实。假设我有 2 个自定义事实文件,

machine1.rb #包含特定于 machine1 的事实

machine2.rb #包含特定于 machine2 的事实

现在我的要求是根据主机名或ip地址,将相应的自定义事实文件复制到相应的机器上。我尝试谷歌搜索但没有帮助。请告诉我。

0 投票
0 回答
1304 浏览

powershell - 木偶中的多个控制条件验证

在运行其他清单文件之前,我需要验证内存、处理器和端口连接等代理。因此,我通过将全局事实与语句和执行资源保持一致,创建了如下清单。

if $::facts['memorysize'] >= '4.00 GiB'and $::facts['processorcount'] >= 2 and Exec['port_connectivity']我的主题是 puppet 只有在此条件成功时才应执行。如果 exec 命令成功并且facter返回true,那么只有它应该执行,但是在清单之后单独执行而不检查该exec语句是否为true。我的主要目的是在运行 puppet manifest 之前验证端口。任何人都可以帮忙吗

0 投票
1 回答
1273 浏览

shell - 在 shell 脚本中使用 Puppet 事实 (Facter)

我正在编写一个 shell 脚本来version.txt从 AWS S3 存储桶下载文件。

在 shell 脚本中,我需要使用 Puppet Facter 值(例如env_nameproduct_name)。如何在我的 shell 脚本中获取这些 Facter 值?

0 投票
1 回答
287 浏览

puppet - Puppet:依赖链没有按顺序执行

我有一个问题,我试图设置外部事实,然后复制一个模板文件,该文件填充了 hiera yaml 文件中的值。模板文件依赖于外部事实文件设置的某些事实(例如模板文件的所有者和组)。下面是木偶代码。

然而,在执行过程中,我看到模板首先被复制到 puppet 代理机器,并且由于模板具有来自外部事实文件的一些值,它无法找到并且它抛出错误说“无效的所有者和组值”。

以下是外部事实文件的内容

为什么 puppet 似乎忽略了这里的依赖循环?

0 投票
1 回答
2389 浏览

puppet - 无法在人偶清单中使用 $facts 作为哈希

这是失败的清单代码:

错误:

因子命令工作正常:

Puppet 版本是 Ubuntu 14.04 上的 3.8.7

0 投票
1 回答
3959 浏览

puppet - 如何在 Puppet 的 Ruby 模板中使用 Facter 值

我试图弄清楚如何在使用 Puppet 配置的 Ruby 模板 erb 文件中使用 Facter 事实。

示例 Ruby 模板变量

Puppet 的预期配置文件输出

事实数据: