木偶或厨师提供什么优势/特点超过盐(反之亦然)?

我正在考虑推出新的configurationpipe理工具来取代我们自己开发的解决scheme。 事实上的标准是Chef和Puppet,它们都是以Ruby为中心的(尽pipe可以用来部署非Ruby环境)。 我们绝大部分的开发工作都是在Python中完成的,我们的内部部署工具大量使用Fabric 。 所以我正在向Salt学习,因为它也是Python,尽pipe它不像Chef或Puppet那么成熟。 但是由于我对选项不够熟悉,我发现很难比较苹果与苹果。

除了较小的社区,我是否会放弃使用Salt而不是木偶/厨师

更新

我发布这个问题已经有六个月了。 尽pipe它已经被closures了,但已经被看了1000多次了,所以我想我会评论一下我的经验。

我最终决定了Puppet,因为它有一个更大的社区。 然而,这是一个非常令人沮丧的经验,主要是由于令人费解的Puppetconfiguration语法。 由于我现在有一个比较两个参考的框架,我最近再次看看盐 – 我不回去。 这是非常非常酷的。 我最喜欢的东西:

  • 推拉式configuration模型的无缝集成。 木偶使用拉模式(节点定期轮询服务器更新),并有一个名为木偶的姐妹组件推动变化。 两者对我都很重要,我更喜欢Salt的工作原理。 当你有很多的节点时,Salt也会执行得更快。

  • configuration语法使用YAML,这是一个简单的文本格式,使用缩进和项目符号点。 您也可以select通过模板使用其他configuration格式。 根据我的经验,这使得盐约10倍容易学习和维护。

  • 基于Python的。 这是我首先看到Salt的最大原因。 它最终成为我留下的一个更小的原因。 但是,如果您是像我们这样的Python商店,那么开发Salt插件会更容易。