Vagrant 木偶:Nagios#u主机+;木偶数据库+;Nagios=无法收集导出的资源
我们目前正试图在Ubuntu Precise 64机器上创建一个Vagrant+Puppet+Nagios配置。事情进展相当顺利,但我们显然遇到了一个障碍,试图让Puppet使用“Nagios_主机”设置Nagios配置。目前,我们在同一个实例上运行所有东西:PuppetDB、Puppetmaster服务和Nagios 木偶大师似乎正确地连接到了木偶数据库。发布“puppet agent--test”并查看Puppetdb日志显示了实际更新的事实,如本链接所示:(步骤3)。 另外,查看/etc/puppet/puppet.conf会显示storeconfigs=true和backend=puppetdb 我们的下一步是收集和导出资源,以便在Nagios中进行监视。我们已经尝试在线学习了一些教程,比如Puppetlab自己的导出资源指南。但他们都会带我们走同一条路。Puppet显示了一系列警告,并且没有生成Nagios配置: “警告:如果未设置storeconfigs,则无法收集导出的资源;第XX行上的收集将被忽略” “警告:在没有storeconfigs的情况下不收集导出的资源” 据我们所知,这些警告表明Puppet没有发现我们已经配置了Puppetdb的事实,我们认为我们已经验证了这一事实。 我们舱单的一些相关部分:Vagrant 木偶:Nagios#u主机+;木偶数据库+;Nagios=无法收集导出的资源,vagrant,puppet,Vagrant,Puppet,我们目前正试图在Ubuntu Precise 64机器上创建一个Vagrant+Puppet+Nagios配置。事情进展相当顺利,但我们显然遇到了一个障碍,试图让Puppet使用“Nagios_主机”设置Nagios配置。目前,我们在同一个实例上运行所有东西:PuppetDB、Puppetmaster服务和Nagios 木偶大师似乎正确地连接到了木偶数据库。发布“puppet agent--test”并查看Puppetdb日志显示了实际更新的事实,如本链接所示:(步骤3)。 另外,查看/etc/
class companyname::puppetmaster {
package { 'puppetmaster':
ensure => 'installed',
}
service { 'puppetmaster':
ensure => 'running'
}
class {
'puppetdb':
ssl_listen_address => "0.0.0.0",
notify => Service['puppetmaster'],
}
class {
'puppetdb::master::config':
}
}
class companyname::monitoring_server {
package { 'nagios3':
ensure => installed,
alias => 'nagios',
}
service {
'nagios3':
ensure => running,
enable => true,
alias => 'nagios',
hasstatus => true,
hasrestart => true,
require => Package['nagios'],
}
Nagios_host <<||>> # This line triggers the warning
}
class companyname::puppetmaster{
包{'puppetmaster':
确保=>“已安装”,
}
服务{'puppetmaster':
确保=>“正在运行”
}
阶级{
“木偶数据库”:
ssl_侦听_地址=>“0.0.0.0”,
notify=>Service['puppetmaster'],
}
阶级{
'puppetdb::master::config':
}
}
类companyname::监视\u服务器{
包{'nagios3':
确保=>已安装,
别名=>“nagios”,
}
服务{
“nagios3”:
确保=>正在运行,
enable=>true,
别名=>“nagios”,
hasstatus=>正确,
hasrestart=>true,
require=>Package['nagios'],
}
Nagios_主机#此行触发警告
}
}
我们忽略了什么?
我们尝试了其他一些流浪者的盒子,包括一个Puppetlabs的CentOS盒子。同样的结果。软件版本:puppetmaster 3.5.1、puppet 3.5.1、puppetdb 1.6.3、hiera 1.3.2、facter 2.0.1、nagios3 3.3.1、nagios插件1.4.16、Vagrant 1.5.1
谢谢,
米凯尔
警告:如果未设置storeconfigs,则无法收集导出的资源;第XX行上的集合将被忽略”
“警告:在没有storeconfigs的情况下不收集导出的资源”
Puppet正试图告诉您出了什么问题。您没有启用storeconfigs
在puppet主机上,确保puppet.conf文件具有以下内容:
storeconfigs = true
在[主]部分
通过在puppet master上运行以下命令进行验证:
puppet config print | grep storeconfigs
我最终将storeconfigs=true和storeconfigs\u backend=puppetdb移动到了[main]在/etc/puppet/puppet.conf.中的一节中,它修复了这个问题,但我不知道为什么。我将尝试花更多的时间来找出原因。是的,我已经这样做了。它被配置为使用Puppetdb。仍然是相同的错误。puppet怎么能说你没有呢?再次检查puppet.conf并确保该行在[master]中部分。这与puppetdb无关。puppetdb只是存储它们的地方,而不是真正打开功能。在主运行
puppet config print时| grep storeconfigs
。如果它没有说true,它就没有打开。如果是,那么就会出现问题。“puppet master--configprint all”的结果是“取决于登录的用户。在这种情况下,puppet主进程作为“puppet”运行。列出作为“puppet”登录的主配置显示它在/var/lib/puppet/.puppet中查找配置文件。复制/etc/puppet/puppet.conf并重新启动主机。现在Sure storeconfigs=true,但重新运行“vagrant provision”仍会生成相同的警告。还尝试设置“-confdir”等,但这也不起作用。puppet.conf中的所有选项也是命令行选项。我最终将storeconfigs=true和storeconfigs\u backend=puppetdb移动到/etc/puppet/puppet.conf中的[main]部分。这解决了问题,但我不知道为什么。我会花更多的时间来找出原因。谢谢你的帮助!我遇到了完全相同的问题-我相信在Puppet 3中,[master]部分忽略了“storeconfigs”选项。无法找出原因(或者它在哪里说的),但您的修复似乎有效!