厨师 是当今使用最广泛的CM工具之一,可以说在强大的Puppet中扮演第二小提琴。该工具是用Ruby和Erlang编写的,在Knife CLI中使用纯Ruby DSL,并且包括易于管理的漂亮GUI。开发人员和DevOps类型将更喜欢使用Chef,而不是sysadmins。
厨师 有两个版本:免费的开放源代码工具和企业产品,然后将其细分为托管版本和本地(私有)版本。它的同名母公司(以前称为Opscode)还通过提供两种Enterprise风格的免费试用版来吸引潜在客户,但最多只能提供5种设备,并且没有公司支持。
厨师祭
- 托管厨师是由云托管的,并包括配置支持和配置帮助。
- 本地(私有)Chef是企业版本,但在客户的私有基础架构中实现。提供了最少的服务器配置帮助和支持。
- 开源厨师是免费的,但是不提供支持,并且没有企业版中提供的许多有用的附加组件。
还有其他一些变体,例如Chef Solo:Chef的分散,无服务器模式,类似于没有域控制器的对等Windows网络。还有Opsworks,它是由Amazon开发的,专门用于AWS的经过调整的Chef版本。
厨师长
代管 厨师 是企业产品的一种。在这种模式下,一个人的食谱,角色和节点定义存储在由Chef,Inc.提供的可伸缩的,基于云的Chef服务器中。无需担心硬件管理和维护或软件升级–只需上传食谱,其余的由Chef进行。
不过,这需要付出一定的代价-很高的价格!主厨的价格如下:
- 发布套餐:每月120美元,20个节点,10个用户
- 标准套餐:$ 300 /月,50个节点,20个用户
- 高级套餐:700美元/月。 100个节点,50个用户
对于大多数中小型组织而言,所有这些层都非常昂贵。不过,有一个小小的延缓措施-如前所述,您可以获得完整的企业托管 厨师 免费试用,最多可支持5个节点,2个用户,不包括支持。
要记住的另一点是,作为公共暴露的云服务,Hosted 厨师 和所有面向外部的云服务一样,很容易受到讨厌的体验的困扰,而这些讨厌的体验无法控制,例如服务中断和DDOS攻击。
本地(私人)厨师
客户使用On Premises 厨师 来配置要在本地运行的Chef服务器。当然,与Hosted 厨师 相比,它的主要优点是可以保持对服务器的完全控制。由于服务器可能在物理上更接近客户网络的其余部分,因此也可以更快地推出和更好地集成。此外,由于本地厨师服务器位于客户自己的防火墙后面,因此可以避免计算机受到任何可能影响托管厨师客户的全球性公共问题的影响。
随着2013年Chef 11的发布,On Premises 厨师 已从永久许可证模式转变为每月的每个节点模型,每个节点每月花费6美元,与Hosted 厨师 相同。标准支持服务是每个节点/每月额外的3美元,高级版本是每个节点/每月3.75美元。
设置前提厨师并非易事。例如,在Ubuntu Linux上设置Chef之前,需要设置/配置CouchDB,RabbitMQ消息传递,Java,Solr,Ruby,OS级依赖关系和Web服务器配置。请注意-这甚至是在正式安装On Premise 厨师 之前,它本身就是另一个要安装/配置的艰巨任务。对于新手来说,厨师学习曲线特别困难。面向经验丰富的用户的必需的Ruby熟练程度和繁杂的文档使其更具挑战性。人们很快开始意识到,如果没有专家协助,“私人厨师”并不是面向新手的产品。在这种情况下,可以从Chef,Inc.获得帮助,尽管数量有限:其客户支持团队希望具有中等的Chef熟练程度。在内部,Chef通常由拥有内部SysSyss管理员或DevOps专家的组织(例如其最大的客户Facebook)使用。
开源厨师
对于那些对管理Chef充满信心的人来说,开源途径可能是一个可行的选择。各种论坛(例如Github,Stackoverflow以及大量其他Chef社区站点)上都有一个活跃的大型用户社区。随后,可以在Web上轻松获得问题,建议或故障排除帮助的答案。对于那些对产品经验较少的人,也可以使用一种流行的开源厨师模式,称为Chef Solo。此无服务器的缩小版本适合小型安装,因为它仅需基本配置即可启动和运行。除此之外,从头开始配置,安装,配置和部署Open Source 厨师 服务器仍需要合理的专业知识。
在直接进入开源厨师之前,值得考虑几个问题。例如,一些 知识渊博的内部人士提出了严重的疑问 关于Chef,Inc.对Chef源代码的开放性质的持续承诺。当然,这给开源厨师的未来生计带来了一定程度的不确定性。此外,通过选择该DIY版本的Chef,可以放弃付费版本的所有出色功能,例如GUI,有用的分析仪表板,批量分组工具,可自定义的视图和推送功能等。特别是后者的功能已经有一段时间没有出现在Chef产品中了,只有在Chef Enterprise 11中才首次亮相。在此之前,更新是基于拉动的,要求代理“拨回”到Chef服务器以检查新的更新。因此,Chef服务器上定义的更改无法立即传播到环境中的所有节点驻留代理。
概要
作为用于管理系统配置和自动化IT环境的最广泛使用的解决方案之一,Chef当前提供了三种部署选项,每个选项都有其自己的警告:托管厨师,内部(私有)厨师和开放源代码厨师。作为自动化平台,Chef由于其庞大的安装基础而值得考虑。另一个市场领先的解决方案Puppet(也是Chef的主要敌人)也值得探索。
如果决定使用Chef,则下一个问题是哪个版本:企业版(托管或内部部署)或开源。下表为做出正确的决策提供了进一步的指导: