全球对当地傀儡pipe理

有没有人用Puppetpipe理过几个分布在不同地理位置的系统?

我有几个几乎完全相似的部署(除了服务器的IP),我期待转换为Puppet的pipe理。

我有2个选项:

有没有人尝试过第二个选项,它是如何工作的? 我对这种环境下的高可用性性能特别感兴趣。

谢谢。

你提出的任何一种方法都没有错。 我们有三个傀儡老师,都位于一个站点,并在世界各地服务节点 – 我们根据连接的puppet节点是否在dev / test / prod中分开它们。 其他人更喜欢在每个地理区域运行木偶大师。 其他人有很多傀儡,有的只pipe一个节点!

关键在于,在版本控制系统中存储和pipe理puppetmaster manifest tree是非常重要的 – 像对待公司所维护的任何其他代码一样对待它。 我会推荐Git,但是如果你更习惯于这个,Subversion也可以做到这一点。 傀儡大师只是一个服务,它提供了你的VCS的特殊视图,而不是一个中央数据库本身。

通过VCS中的内容,您可以将所需的清单/模块部署到各自的puppetmasters,并轻松实现同步。 大会似乎是为民间有一个git / svn回购/模块每puppet模块,虽然没有什么阻止你把整个树下一个回购/模块。

我对你的问题是:

  • 每个部署有多less个节点? 如果你说的是50+,那肯定会有当地的木偶大师。
  • 除了贵公司之外,部署是否还有第三方? 傀儡大师需要有非常高的安全性 – 认为这是所有系统的关键,并将包含非常敏感的信息。
  • 同样,对于基于部署的PM,你会将它们托pipe在自己的服务器/虚拟机上,还是需要为现有机器提供这个任务? 为了安全起见,我强烈build议puppetmaster服务器只有这个angular色。
  • 您如何期望EC2为您提供更高的可用性? 根据我的理解,EC2实例不是HA,尽pipe应该可以在AWS负载平衡器服务后面运行2+ puppet。
  • 部署是否有很大的不同? 你想在一天的不同时间改变他们吗? 多位傀儡老师给你一个更好的控制水平。

您也可以使用一个使用分布式VCS(如Git)的Puppetmaster-less系统,使用此处描述的scheme:

http://bitfieldconsulting.com/scaling-puppet-with-distributed-version-control

我们也有一些木偶大师,我们同步的不同环境。 要做到这一点,我们pipe理我们所有的傀儡模块和在颠覆中的清单,然后使用普通的木偶清单和一个名为vcsdeploy的模块将puppet模块部署到puppet masters上,

http://www.practicalclouds.com/content/guide/pclouds-vcsdeploy-deploy-stuff

当我们想同步我们标记一个版本,然后更新puppet master的nodes.pp。

问候

戴夫