木偶或厨师是否支持复制的puppetmasterd / Chef服务器? 对我而言,这些工具似乎很令人惊讶,但这些工具会强制单点失败,但在他们的文档或Google中我一直没有find任何提及。
我知道Puppet和Chef可以在没有服务器的情况下运行(可能用git更新,如http://bitfieldconsulting.com/scaling-puppet-with-distributed-version-control中所述 ),但是这看起来像是第二代可能会失去一些监控能力。
傀儡,你会需要
Chef的devise从一开始就是为了所有的后端组件而运行的,因为这是Opscode平台的一个核心function – 一个高度可扩展的托pipeChef Server。
厨师服务器的各种核心组件:
因此,这些组件中的每一个都能够在不同的服务器上运行,Chef可以被configuration为为每个组件使用单独的服务器。 有关configuration信息,请参阅Chefconfiguration设置页面。 主要是,couchdb_url和solr_url设置可以指向运行这些组件的独立服务器(或多个服务器),或者指向它们前面的负载平衡器。
厨师服务器API也需要访问可以在共享文件系统中的食谱。
如果您担心单点故障,请创build一个木偶集群:)
corosync/pacemaker (或老式心跳)创build群集,使其成为主动/被动,甚至主动/主动 木偶客户端从由DNS标识的木偶服务器获得清单(除非你在客户端指定了一个服务器,但这不是很好),所以你有很多方法来保证你永远不会没有服务器,无论是主动/被动群集,其中如果主动失败,则被动获取IP地址,或者甚至在失败的情况下将DNS条目更改为新的服务器(第一个选项是最优雅的)。
那些日子里,群集的一个很好的资源就是来自clusterlabs的 Scratch集群。 该指南包含DRBDconfiguration示例,因此非常有帮助。