小编Tom*_*ski的帖子

检查傀儡代理是否是最新的

我想检查我的 nagios 监控是否每个节点都使用 puppetmaster 提供的当前目录版本。

在我的情况下,有:

  • 木偶大师
  • 主机 1
  • 主机2
  • 主机X

我想在 host1、host2、hostX 上创建nrpe插件以:

  • 检查主机上的当前目录版本
  • 检查为puppetmaster 上的节点准备的当前目录版本
  • 警告,如果两者不同

问题:

  1. 要在 puppetmaster 上检查目录版本,我可以运行 /production/catalog API 查询,但它非常昂贵(cpu) - 因为每次我请求目录时都需要编译它。
  2. 我在节点上看不到任何检查当前目录版本的选项。我试过木偶目录,但不是很有帮助。

所以我的问题是,如何监控傀儡代理的健康状况,并在任何主机使用旧的傀儡目录时得到通知?有什么意义吗?

linux monitoring nagios puppet nrpe

5
推荐指数
1
解决办法
6460
查看次数

Puppet 有时找不到像 osfamily 这样的标准事实

快速简介 - 出于测试目的,我在 5 个节点(Debian Squeeze + puppet 2.7.20-1puppetlabs1)上安装了 puppet 代理,并在 1 个服务器(相同版本)上安装了 puppet master。

在每个清单的 puppetmaster 端,我检查是否 $::osfamily == 'Debian'。有时我也使用 $::fqdn,并检查它是否不为空。

问题是每天随机时间我都会收到来自 puppetmaster 的邮件,说他无法为其中一个节点编译目录。例如:

Fri Jan 18 19:18:24 +0100 2013 Puppet (err): Could not retrieve catalog from remote server: Error 400 on SERVER: Not supported osfamily at /etc/puppet/modules/system/manifests/skel.pp:20 on node mynodeX
Fri Jan 18 19:18:24 +0100 2013 Puppet (notice): Using cached catalog
Fri Jan 18 19:18:24 +0100 2013 Puppet (err): Could not retrieve catalog; skipping run
Run Code Online (Sandbox Code Playgroud)

另一个例子,来自 puppetmaster 日志: …

linux debian puppet facter puppetmaster

5
推荐指数
1
解决办法
1566
查看次数

如何维护多节点的site.pp?

我将所有节点保存在一个文件 site.pp 中 - 但是随着我添加越来越多的节点,维护它们变得非常困难。

导入指令看起来很有前途,但据我了解文档,每次发生变化时都必须重新启动 puppermaster。对我来说这是不可接受的。

有没有其他方法可以做到这一点?而不是使用大注释来分隔节点/组。现在我只使用 rdoc。

我会很高兴有任何建议:-)

我当前的 puppet 目录结构如下所示:

  • 清单/site.pp
  • manifests/extdata/(用于 extlookup)
  • 模块/模块 1
  • 模块/模块 2
  • 文件/公钥...

我使用 git/rsync 部署 puppet 配置以仅覆盖更改的文件。

linux puppet puppetmaster

3
推荐指数
2
解决办法
9684
查看次数

标签 统计

linux ×3

puppet ×3

puppetmaster ×2

debian ×1

facter ×1

monitoring ×1

nagios ×1

nrpe ×1