木偶组件如何相互合作?

lim*_*che 3 puppet puppet-enterprise

我正在使用Puppet开源版.

我发现Puppet 3.7.5中有几个组件:

  • 木偶大师
  • 木偶代理
  • MCollective
  • Hiera
  • PuppetDB

但我不知道他们是如何相互合作的.我见过一个简单的架构,其中只包括puppet-master和puppet-agent.

至于其他组件,我不知道他们是如何合作的.任何人都可以给我一个关于他们如何合作或任何数据流图的详细信息吗?

Pet*_*ter 10

完全披露我在PuppetLabs工作!

基本的细分:

  • 木偶代理

每个节点上的Puppet代理将有关节点配置的事实 - 详细说明硬件,操作系统,软件包版本和其他信息 - 发送给Puppet主服务器.基本上这将每n分钟启动一次Puppet运行(默认为30),然后将更改报告给主服务器.

  • 木偶大师

Puppet master使用代理提供的事实来编译有关如何配置每个节点的详细数据 - 称为目录 - 并将其发送回Puppet代理.

  • MCollective

MCollective是Puppet的编排工具,主要用于以编程方式在服务器集群上执行操作.Think Fabric,Capistrano等,但更高层次. 更多细节在这里

  • Hiera

Hiera是Puppet 的分层键/值存储.它允许您通过在Hiera中保存数据并在puppet中保存代码来实现关注点的分离. 更多细节在这里

  • PuppetDB

PuppetDB是一个数据仓库,用于缓存Puppet生成的数据,并允许您利用API利用该数据.

以下是企业版中它们如何组合在一起的图表: 木偶架构图

OSS将没有控制台,但其余大部分也适用于OSS版本.在这里阅读更多.

如有进一步的问题,那里有大量的文档,IRC会议室和学习资料.