如何解决`没有发送请求,我们没有发现任何节点`而试图使用MCollective运行Puppet?

MCollective

[vagrant@localhost ~]$ mco ping localhost.localdomain time=117.12 ms ---- ping statistics ---- 1 replies max: 117.12 min: 117.12 avg: 117.12 [vagrant@localhost ~]$ mco inventory localhost.localdomain Inventory for localhost.localdomain: Server Statistics: Version: 2.6.1 Start Time: Sat Nov 22 23:59:59 +0000 2014 Config File: /etc/mcollective/server.cfg Collectives: mcollective Main Collective: mcollective Process ID: 3364 Total Messages: 3 Messages Passed Filters: 3 Messages Filtered: 0 Expired Messages: 0 Replies Sent: 2 Total Processor Time: 1.23 seconds System Time: 0.39 seconds Agents: discovery rpcutil Data Plugins: agent fact fstat Configuration Management Classes: No classes applied Facts: mcollective => 1 

木偶和MCollective

puppet.dll被添加到/usr/libexec/mcollective/mcollective/agent ,一旦服务重新启动,MCollective就会识别它。

 [vagrant@localhost ~]$ mco plugin doc Please specify a plugin. Available plugins are: Agents: puppet Run Puppet agent, get its status, and enable/disable it rpcutil General helpful actions that expose stats and internals to SimpleRPC clients Aggregate: 

问题

虽然主机已被识别,但使用MCollective在主机上运行Puppet是不可能的。

 [vagrant@localhost ~]$ mco rpc puppet runonce Discovering hosts using the mc method for 2 second(s) .... 0 No request sent, we did not discover any nodes. [vagrant@localhost ~]$ mco ping localhost.localdomain time=106.18 ms ---- ping statistics ---- 1 replies max: 106.18 min: 106.18 avg: 106.18 

更新

如果Puppet Agent正在运行,问题依然存在。

 [root@localhost vagrant]# mco ping localhost.localdomain time=257.15 ms ---- ping statistics ---- 1 replies max: 257.15 min: 257.15 avg: 257.15 [root@localhost vagrant]# mco rpc puppet runonce Discovering hosts using the mc method for 2 second(s) .... 0 No request sent, we did not discover any nodes. [root@localhost vagrant]# ps -ef | grep puppet root 2578 1 0 11:03 ? 00:00:03 /usr/bin/ruby /usr/bin/puppet agent root 3129 2783 0 11:12 pts/0 00:00:00 grep puppet [root@localhost vagrant]# sudo service puppet stop Stopping puppet agent: [ OK ] [root@localhost vagrant]# ps -ef | grep puppet root 3145 2783 0 11:13 pts/0 00:00:00 grep puppet [root@localhost vagrant]# 

试着通过阅读本指南来解决这个问题。

看来Puppet插件不被客户端识别。

 [root@localhost mcollective]# mco inventory localhost.localdomain Inventory for localhost.localdomain: Server Statistics: Version: 2.6.1 Start Time: Sun Nov 23 12:15:07 +0000 2014 Config File: /etc/mcollective/server.cfg Collectives: mcollective Main Collective: mcollective Process ID: 5110 Total Messages: 5 Messages Passed Filters: 3 Messages Filtered: 2 Expired Messages: 0 Replies Sent: 2 Total Processor Time: 11.05 seconds System Time: 4.09 seconds Agents: discovery rpcutil Data Plugins: agent fact fstat Configuration Management Classes: No classes applied Facts: mcollective => 1 

这个问题是由于Puppet插件安装不正确造成的。

README.md

 The plugin has been superseded by a new Puppet agent: https://github.com/puppetlabs/mcollective-puppet-agent and is available as packages from apt.puppetlabs.com and yum.puppetlabs.com as mcollective-puppet-agent This version will stay up here till a new Puppet Commander has been written and then it will be removed. 

sudo yum -y install mcollective-puppet-agent并重新启动服务解决了这个问题。

 [vagrant@localhost ~]$ mco rpc puppet runonce Discovering hosts using the mc method for 2 second(s) .... 1 * [ ===========================================================> ] 1 / 1 Finished processing 1 / 1 hosts in 747.09 ms