容器将改变一切

来源 :计算机世界 | 被引量 : 0次 | 上传用户:kevinchen12344
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  一旦将容器纳入工作流的构建过程中,那么我们多云的未来就将会尘埃落定。
  现代应用的发展在很大程度上要归功于DevOps运动的蓬勃兴起,以及该运动所产生的各种自动化工具。和以往只单纯编写代码不同,开发人员如今需要考虑采用哪些工具,以及如何将这些工具组合起来,以便将最初的设想转变成活生生的应用。
  而容器便是这种新工作流程中最重要的新工具之一。像Docker这样的新技术可以让我们捕捉到关键的服务,并将它们从底层基础设施中抽象出来。利用这种方法,我们可以重新思考如何部署应用,如何更好地发挥云基础设施的作用。
  满汉全席
  亚马逊近日在伦敦举办了一场用户大会,一位AWS用户描述了他的团队处理应用更新的过程。他们不再只是简单地推送一段修改后的代码,而是将“完整的基础设施”的构建过程输出给自己的客户。
  一旦基础设施部署并测试完毕后便可在DNS上做切换,使其成为一个活的系统。而在其他方面,这种方法还可在运营新系统的头几天中将旧的虚拟基础设施作成备份,然后再根据需要删除之。
  这样一种输送完整的基础设施的想法最初看起来似乎很荒唐,但是当你要考虑云部署的经济性时,这种方法显然要比推送更新更节约成本。它意味着你正在部署的是一个已经就绪的状态,不仅更新的服务器和服务可能已经运行了一段时间,而且连操作系统或软件都已自动更新了。
  这种办法无须投资硬件,对开发、测试和生产都使用同样的云平台,需要做的只是为每种环境分配不同的虚拟网络,再加上适当的访问控制即可。你甚至可以在开发中使用生产数据,在需要清理数据时简单地克隆存储即可。
  包罗万象的容器
  将应用集装在Docker中会更便于从基础设施中抽象出关键的应用元素。用这种方式处理软件,也能让DevOps充分发挥作用,更易于随着不断变化的需求对服务加以扩展。在容器中包装一个Node.js/Seneca微服务启用,便可在同一台主机或新的虚机上快速部署新的实例。
  这种方法产生了一种有趣的DevOps模式,即等幂容器(idempotent container)。这种方法不是把一个应用或服务当成构建的终点,而是构建一个包含了应用、服务,以及所有相关联要素的容器。任何时候只要一做出改变,就可构建一个新的容器。测试和部署容器时将其视为一个整体,而不是其中的任何单独元素。这种方法非常有意义,因为它能免除掉一般开发流程的某些弊病。在传统的开发模式中,我们很容易走捷径,只测试变化部分,而不去考虑整体。
  一个容器一旦构建并部署完毕,就不会发生变化,除非又有新的容器在部署。由于一个容器就是一个沙盒,因此要想与其中的内容进行交互,就得通过API或者容器自带的UI,这使得容器成了微服务的一个理想的抽象。该服务的API是唯一的接触点,最好是将API定义为各DevOps团队之间的一份合同。如此一来,在小型服务器实例,如CoreOS或微软新的Nano Server上运行的容器就会成为一种标准的基础设施构建模块。
  跟着工作流走
  综上所述,当我们看到Jenkins构建带有对Docker支持的管道工具时就不会吃惊了。Jenkins已经成了很多构建流程的标准构建工具,其定制化模块架构使其易于对特定的工作流进行调谐,易于和源代码控制工具及开发和测试平台进行集成。
  作为Cloudbees的CTO和Jenkins项目的创始人,Kohsuke Kawaguchi在一次会议上说,给Jenkins增加对Docker的支持非常合理:“这样会促进业界对Jenkins的需求,将Docker视为一种可执行的打包格式。你可以编译并打包成一个二进制对象,然后运行,不再需要的时候直接处理掉就行。”
  从Kawaguchi的说法中我们显然可以看出,Docker和其他的容器格式很符合Jenkins的Cloudbees版本,“你可将其用于测试或用于生产,测试通不过的话就重构一个容器。可将代码编译成一个模块,就像Ruby一样,然后放进容器中,发送给Puppet用于部署。”
  此种做法作为整体DevOps战略的组成部分是有道理的,其中的一切,从基础设施往下都是代码。正如Kawaguchi所言,一切都是代码,“而Git和Jenkins就是砸代码钉子的锤子。”
  虽然Docker的文件格式对于容器圈来说几乎已成了通用格式,但我们最好还是要观察一下Linux基金会所赞助的一个通用、开放的容器格式的进展。这一倡议把很多容器开发人员和厂商(包括微软等)聚拢到了一起。一旦一种通用格式获得业界的广泛支持,我们便能向多个云厂商(公有云和私有云)提供容器了。
  通用容器格式不可能解决管理不同云基础设施定义而遇到的所有问题,但它肯定会让各厂商之间,如Azure和AWS之间,或者OpenStack和谷歌云之间的转移服务变得更加容易。同样地,利用Puppet或Chef所描述的基础设施,或者Git库所管理的基础设施,我们就可能开发出一个转换层,为应用生成通用的虚机和网络描述,为各个云厂商提供适当的编排功能。
  认为一切都不过是代码,这种想法并不新鲜,但将其纳入DevOps,则有可能使其成为现实。利用如Docker和Jenkins之类的工具一起协同工作,我们就能看到实现这一现实的曙光。
