030*_*030 6 activemq mcollective puppet-agent
目的
目前办公室里有 100 多个系统,预计这个数字还会增加。所有系统都由 Puppet 管理。如果 Puppet 代码在 Puppet Master 上发生变化,需要在多个系统上实现,则通过sudo puppet agent -t在每个系统上执行手动运行 Puppet 。有时需要在 10 多个系统上实施更改。为了安全起见,我们的想法是使用 MCollective,即在所有系统上运行 puppet 一次,而不是在每个系统上运行 puppet。
试图
ActiveMQ的,MCollective服务器和MCollective客户端已经安装在戏梦人生。一旦mco ping运行,就可以找到Puppetmaster。安装完成后MCollective木偶代理和运行mco rpc puppet runonce木偶是在运行戏梦人生。
为了连接远程 mcollective-client,想法是必须安装并运行activemq和mcollective-client,以便通过发出mco ping.
/var/log/mcollective.log
INFO -- : activemq.rb:114:in `on_connecting' TCP Connection attempt 23 to stomp://mcollective@stomp1:6163
Run Code Online (Sandbox Code Playgroud)
/etc/activemq/activemq.xml
<transportConnectors>
<transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
<transportConnector name="stomp" uri="stomp://0.0.0.0:61613"/>
</transportConnectors>
</broker>
Run Code Online (Sandbox Code Playgroud)
/etc/mcollective/server.cfg
connector = activemq
plugin.activemq.pool.size = 1
plugin.activemq.pool.1.host = localhost
plugin.activemq.pool.1.port = 61613
plugin.activemq.pool.1.user = mcollective
plugin.activemq.pool.1.password = helloworld
Run Code Online (Sandbox Code Playgroud)
假设之一是应该在 server.cfg 中配置多个主机。在尝试使其工作时,它变得不清楚架构应该是什么样子。是否需要一个ActiveMQ、一个MCollective 服务器和多个MCollective 客户端(每个节点一个)?
预期结果
预期的结果是mco ping找到Puppetmaster和远程客户端。一旦成功,就可以使用 MCollective 在两个系统上运行 Puppet。当可以使用 MCollective 在这两个系统上执行 Puppet 时,将添加多个节点,一旦mco rpc puppet runonce执行完毕,Puppet 将在这些系统上运行。
当前结果
由于无法通过执行找到远程客户端,mco ping因此无法使用 MCollective 在两个系统上运行 Puppet。
需要一台ActiveMQ 服务器,每个节点都需要安装 MCollective,并且plugin.activemq.pool.1.host代码段需要包含 ActiveMQ 服务器的 IP。

[vagrant@localhost ~]$ mco ping
test time=225.70 ms
test2 time=488.51 ms
---- ping statistics ----
2 replies max: 488.51 min: 225.70 avg: 357.10
Run Code Online (Sandbox Code Playgroud)
/etc/mcollective/server.cfg
connector = activemq
plugin.activemq.pool.size = 1
plugin.activemq.pool.1.host = IP_ACTIVEMQ_SERVER
plugin.activemq.pool.1.port = 61613
plugin.activemq.pool.1.user = mcollective
plugin.activemq.pool.1.password = helloworld
Run Code Online (Sandbox Code Playgroud)
找到 Puppet 节点后,执行会mco rpc puppet runonce在所有系统上运行 Puppet。
| 归档时间: |
|
| 查看次数: |
2638 次 |
| 最近记录: |