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 次 |
最近记录: |