其他文献
大数据是眼下很多企业面临的一个挑战,由于数据量非常巨大,而且数据类型异常复杂,传统的基于关系型数据库的存储和分析办法显露出不足。Hadoop的出现给人们带来解决大数据问题的希望,特别是一批著名的大企业,如谷歌、雅虎、JP摩根大通等,成功地利用Hadoop开发出了开源的大数据管理系统,让人们看到了Hadoop在解决大数据难题时的巨大潜力,很多企业纷纷决定引入Hadoop,来解决自己的大数据难题。  
在新媒体、快餐媒体春风得意,传统平面媒体江河日下的网络宅时代,一份报纸的改版似乎不值得大说特说、吸引眼球。但熟视媒体间踹黑脚买流量,读者、笔者、看客抱团消遣,拿肉麻当有趣,口水战、垃圾新闻漫天飞之后;或者,一份脚踏实地、严肃认真的报道产业企业变革与成长、记录技术进步带给社会生活的转变和升级的严肃出版物,理所应当得到坊间、业界充分的关注与尊重。  此次,拥有32年历史的《计算机世界》报的改版,表明了
“我们这一代人肩负着推进信息化的责任,历史机遇不允许我们错过。”在国家信息化专家咨询委员会(以下简称“专家委”)成立十周年之际,第四届专家委委员、广东省经济和信息化委员会副主任邹生写下了这样一句话。  在专家委委员中,邹生是为数不多的在地方从事信息化建设规划和管理工作的委员,长年“接地气”使他对信息化的感受更为深刻:“信息化是当今浩浩荡荡的世界潮流,席卷着人类每一个角落。任何地方、组织,甚至个人,
时代正在变革,秩序已经破坏,慢的将会变快,第一将会落后,当下终将成为过去。  新一代数据中心的建设,使沉寂已久的交换机市场变得热闹非凡:各大厂商扎堆发布新品;不同技术理念针锋相对;口水仗升级,硝烟弥漫——交换机换代的世纪大战已然打响。曾经缺乏新技术新理念、产品同质化竞争、低层次价格战的交换机市场,如何重获新生?  “你最好赶紧游起泳来/如果你还想活在这个世界上/否则你就会像块石头一样沉下水去/因为
如果你时常参与电视节目上的各种互动,那证明你是走在潮流前沿的人。因为发短信、扫描二维码、刷微博、发微信……沟通方式花样繁多,越来越方便有趣。近日,一款新的智能手机应用——“鸡米”面世,让互动方式更丰富了。  鸡米是一款专注于手机和电视节目交互的App产品,用户在观看电视节目的时候打开鸡米应用,就可以了解到更多和节目相关的信息。比如建筑物的详细介绍、人物的背景介绍或节目中主持人、嘉宾的信息,以及背景
摘要:课标指出“要重视对学生多角度,有创意阅读的评价”。笔者根据多年的教学经验,利用语文课堂有效性的评价,不断改进教与学,有效激发学生学习语文的兴趣,全面提高学生的语文素养,实现了课堂评价的有效性!  关键词:多元评价;赏识评价;导向评价   一、 多元评价激学趣  古人云:“亲其师信其道。”教书育人就要以情动人,因此在课堂评价过程中,我们要心诚意切,让学生感受老师的真诚与爱。让教师的评价在学生眼
技术的发展和变革在给商业带来活力的同时,也使得企业面临的业务风险越来越大。商业环境变幻莫测,企业进行信息风险管理的方式能否跟得上业务变化的速度?随着科技不断创新,企业如何有效保护信息安全?就这些热点问题,近日,本报总编辑孙定与EMC公司执行副总裁、EMC信息安全事业部RSA全球总裁亚瑟科维洛(Arthur W. Coviello)进行了深入探讨。    信息安全支出  不能亡羊补牢    高昂的信
尽管之前对富士通公司有所了解,但走进上海国际会议中心的富士通中国论坛展厅,眼前的情景还是令记者吃惊,展厅的五大主题展区“前沿技术”、“动态基础架构
当2013年12月14日晚8时许,嫦娥三号探测器在月球表面预选着陆区域成功着陆后,全国人民都为中国成为世界上第三个实现地外天体软着陆的国家而激动、兴奋。在这次“嫦娥三号”登月过程中,部署在绕月探测工程飞行控制中心的曙光公司相关产品提供了诸多服务,曙光还提供了全方位的人员及备品备件保障服务,确保万无一失,为登月成功带来了可信赖的支持。  也许很多人并不知道,登月工程必须依靠信息技术在设计、研制、模拟
本报讯(记者 宋辰)借助大数据理念和科技,人们从新的视角审视社会经济生活各方各面的海量数据,并用新的思路和方法对其进行整合、评价及利用。以数据为切入点,大数据给予人类社会新的发展契机与空间。为进一步推动大数据与金融的深度融合,近日,清华大学与金电联行(北京)信息技术有限公司联合成立“清华大学-金电联行金融大数据联合研究中心”(以下简称“研究中心”)。  据了解,研究中心将开展学科交叉研究,大数据应