BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Chef 11已经为超大规模Web运维做好准备

| 作者 Aslan Brooke 关注 0 他的粉丝 ,译者 臧秀涛 关注 4 他的粉丝 发布于 2013年2月22日. 估计阅读时间: 3 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

本月初Opscode发布了Chef 11,为满足超大规模Web运维的需求增强了可伸缩性。在保持向后兼容的同时,Opscode用Erlang重写了全部核心服务器API。为表现重写采用Erlang这一事实,Opscode将核心服务器API更名为“Erchef”。他们也将服务器源代码从客户端分离出来,并将服务器分解为多个用Erlang编写的组件对象。

Seth Falcon跟进写了一篇博文,提供了关于Chef 11的一些额外背景信息,其中包括:

Erlang的进程模型、多核可伸缩性、以进程为单位的垃圾回收模型所带来的软实时性能以及不共享任何内存等特性使之非常适合于高容量Web服务的编写。

此外,关于用Erlang重写会有多大改进,Timothy Prickett Morgan写道:

相对于用Ruby编写的Chef 10,Chef 11的内存使用减少了一个数量级。

Chef 11能够在一台服务器中管理多达10000个节点,比Chef 10服务器能处理的节点数超出4倍多。

Chef 11的Web用户界面仍然使用Ruby,不过现在不再运行在Merb之上,而是运行在Rails 3.2框架上,可以通过API与“Erchef”进行交互。Omnibus打包现在使将核心服务器API和GUI发布为针对多种平台的原生包管理系统中单独的包成为可能,支持的平台包括:Enterprise Linux [x86_64] (支持版本有5和6), Ubuntu [x86_64] (支持版本有10.04、10.10、11.04、11.10、12.04和12.10)。Opscode还将发布面向现有Chef 10开源服务器用户的迁移工具。

Opscode在Chef 11的客户端工具中也添加了很多改进,其中包括如下几个方面的功能修改:属性、安全、远程文件镜像、片段模板(partial template)、锁文件和LWRP。然而,这些改进和新特性也带来了一些破坏性的变化。要想部署Chef 11的服务器组件并运行Chef 10客户端,工程师应该升级操作手册(cookbook),使之满足Chef 11客户端组件的需求。

Chef 11客户端工具集的其他改进包括:

  • Knife命令行工具现在包含了knife-essentials。
  • Knife ssh会基于远程命令行执行情况返回退出代码。
  • Shef更名为“chef-shell”。
  • 包含了一个用于运行单一操作手册的新工具“chef-apply”。

Chef 11继续以开源产品形式提供,不过现在也有来自Opscode的支持

查看英文原文Chef 11 is Ready for Hyperscale

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT